diff --git a/Android.mk b/Android.mk
index fd38fd3..cf543aa 100644
--- a/Android.mk
+++ b/Android.mk
@@ -4,6 +4,13 @@
 # * removed com.google.android.geo.API_KEY key. This should be added to
 #      the manifest files in java/com/android/incallui/calllocation/impl/
 #      and /java/com/android/incallui/maps/impl/
+# * b/62417801 modify translation string naming convention:
+#      $ find . -type d | grep 262 | rename 's/(values)\-([a-zA-Z\+\-]+)\-(mcc262-mnc01)/$1-$3-$2/'
+# * b/62343966 include manually generated GRPC service class:
+#      $ protoc --plugin=protoc-gen-grpc-java=prebuilts/tools/common/m2/repository/io/grpc/protoc-gen-grpc-java/1.0.3/protoc-gen-grpc-java-1.0.3-linux-x86_64.exe \
+#               --grpc-java_out=lite:"packages/apps/Dialer/java/com/android/voicemail/impl/" \
+#               --proto_path="packages/apps/Dialer/java/com/android/voicemail/impl/transcribe/grpc/" "packages/apps/Dialer/java/com/android/voicemail/impl/transcribe/grpc/voicemail_transcription.proto"
+# * b/37077388 temporarily disable proguard with javac
 LOCAL_PATH:= $(call my-dir)
 include $(CLEAR_VARS)
 
@@ -20,6 +27,7 @@
 SRC_DIRS := \
 	$(BASE_DIR)/contacts/common \
 	$(BASE_DIR)/dialer \
+	$(BASE_DIR)/dialershared \
 	$(BASE_DIR)/incallui \
 	$(BASE_DIR)/voicemail
 
@@ -39,12 +47,22 @@
 	$(BASE_DIR)/incallui/calllocation/impl/TrafficStatsTags.java \
 	$(BASE_DIR)/incallui/maps/impl/MapsImpl.java \
 	$(BASE_DIR)/incallui/maps/impl/MapsModule.java \
-	$(BASE_DIR)/incallui/maps/impl/StaticMapFragment.java
+	$(BASE_DIR)/incallui/maps/impl/StaticMapFragment.java \
 
 # Exclude testing only class, not used anywhere here
 EXCLUDE_FILES += \
 	$(BASE_DIR)/contacts/common/format/testing/SpannedTestUtils.java
 
+# Exclude build variants for now
+EXCLUDE_FILES += \
+	$(BASE_DIR)/dialer/buildtype/bugfood/BuildTypeAccessorImpl.java \
+	$(BASE_DIR)/dialer/buildtype/dogfood/BuildTypeAccessorImpl.java \
+	$(BASE_DIR)/dialer/buildtype/fishfood/BuildTypeAccessorImpl.java \
+	$(BASE_DIR)/dialer/buildtype/test/BuildTypeAccessorImpl.java \
+	$(BASE_DIR)/dialer/constants/googledialer/ConstantsImpl.java \
+	$(BASE_DIR)/dialer/binary/google/GoogleStubDialerRootComponent.java \
+	$(BASE_DIR)/dialer/binary/google/GoogleStubDialerApplication.java
+
 # All Dialers resources.
 # find . -type d -name "res" | uniq | sort
 RES_DIRS := \
@@ -62,13 +80,20 @@
 	$(BASE_DIR)/dialer/calllog/ui/res \
 	$(BASE_DIR)/dialer/calllogutils/res \
 	$(BASE_DIR)/dialer/common/res \
+	$(BASE_DIR)/dialer/contactactions/res \
 	$(BASE_DIR)/dialer/contactsfragment/res \
 	$(BASE_DIR)/dialer/dialpadview/res \
+	$(BASE_DIR)/dialer/enrichedcall/simulator/res \
 	$(BASE_DIR)/dialer/interactions/res \
+	$(BASE_DIR)/dialer/main/impl/res \
 	$(BASE_DIR)/dialer/notification/res \
 	$(BASE_DIR)/dialer/oem/res \
 	$(BASE_DIR)/dialer/phonenumberutil/res \
 	$(BASE_DIR)/dialer/postcall/res \
+	$(BASE_DIR)/dialer/searchfragment/common/res \
+	$(BASE_DIR)/dialer/searchfragment/list/res \
+	$(BASE_DIR)/dialer/searchfragment/nearbyplaces/res \
+	$(BASE_DIR)/dialershared/bubble/res \
 	$(BASE_DIR)/dialer/shortcuts/res \
 	$(BASE_DIR)/dialer/speeddial/res \
 	$(BASE_DIR)/dialer/theme/res \
@@ -84,14 +109,15 @@
 	$(BASE_DIR)/incallui/calllocation/impl/res \
 	$(BASE_DIR)/incallui/commontheme/res \
 	$(BASE_DIR)/incallui/contactgrid/res \
+	$(BASE_DIR)/incallui/disconnectdialog/res \
 	$(BASE_DIR)/incallui/hold/res \
 	$(BASE_DIR)/incallui/incall/impl/res \
 	$(BASE_DIR)/incallui/res \
 	$(BASE_DIR)/incallui/sessiondata/res \
+	$(BASE_DIR)/incallui/speakerbuttonlogic/res \
 	$(BASE_DIR)/incallui/telecomeventui/res \
 	$(BASE_DIR)/incallui/video/impl/res \
 	$(BASE_DIR)/incallui/video/protocol/res \
-	$(BASE_DIR)/incallui/wifi/res \
 	$(BASE_DIR)/voicemail/impl/res \
 
 
@@ -113,13 +139,20 @@
 	$(BASE_DIR)/dialer/calllog/ui/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/calllogutils/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/common/AndroidManifest.xml \
+	$(BASE_DIR)/dialer/contactactions/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/contactsfragment/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/dialpadview/AndroidManifest.xml \
+	$(BASE_DIR)/dialer/enrichedcall/simulator/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/interactions/AndroidManifest.xml \
+	$(BASE_DIR)/dialer/main/impl/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/notification/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/oem/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/phonenumberutil/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/postcall/AndroidManifest.xml \
+	$(BASE_DIR)/dialer/searchfragment/common/AndroidManifest.xml \
+	$(BASE_DIR)/dialer/searchfragment/list/AndroidManifest.xml \
+	$(BASE_DIR)/dialer/searchfragment/nearbyplaces/AndroidManifest.xml \
+	$(BASE_DIR)/dialershared/bubble/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/shortcuts/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/simulator/impl/AndroidManifest.xml \
 	$(BASE_DIR)/dialer/speeddial/AndroidManifest.xml \
@@ -136,15 +169,16 @@
 	$(BASE_DIR)/incallui/autoresizetext/AndroidManifest.xml \
 	$(BASE_DIR)/incallui/commontheme/AndroidManifest.xml \
 	$(BASE_DIR)/incallui/contactgrid/AndroidManifest.xml \
+	$(BASE_DIR)/incallui/disconnectdialog/AndroidManifest.xml \
 	$(BASE_DIR)/incallui/hold/AndroidManifest.xml \
 	$(BASE_DIR)/incallui/incall/impl/AndroidManifest.xml \
 	$(BASE_DIR)/incallui/sessiondata/AndroidManifest.xml \
+	$(BASE_DIR)/incallui/speakerbuttonlogic/AndroidManifest.xml \
 	$(BASE_DIR)/incallui/telecomeventui/AndroidManifest.xml \
 	$(BASE_DIR)/incallui/video/impl/AndroidManifest.xml \
 	$(BASE_DIR)/incallui/video/protocol/AndroidManifest.xml \
-	$(BASE_DIR)/incallui/wifi/AndroidManifest.xml \
+	$(BASE_DIR)/voicemail/AndroidManifest.xml \
 	$(BASE_DIR)/voicemail/impl/AndroidManifest.xml \
-	$(BASE_DIR)/voicemail/permissions.xml \
 
 
 # Merge all manifest files.
@@ -180,13 +214,20 @@
 	--extra-packages com.android.dialer.calllog.ui \
 	--extra-packages com.android.dialer.calllogutils \
 	--extra-packages com.android.dialer.common \
+        --extra-packages com.android.dialer.contactactions \
 	--extra-packages com.android.dialer.contactsfragment \
 	--extra-packages com.android.dialer.dialpadview \
+	--extra-packages com.android.dialer.enrichedcall.simulator \
 	--extra-packages com.android.dialer.interactions \
+	--extra-packages com.android.dialer.main.impl \
 	--extra-packages com.android.dialer.notification \
 	--extra-packages com.android.dialer.oem \
 	--extra-packages com.android.dialer.phonenumberutil \
 	--extra-packages com.android.dialer.postcall \
+	--extra-packages com.android.dialer.searchfragment.common \
+	--extra-packages com.android.dialer.searchfragment.list \
+	--extra-packages com.android.dialer.searchfragment.nearbyplaces \
+	--extra-packages com.android.dialershared.bubble \
 	--extra-packages com.android.dialer.shortcuts \
 	--extra-packages com.android.dialer.speeddial \
 	--extra-packages com.android.dialer.theme \
@@ -205,30 +246,39 @@
 	--extra-packages com.android.incallui.calllocation.impl \
 	--extra-packages com.android.incallui.commontheme \
 	--extra-packages com.android.incallui.contactgrid \
+	--extra-packages com.android.incallui.disconnectdialog \
 	--extra-packages com.android.incallui.hold \
 	--extra-packages com.android.incallui.incall.impl \
 	--extra-packages com.android.incallui.maps.impl \
 	--extra-packages com.android.incallui.sessiondata \
+	--extra-packages com.android.incallui.speakerbuttonlogic \
 	--extra-packages com.android.incallui.telecomeventui \
 	--extra-packages com.android.incallui.video \
 	--extra-packages com.android.incallui.video.impl \
-	--extra-packages com.android.incallui.wifi \
 	--extra-packages com.android.phone.common \
 	--extra-packages com.android.voicemail \
 	--extra-packages com.android.voicemail.impl \
 	--extra-packages com.android.voicemail.impl.fetch \
 	--extra-packages com.android.voicemail.impl.settings \
 	--extra-packages com.android.voicemail.settings \
-	--extra-packages me.leolin.shortcutbadger
+	--extra-packages me.leolin.shortcutbadger \
+
 
 LOCAL_STATIC_JAVA_LIBRARIES := \
 	android-common \
+	android-support-dynamic-animation \
 	com.android.vcard \
 	dialer-commons-io-target \
 	dialer-dagger2-target \
 	dialer-disklrucache-target \
 	dialer-gifdecoder-target \
 	dialer-glide-target \
+        dialer-grpc-all-target \
+        dialer-grpc-context-target \
+        dialer-grpc-core-target \
+	dialer-grpc-okhttp-target \
+	dialer-grpc-protobuf-lite-target \
+        dialer-grpc-stub-target \
 	dialer-guava-target \
 	dialer-javax-annotation-api-target \
 	dialer-javax-inject-target \
@@ -237,6 +287,7 @@
 	dialer-mime4j-dom-target \
 	jsr305 \
 	libphonenumber \
+	okhttp \
 	volley \
 
 LOCAL_STATIC_ANDROID_LIBRARIES := \
@@ -249,18 +300,18 @@
 	android-support-v7-recyclerview \
 
 LOCAL_JAVA_LIBRARIES := \
-	org.apache.http.legacy \
 	dialer-auto-value \
+	org.apache.http.legacy \
 
 # Libraries needed by the compiler (JACK) to generate code.
 PROCESSOR_LIBRARIES_TARGET := \
-	dialer-dagger2-compiler \
+	dialer-auto-value \
 	dialer-dagger2 \
+	dialer-dagger2-compiler \
 	dialer-dagger2-producers \
 	dialer-guava \
 	dialer-javax-annotation-api \
 	dialer-javax-inject \
-	dialer-auto-value \
 
 # Resolve the jar paths.
 PROCESSOR_JARS := $(call java-lib-deps, $(PROCESSOR_LIBRARIES_TARGET))
@@ -270,6 +321,13 @@
 LOCAL_JACK_FLAGS += --processorpath $(call normalize-path-list,$(PROCESSOR_JARS))
 LOCAL_JAVACFLAGS += -processorpath $(call normalize-path-list,$(PROCESSOR_JARS))
 
+
+# Begin Bug: 37077388
+LOCAL_DX_FLAGS := --multi-dex
+LOCAL_JACK_FLAGS := --multi-dex native
+
+LOCAL_PROGUARD_ENABLED := disabled
+ifdef LOCAL_JACK_ENABLED
 # Proguard includes
 LOCAL_PROGUARD_FLAG_FILES := \
     java/com/android/dialer/common/proguard.flags \
@@ -279,11 +337,11 @@
     java/com/android/incallui/answer/impl/proguard.flags
 LOCAL_PROGUARD_ENABLED := custom
 
-ifdef LOCAL_JACK_ENABLED
-# Bug: 37077388
 LOCAL_PROGUARD_ENABLED += optimization
 endif
 
+# End Bug: 37077388
+
 LOCAL_SDK_VERSION := system_current
 LOCAL_MODULE_TAGS := optional
 LOCAL_PACKAGE_NAME := Dialer
@@ -309,10 +367,15 @@
 include $(CLEAR_VARS)
 
 LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \
-    dialer-dagger2-compiler:../../../prebuilts/tools/common/m2/repository/com/google/dagger/dagger-compiler/2.7/dagger-compiler-2.7$(COMMON_JAVA_PACKAGE_SUFFIX) \
     dialer-auto-value:../../../prebuilts/tools/common/m2/repository/com/google/auto/value/auto-value/1.3/auto-value-1.3$(COMMON_JAVA_PACKAGE_SUFFIX) \
+    dialer-dagger2-compiler:../../../prebuilts/tools/common/m2/repository/com/google/dagger/dagger-compiler/2.7/dagger-compiler-2.7$(COMMON_JAVA_PACKAGE_SUFFIX) \
     dialer-dagger2:../../../prebuilts/tools/common/m2/repository/com/google/dagger/dagger/2.7/dagger-2.7$(COMMON_JAVA_PACKAGE_SUFFIX) \
     dialer-dagger2-producers:../../../prebuilts/tools/common/m2/repository/com/google/dagger/dagger-producers/2.7/dagger-producers-2.7$(COMMON_JAVA_PACKAGE_SUFFIX) \
+    dialer-grpc-all:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-all/1.0.3/grpc-all-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX) \
+    dialer-grpc-core:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-core/1.0.3/grpc-core-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX) \
+    dialer-grpc-okhttp:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-okhttp/1.0.3/grpc-okhttp-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX) \
+    dialer-grpc-protobuf-lite:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-protobuf-lite/1.0.3/grpc-protobuf-lite-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX) \
+    dialer-grpc-stub:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-stub/1.0.3/grpc-stub-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX) \
     dialer-guava:../../../prebuilts/tools/common/m2/repository/com/google/guava/guava/20.0/guava-20.0$(COMMON_JAVA_PACKAGE_SUFFIX) \
     dialer-javax-annotation-api:../../../prebuilts/tools/common/m2/repository/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2$(COMMON_JAVA_PACKAGE_SUFFIX) \
     dialer-javax-inject:../../../prebuilts/tools/common/m2/repository/javax/inject/javax.inject/1/javax.inject-1$(COMMON_JAVA_PACKAGE_SUFFIX)
@@ -346,7 +409,7 @@
 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
 LOCAL_MODULE := dialer-disklrucache-target
 LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/disklrucache/1.0.0-SNAPSHOT/disklrucache-1.0.0-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/disklrucache/SNAPSHOT/disklrucache-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
 LOCAL_UNINSTALLABLE_MODULE := true
 
 include $(BUILD_PREBUILT)
@@ -356,7 +419,7 @@
 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
 LOCAL_MODULE := dialer-gifdecoder-target
 LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/gifdecoder/1.0.0-SNAPSHOT/gifdecoder-1.0.0-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/gifdecoder/SNAPSHOT/gifdecoder-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
 LOCAL_UNINSTALLABLE_MODULE := true
 
 include $(BUILD_PREBUILT)
@@ -366,7 +429,7 @@
 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
 LOCAL_MODULE := dialer-glide-target
 LOCAL_SDK_VERSION := current
-LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/glide/4.0.0-SNAPSHOT/glide-4.0.0-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/glide/SNAPSHOT/glide-SNAPSHOT$(COMMON_JAVA_PACKAGE_SUFFIX)
 LOCAL_UNINSTALLABLE_MODULE := true
 
 include $(BUILD_PREBUILT)
@@ -432,3 +495,63 @@
 include $(BUILD_PREBUILT)
 
 include $(CLEAR_VARS)
+
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+LOCAL_MODULE := dialer-grpc-core-target
+LOCAL_SDK_VERSION := current
+LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-core/1.0.3/grpc-core-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_UNINSTALLABLE_MODULE := true
+
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+LOCAL_MODULE := dialer-grpc-okhttp-target
+LOCAL_SDK_VERSION := current
+LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-okhttp/1.0.3/grpc-okhttp-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_UNINSTALLABLE_MODULE := true
+
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+LOCAL_MODULE := dialer-grpc-protobuf-lite-target
+LOCAL_SDK_VERSION := current
+LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-protobuf-lite/1.0.3/grpc-protobuf-lite-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_UNINSTALLABLE_MODULE := true
+
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+LOCAL_MODULE := dialer-grpc-stub-target
+LOCAL_SDK_VERSION := current
+LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-stub/1.0.3/grpc-stub-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_UNINSTALLABLE_MODULE := true
+
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+LOCAL_MODULE := dialer-grpc-all-target
+LOCAL_SDK_VERSION := current
+LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-all/1.0.3/grpc-all-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_UNINSTALLABLE_MODULE := true
+
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+LOCAL_MODULE := dialer-grpc-context-target
+LOCAL_SDK_VERSION := current
+LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-context/1.0.3/grpc-context-1.0.3$(COMMON_JAVA_PACKAGE_SUFFIX)
+LOCAL_UNINSTALLABLE_MODULE := true
+
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
\ No newline at end of file
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index c04f8be..5420ec0 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -16,8 +16,8 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
   coreApp="true"
   package="com.android.dialer"
-  android:versionCode="130000"
-  android:versionName="10.0">
+  android:versionCode="150000"
+  android:versionName="11.0">
 
   <uses-sdk
     android:minSdkVersion="23"
@@ -55,6 +55,7 @@
   <uses-permission android:name="android.permission.BROADCAST_STICKY"/>
   <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
   <uses-permission android:name="android.permission.SEND_SMS"/>
+  <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
 
   <uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"/>
   <!-- We use this to disable the status bar buttons of home, back and recent
diff --git a/CONTRIBUTING b/CONTRIBUTING
deleted file mode 100644
index 2827b7d..0000000
--- a/CONTRIBUTING
+++ /dev/null
@@ -1,27 +0,0 @@
-Want to contribute? Great! First, read this page (including the small print at the end).
-
-### Before you contribute
-Before we can use your code, you must sign the
-[Google Individual Contributor License Agreement]
-(https://cla.developers.google.com/about/google-individual)
-(CLA), which you can do online. The CLA is necessary mainly because you own the
-copyright to your changes, even after your contribution becomes part of our
-codebase, so we need your permission to use and distribute your code. We also
-need to be sure of various other things—for instance that you'll tell us if you
-know that your code infringes on other people's patents. You don't have to sign
-the CLA until after you've submitted your code for review and a member has
-approved it, but you must do it before we can put your code into our codebase.
-Before you start working on a larger contribution, you should get in touch with
-us first through the issue tracker with your idea so that we can help out and
-possibly guide you. Coordinating up front makes it much easier to avoid
-frustration later on.
-
-### Code reviews
-All submissions, including submissions by project members, require review. We
-use Github pull requests for this purpose.
-
-### The small print
-Contributions made by corporations are covered by a different agreement than
-the one above, the
-[Software Grant and Corporate Contributor License Agreement]
-(https://cla.developers.google.com/about/google-corporate).
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_bluetooth_audio_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_bluetooth_audio_white_24.png
new file mode 100644
index 0000000..046372d
--- /dev/null
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_bluetooth_audio_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_check_circle_googblue_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_check_circle_googblue_24.png
deleted file mode 100644
index 52ff857..0000000
--- a/assets/quantum/res/drawable-hdpi/quantum_ic_check_circle_googblue_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_close_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_close_white_24.png
index ceb1a1e..fd3edbd 100644
--- a/assets/quantum/res/drawable-hdpi/quantum_ic_close_white_24.png
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_close_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_forward_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_forward_white_24.png
deleted file mode 100644
index a0711d3..0000000
--- a/assets/quantum/res/drawable-hdpi/quantum_ic_forward_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_grade_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_grade_white_24.png
index 86eecdd..dbbb9f6 100644
--- a/assets/quantum/res/drawable-hdpi/quantum_ic_grade_white_24.png
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_grade_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_headset_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_headset_white_24.png
new file mode 100644
index 0000000..d25d388
--- /dev/null
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_headset_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_image_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_image_white_24.png
index b414cf5..caf34c2 100644
--- a/assets/quantum/res/drawable-hdpi/quantum_ic_image_white_24.png
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_image_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_mic_off_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_mic_off_white_24.png
new file mode 100644
index 0000000..6fccf5d
--- /dev/null
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_mic_off_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_network_wifi_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_network_wifi_white_24.png
deleted file mode 100644
index 8df91f2..0000000
--- a/assets/quantum/res/drawable-hdpi/quantum_ic_network_wifi_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_phone_in_talk_white_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_phone_in_talk_white_24.png
new file mode 100644
index 0000000..f2c8942
--- /dev/null
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_phone_in_talk_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_phone_in_talk_white_36.png b/assets/quantum/res/drawable-hdpi/quantum_ic_phone_in_talk_white_36.png
new file mode 100644
index 0000000..ec67c6e
--- /dev/null
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_phone_in_talk_white_36.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_report_grey600_24.png b/assets/quantum/res/drawable-hdpi/quantum_ic_report_grey600_24.png
new file mode 100644
index 0000000..63edb42
--- /dev/null
+++ b/assets/quantum/res/drawable-hdpi/quantum_ic_report_grey600_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-hdpi/quantum_ic_report_white_18.png b/assets/quantum/res/drawable-hdpi/quantum_ic_report_white_18.png
deleted file mode 100644
index f0bb6f5..0000000
--- a/assets/quantum/res/drawable-hdpi/quantum_ic_report_white_18.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_bluetooth_audio_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_bluetooth_audio_white_24.png
new file mode 100644
index 0000000..ddffcf1
--- /dev/null
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_bluetooth_audio_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_check_circle_googblue_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_check_circle_googblue_24.png
deleted file mode 100644
index eff56272..0000000
--- a/assets/quantum/res/drawable-mdpi/quantum_ic_check_circle_googblue_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_close_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_close_white_24.png
index af7f828..3f1f3f8 100644
--- a/assets/quantum/res/drawable-mdpi/quantum_ic_close_white_24.png
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_close_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_forward_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_forward_white_24.png
deleted file mode 100644
index 65f7329..0000000
--- a/assets/quantum/res/drawable-mdpi/quantum_ic_forward_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_grade_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_grade_white_24.png
index d2cbe4c..d85d324 100644
--- a/assets/quantum/res/drawable-mdpi/quantum_ic_grade_white_24.png
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_grade_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_headset_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_headset_white_24.png
new file mode 100644
index 0000000..df06379
--- /dev/null
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_headset_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_image_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_image_white_24.png
index d474bd5..d17a3fa 100644
--- a/assets/quantum/res/drawable-mdpi/quantum_ic_image_white_24.png
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_image_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_mic_off_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_mic_off_white_24.png
new file mode 100644
index 0000000..15094d8
--- /dev/null
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_mic_off_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_network_wifi_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_network_wifi_white_24.png
deleted file mode 100644
index 1c3e8b9..0000000
--- a/assets/quantum/res/drawable-mdpi/quantum_ic_network_wifi_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_phone_in_talk_white_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_phone_in_talk_white_24.png
new file mode 100644
index 0000000..e6f98af
--- /dev/null
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_phone_in_talk_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_phone_in_talk_white_36.png b/assets/quantum/res/drawable-mdpi/quantum_ic_phone_in_talk_white_36.png
new file mode 100644
index 0000000..f2c8942
--- /dev/null
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_phone_in_talk_white_36.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_report_grey600_24.png b/assets/quantum/res/drawable-mdpi/quantum_ic_report_grey600_24.png
new file mode 100644
index 0000000..88fa794
--- /dev/null
+++ b/assets/quantum/res/drawable-mdpi/quantum_ic_report_grey600_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-mdpi/quantum_ic_report_white_18.png b/assets/quantum/res/drawable-mdpi/quantum_ic_report_white_18.png
deleted file mode 100644
index 63ef736..0000000
--- a/assets/quantum/res/drawable-mdpi/quantum_ic_report_white_18.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_bluetooth_audio_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_bluetooth_audio_white_24.png
new file mode 100644
index 0000000..b494eb3
--- /dev/null
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_bluetooth_audio_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_check_circle_googblue_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_check_circle_googblue_24.png
deleted file mode 100644
index e31fcf3..0000000
--- a/assets/quantum/res/drawable-xhdpi/quantum_ic_check_circle_googblue_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_close_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_close_white_24.png
index b7c7ffd..59c2fae 100644
--- a/assets/quantum/res/drawable-xhdpi/quantum_ic_close_white_24.png
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_close_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_forward_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_forward_white_24.png
deleted file mode 100644
index 7a5df52..0000000
--- a/assets/quantum/res/drawable-xhdpi/quantum_ic_forward_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_grade_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_grade_white_24.png
index d65f39d..ce1f670 100644
--- a/assets/quantum/res/drawable-xhdpi/quantum_ic_grade_white_24.png
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_grade_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_headset_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_headset_white_24.png
new file mode 100644
index 0000000..d7a741b
--- /dev/null
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_headset_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_image_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_image_white_24.png
index 2642b9e..07ee6bc 100644
--- a/assets/quantum/res/drawable-xhdpi/quantum_ic_image_white_24.png
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_image_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_mic_off_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_mic_off_white_24.png
new file mode 100644
index 0000000..bb7915f
--- /dev/null
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_mic_off_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_network_wifi_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_network_wifi_white_24.png
deleted file mode 100644
index ca927f3..0000000
--- a/assets/quantum/res/drawable-xhdpi/quantum_ic_network_wifi_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_phone_in_talk_white_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_phone_in_talk_white_24.png
new file mode 100644
index 0000000..a2d78b2
--- /dev/null
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_phone_in_talk_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_phone_in_talk_white_36.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_phone_in_talk_white_36.png
new file mode 100644
index 0000000..9c002da
--- /dev/null
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_phone_in_talk_white_36.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_report_grey600_24.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_report_grey600_24.png
new file mode 100644
index 0000000..9b9d49f
--- /dev/null
+++ b/assets/quantum/res/drawable-xhdpi/quantum_ic_report_grey600_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xhdpi/quantum_ic_report_white_18.png b/assets/quantum/res/drawable-xhdpi/quantum_ic_report_white_18.png
deleted file mode 100644
index dc0c995..0000000
--- a/assets/quantum/res/drawable-xhdpi/quantum_ic_report_white_18.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_bluetooth_audio_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_bluetooth_audio_white_24.png
new file mode 100644
index 0000000..d5022d0
--- /dev/null
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_bluetooth_audio_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_check_circle_googblue_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_check_circle_googblue_24.png
deleted file mode 100644
index a8eb2a4..0000000
--- a/assets/quantum/res/drawable-xxhdpi/quantum_ic_check_circle_googblue_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_close_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_close_white_24.png
index 6b717e0..d5fd569 100644
--- a/assets/quantum/res/drawable-xxhdpi/quantum_ic_close_white_24.png
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_close_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_forward_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_forward_white_24.png
deleted file mode 100644
index 7bd5b16..0000000
--- a/assets/quantum/res/drawable-xxhdpi/quantum_ic_forward_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_grade_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_grade_white_24.png
index aa58792..44f3fdf 100644
--- a/assets/quantum/res/drawable-xxhdpi/quantum_ic_grade_white_24.png
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_grade_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_headset_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_headset_white_24.png
new file mode 100644
index 0000000..82db542
--- /dev/null
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_headset_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_image_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_image_white_24.png
index f9f1def..0059339 100644
--- a/assets/quantum/res/drawable-xxhdpi/quantum_ic_image_white_24.png
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_image_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_mic_off_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_mic_off_white_24.png
new file mode 100644
index 0000000..7a15a9e
--- /dev/null
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_mic_off_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_network_wifi_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_network_wifi_white_24.png
deleted file mode 100644
index 75469cd..0000000
--- a/assets/quantum/res/drawable-xxhdpi/quantum_ic_network_wifi_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_phone_in_talk_white_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_phone_in_talk_white_24.png
new file mode 100644
index 0000000..9c002da
--- /dev/null
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_phone_in_talk_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_phone_in_talk_white_36.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_phone_in_talk_white_36.png
new file mode 100644
index 0000000..5bb683f
--- /dev/null
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_phone_in_talk_white_36.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_report_grey600_24.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_report_grey600_24.png
new file mode 100644
index 0000000..e0721e6
--- /dev/null
+++ b/assets/quantum/res/drawable-xxhdpi/quantum_ic_report_grey600_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxhdpi/quantum_ic_report_white_18.png b/assets/quantum/res/drawable-xxhdpi/quantum_ic_report_white_18.png
deleted file mode 100644
index 919a872..0000000
--- a/assets/quantum/res/drawable-xxhdpi/quantum_ic_report_white_18.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_bluetooth_audio_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_bluetooth_audio_white_24.png
new file mode 100644
index 0000000..8e1fa20
--- /dev/null
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_bluetooth_audio_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_check_circle_googblue_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_check_circle_googblue_24.png
deleted file mode 100644
index 7e08f61..0000000
--- a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_check_circle_googblue_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_close_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_close_white_24.png
index 3964192..dac4e9c 100644
--- a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_close_white_24.png
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_close_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_forward_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_forward_white_24.png
deleted file mode 100644
index 428009c..0000000
--- a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_forward_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_grade_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_grade_white_24.png
index 7f38d09..31000c6 100644
--- a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_grade_white_24.png
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_grade_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_headset_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_headset_white_24.png
new file mode 100644
index 0000000..0f0b2e1
--- /dev/null
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_headset_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_image_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_image_white_24.png
index 2ffdb55..f62cee6 100644
--- a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_image_white_24.png
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_image_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_mic_off_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_mic_off_white_24.png
new file mode 100644
index 0000000..22ca19a
--- /dev/null
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_mic_off_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_network_wifi_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_network_wifi_white_24.png
deleted file mode 100644
index eb284e3..0000000
--- a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_network_wifi_white_24.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_phone_in_talk_white_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_phone_in_talk_white_24.png
new file mode 100644
index 0000000..36be1da
--- /dev/null
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_phone_in_talk_white_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_phone_in_talk_white_36.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_phone_in_talk_white_36.png
new file mode 100644
index 0000000..1257e66
--- /dev/null
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_phone_in_talk_white_36.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_report_grey600_24.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_report_grey600_24.png
new file mode 100644
index 0000000..29ac881
--- /dev/null
+++ b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_report_grey600_24.png
Binary files differ
diff --git a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_report_white_18.png b/assets/quantum/res/drawable-xxxhdpi/quantum_ic_report_white_18.png
deleted file mode 100644
index aed7668..0000000
--- a/assets/quantum/res/drawable-xxxhdpi/quantum_ic_report_white_18.png
+++ /dev/null
Binary files differ
diff --git a/assets/quantum/res/drawable/quantum_ic_arrow_back_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_arrow_back_vd_theme_24.xml
new file mode 100644
index 0000000..2989fda
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_arrow_back_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M20,11H7.83l5.59,-5.59L12,4l-8,8 8,8 1.41,-1.41L7.83,13H20v-2z"/>
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_call_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_call_vd_theme_24.xml
new file mode 100644
index 0000000..1fbafeb
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_call_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M6.62,10.79c1.44,2.83 3.76,5.14 6.59,6.59l2.2,-2.2c0.27,-0.27 0.67,-0.36 1.02,-0.24 1.12,0.37 2.33,0.57 3.57,0.57 0.55,0 1,0.45 1,1V20c0,0.55 -0.45,1 -1,1 -9.39,0 -17,-7.61 -17,-17 0,-0.55 0.45,-1 1,-1h3.5c0.55,0 1,0.45 1,1 0,1.25 0.2,2.45 0.57,3.57 0.11,0.35 0.03,0.74 -0.25,1.02l-2.2,2.2z"/>
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_close_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_close_vd_theme_24.xml
new file mode 100644
index 0000000..3f99732
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_close_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z"/>
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_enterprise_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_enterprise_vd_theme_24.xml
index 4f1fd49..6495ac7 100644
--- a/assets/quantum/res/drawable/quantum_ic_enterprise_vd_theme_24.xml
+++ b/assets/quantum/res/drawable/quantum_ic_enterprise_vd_theme_24.xml
@@ -7,4 +7,4 @@
     <path
         android:fillColor="@android:color/white"
         android:pathData="M14,16.5h-4L10,15L3,15v4c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2v-4h-7v1.5zM20,6h-3.5L16.5,4.5L15,3L9,3L7.5,4.55L7.5,6L4,6c-1.1,0 -2,0.9 -2,2v4c0,1.1 0.9,2 2,2h6v-1.5h4L14,14h6c1.1,0 2,-0.9 2,-2L22,8c0,-1.1 -0.9,-2 -2,-2zM15,6L9,6L9,4.5h6L15,6z"/>
-</vector>
\ No newline at end of file
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_hd_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_hd_vd_theme_24.xml
index c67509c..b6da8a0 100644
--- a/assets/quantum/res/drawable/quantum_ic_hd_vd_theme_24.xml
+++ b/assets/quantum/res/drawable/quantum_ic_hd_vd_theme_24.xml
@@ -7,4 +7,4 @@
     <path
         android:fillColor="@android:color/white"
         android:pathData="M19,3L5,3c-1.11,0 -2,0.9 -2,2v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2L21,5c0,-1.1 -0.9,-2 -2,-2zM11,15L9.5,15v-2h-2v2L6,15L6,9h1.5v2.5h2L9.5,9L11,9v6zM13,9h4c0.55,0 1,0.45 1,1v4c0,0.55 -0.45,1 -1,1h-4L13,9zM14.5,13.5h2v-3h-2v3z"/>
-</vector>
\ No newline at end of file
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_history_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_history_vd_theme_24.xml
new file mode 100644
index 0000000..d8567f5
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_history_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M13,3c-4.97,0 -9,4.03 -9,9L1,12l3.89,3.89 0.07,0.14L9,12L6,12c0,-3.87 3.13,-7 7,-7s7,3.13 7,7 -3.13,7 -7,7c-1.93,0 -3.68,-0.79 -4.94,-2.06l-1.42,1.42C8.27,19.99 10.51,21 13,21c4.97,0 9,-4.03 9,-9s-4.03,-9 -9,-9zM12,8v5l4.28,2.54 0.72,-1.21 -3.5,-2.08L13.5,8L12,8z"/>
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_message_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_message_vd_theme_24.xml
new file mode 100644
index 0000000..280fa26
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_message_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M20,2L4,2c-1.1,0 -1.99,0.9 -1.99,2L2,22l4,-4h14c1.1,0 2,-0.9 2,-2L22,4c0,-1.1 -0.9,-2 -2,-2zM18,14L6,14v-2h12v2zM18,11L6,11L6,9h12v2zM18,8L6,8L6,6h12v2z"/>
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_person_add_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_person_add_vd_theme_24.xml
new file mode 100644
index 0000000..cf4e563
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_person_add_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M15,12c2.21,0 4,-1.79 4,-4s-1.79,-4 -4,-4 -4,1.79 -4,4 1.79,4 4,4zM6,10L6,7L4,7v3L1,10v2h3v3h2v-3h3v-2L6,10zM15,14c-2.67,0 -8,1.34 -8,4v2h16v-2c0,-2.66 -5.33,-4 -8,-4z"/>
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_search_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_search_vd_theme_24.xml
new file mode 100644
index 0000000..083d636
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_search_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M15.5,14h-0.79l-0.28,-0.27C15.41,12.59 16,11.11 16,9.5 16,5.91 13.09,3 9.5,3S3,5.91 3,9.5 5.91,16 9.5,16c1.61,0 3.09,-0.59 4.23,-1.57l0.27,0.28v0.79l5,4.99L20.49,19l-4.99,-5zM9.5,14C7.01,14 5,11.99 5,9.5S7.01,5 9.5,5 14,7.01 14,9.5 11.99,14 9.5,14z"/>
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_videocam_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_videocam_vd_theme_24.xml
new file mode 100644
index 0000000..429061a
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_videocam_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+        android:width="24dp"
+        android:height="24dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0"
+        android:tint="?attr/colorControlNormal">
+    <path
+        android:fillColor="@android:color/white"
+        android:pathData="M17,10.5V7c0,-0.55 -0.45,-1 -1,-1H4c-0.55,0 -1,0.45 -1,1v10c0,0.55 0.45,1 1,1h12c0.55,0 1,-0.45 1,-1v-3.5l4,4v-11l-4,4z"/>
+</vector>
diff --git a/java/com/android/contacts/common/ClipboardUtils.java b/java/com/android/contacts/common/ClipboardUtils.java
index 9345b0f..3d76839 100644
--- a/java/com/android/contacts/common/ClipboardUtils.java
+++ b/java/com/android/contacts/common/ClipboardUtils.java
@@ -24,8 +24,6 @@
 
 public class ClipboardUtils {
 
-  private static final String TAG = "ClipboardUtils";
-
   private ClipboardUtils() {}
 
   /**
diff --git a/java/com/android/contacts/common/ContactPhotoManager.java b/java/com/android/contacts/common/ContactPhotoManager.java
index 169348b..fbf51cc 100644
--- a/java/com/android/contacts/common/ContactPhotoManager.java
+++ b/java/com/android/contacts/common/ContactPhotoManager.java
@@ -36,14 +36,6 @@
 /** Asynchronously loads contact photos and maintains a cache of photos. */
 public abstract class ContactPhotoManager implements ComponentCallbacks2 {
 
-  /** Contact type constants used for default letter images */
-  public static final int TYPE_PERSON = LetterTileDrawable.TYPE_PERSON;
-
-  public static final int TYPE_SPAM = LetterTileDrawable.TYPE_SPAM;
-  public static final int TYPE_BUSINESS = LetterTileDrawable.TYPE_BUSINESS;
-  public static final int TYPE_VOICEMAIL = LetterTileDrawable.TYPE_VOICEMAIL;
-  public static final int TYPE_DEFAULT = LetterTileDrawable.TYPE_DEFAULT;
-  public static final int TYPE_GENERIC_AVATAR = LetterTileDrawable.TYPE_GENERIC_AVATAR;
   /** Scale and offset default constants used for default letter images */
   public static final float SCALE_DEFAULT = 1.0f;
 
@@ -88,7 +80,7 @@
       if (!TextUtils.isEmpty(request.identifier)) {
         builder.appendQueryParameter(IDENTIFIER_PARAM_KEY, request.identifier);
       }
-      if (request.contactType != TYPE_DEFAULT) {
+      if (request.contactType != LetterTileDrawable.TYPE_DEFAULT) {
         builder.appendQueryParameter(CONTACT_TYPE_PARAM_KEY, String.valueOf(request.contactType));
       }
       if (request.scale != SCALE_DEFAULT) {
@@ -114,7 +106,7 @@
   public static String appendBusinessContactType(String photoUrl) {
     Uri uri = Uri.parse(photoUrl);
     Builder builder = uri.buildUpon();
-    builder.encodedFragment(String.valueOf(TYPE_BUSINESS));
+    builder.encodedFragment(String.valueOf(LetterTileDrawable.TYPE_BUSINESS));
     return builder.build().toString();
   }
 
@@ -147,7 +139,7 @@
 
     String encodedFragment = photoUri.getEncodedFragment();
     return !TextUtils.isEmpty(encodedFragment)
-        && encodedFragment.equals(String.valueOf(TYPE_BUSINESS));
+        && encodedFragment.equals(String.valueOf(LetterTileDrawable.TYPE_BUSINESS));
   }
 
   protected static DefaultImageRequest getDefaultImageRequestFromUri(Uri uri) {
@@ -246,6 +238,9 @@
     badge.assignContactUri(contactUri);
     badge.setOverlay(null);
 
+    badge.setContentDescription(
+        badge.getContext().getString(R.string.description_quick_contact_for, displayName));
+
     String lookupKey = contactUri == null ? null : UriUtils.getLookupKeyFromUri(contactUri);
     ContactPhotoManager.DefaultImageRequest request =
         new ContactPhotoManager.DefaultImageRequest(
@@ -378,7 +373,7 @@
      * be returned.
      */
     public static final DefaultImageRequest EMPTY_DEFAULT_BUSINESS_IMAGE_REQUEST =
-        new DefaultImageRequest(null, null, TYPE_BUSINESS, false);
+        new DefaultImageRequest(null, null, LetterTileDrawable.TYPE_BUSINESS, false);
     /**
      * Used to indicate that a circular drawable that represents a contact without any contact
      * details should be returned.
@@ -390,7 +385,7 @@
      * should be returned.
      */
     public static final DefaultImageRequest EMPTY_CIRCULAR_BUSINESS_IMAGE_REQUEST =
-        new DefaultImageRequest(null, null, TYPE_BUSINESS, true);
+        new DefaultImageRequest(null, null, LetterTileDrawable.TYPE_BUSINESS, true);
     /** The contact's display name. The display name is used to */
     public String displayName;
     /**
@@ -403,10 +398,9 @@
     /**
      * The type of this contact. This contact type may be used to decide the kind of image to use in
      * the case where a unique letter cannot be generated from the contact's display name and
-     * identifier. See: {@link #TYPE_PERSON} {@link #TYPE_BUSINESS} {@link #TYPE_PERSON} {@link
-     * #TYPE_DEFAULT}
+     * identifier.
      */
-    public int contactType = TYPE_DEFAULT;
+    public @LetterTileDrawable.ContactType int contactType = LetterTileDrawable.TYPE_DEFAULT;
     /**
      * The amount to scale the letter or bitmap to, as a ratio of its default size (from a range of
      * 0.0f to 2.0f). The default value is 1.0f.
@@ -429,7 +423,13 @@
     public DefaultImageRequest() {}
 
     public DefaultImageRequest(String displayName, String identifier, boolean isCircular) {
-      this(displayName, identifier, TYPE_DEFAULT, SCALE_DEFAULT, OFFSET_DEFAULT, isCircular);
+      this(
+          displayName,
+          identifier,
+          LetterTileDrawable.TYPE_DEFAULT,
+          SCALE_DEFAULT,
+          OFFSET_DEFAULT,
+          isCircular);
     }
 
     public DefaultImageRequest(
diff --git a/java/com/android/contacts/common/ContactPhotoManagerImpl.java b/java/com/android/contacts/common/ContactPhotoManagerImpl.java
index 2e6ff9f..28ecf34 100644
--- a/java/com/android/contacts/common/ContactPhotoManagerImpl.java
+++ b/java/com/android/contacts/common/ContactPhotoManagerImpl.java
@@ -53,9 +53,9 @@
 import android.view.ViewGroup;
 import android.widget.ImageView;
 import com.android.contacts.common.util.BitmapUtil;
-import com.android.contacts.common.util.TrafficStatsTags;
 import com.android.contacts.common.util.UriUtils;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.constants.TrafficStatsTags;
 import com.android.dialer.util.PermissionsUtil;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
@@ -634,8 +634,9 @@
           }
           return true;
         }
+      default:
+        return false;
     }
-    return false;
   }
 
   public void ensureLoaderThread() {
diff --git a/java/com/android/contacts/common/ContactPresenceIconUtil.java b/java/com/android/contacts/common/ContactPresenceIconUtil.java
index eeaf652..bce4b21 100644
--- a/java/com/android/contacts/common/ContactPresenceIconUtil.java
+++ b/java/com/android/contacts/common/ContactPresenceIconUtil.java
@@ -19,6 +19,7 @@
 import android.content.Context;
 import android.graphics.drawable.Drawable;
 import android.provider.ContactsContract.StatusUpdates;
+import android.support.v4.content.ContextCompat;
 
 /** Define the contact present show policy in Contacts */
 public class ContactPresenceIconUtil {
@@ -36,7 +37,7 @@
       case StatusUpdates.AWAY:
       case StatusUpdates.DO_NOT_DISTURB:
       case StatusUpdates.INVISIBLE:
-        return context.getResources().getDrawable(StatusUpdates.getPresenceIconResourceId(status));
+        return ContextCompat.getDrawable(context, StatusUpdates.getPresenceIconResourceId(status));
       case StatusUpdates.OFFLINE:
         // The undefined status is treated as OFFLINE in getPresenceIconResourceId();
       default:
diff --git a/java/com/android/contacts/common/ContactStatusUtil.java b/java/com/android/contacts/common/ContactStatusUtil.java
index 97d84c8..c5347e7 100644
--- a/java/com/android/contacts/common/ContactStatusUtil.java
+++ b/java/com/android/contacts/common/ContactStatusUtil.java
@@ -23,8 +23,6 @@
 /** Provides static function to get default contact status message. */
 public class ContactStatusUtil {
 
-  private static final String TAG = "ContactStatusUtil";
-
   public static String getStatusString(Context context, int presence) {
     Resources resources = context.getResources();
     switch (presence) {
diff --git a/java/com/android/contacts/common/ContactsUtils.java b/java/com/android/contacts/common/ContactsUtils.java
index 60af44b..66ccc90 100644
--- a/java/com/android/contacts/common/ContactsUtils.java
+++ b/java/com/android/contacts/common/ContactsUtils.java
@@ -16,184 +16,17 @@
 
 package com.android.contacts.common;
 
-import android.content.Context;
-import android.content.Intent;
-import android.database.Cursor;
-import android.net.Uri;
-import android.provider.ContactsContract.CommonDataKinds.Im;
-import android.provider.ContactsContract.DisplayPhoto;
+import android.provider.ContactsContract.Contacts;
 import android.support.annotation.IntDef;
-import android.text.TextUtils;
-import android.util.Pair;
-import com.android.contacts.common.compat.ContactsCompat;
 import com.android.contacts.common.compat.DirectoryCompat;
-import com.android.contacts.common.model.AccountTypeManager;
-import com.android.contacts.common.model.account.AccountWithDataSet;
-import com.android.contacts.common.model.dataitem.ImDataItem;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
-import java.util.List;
 
 public class ContactsUtils {
 
   // Telecomm related schemes are in CallUtil
-  public static final String SCHEME_IMTO = "imto";
-  public static final String SCHEME_MAILTO = "mailto";
-  public static final String SCHEME_SMSTO = "smsto";
   public static final long USER_TYPE_CURRENT = 0;
   public static final long USER_TYPE_WORK = 1;
-  private static final String TAG = "ContactsUtils";
-  private static final int DEFAULT_THUMBNAIL_SIZE = 96;
-  private static int sThumbnailSize = -1;
-
-  /**
-   * This looks up the provider name defined in ProviderNames from the predefined IM protocol id.
-   * This is used for interacting with the IM application.
-   *
-   * @param protocol the protocol ID
-   * @return the provider name the IM app uses for the given protocol, or null if no provider is
-   *     defined for the given protocol
-   * @hide
-   */
-  public static String lookupProviderNameFromId(int protocol) {
-    switch (protocol) {
-      case Im.PROTOCOL_GOOGLE_TALK:
-        return ProviderNames.GTALK;
-      case Im.PROTOCOL_AIM:
-        return ProviderNames.AIM;
-      case Im.PROTOCOL_MSN:
-        return ProviderNames.MSN;
-      case Im.PROTOCOL_YAHOO:
-        return ProviderNames.YAHOO;
-      case Im.PROTOCOL_ICQ:
-        return ProviderNames.ICQ;
-      case Im.PROTOCOL_JABBER:
-        return ProviderNames.JABBER;
-      case Im.PROTOCOL_SKYPE:
-        return ProviderNames.SKYPE;
-      case Im.PROTOCOL_QQ:
-        return ProviderNames.QQ;
-    }
-    return null;
-  }
-
-  /**
-   * Test if the given {@link CharSequence} contains any graphic characters, first checking {@link
-   * TextUtils#isEmpty(CharSequence)} to handle null.
-   */
-  public static boolean isGraphic(CharSequence str) {
-    return !TextUtils.isEmpty(str) && TextUtils.isGraphic(str);
-  }
-
-  /** Returns true if two objects are considered equal. Two null references are equal here. */
-  public static boolean areObjectsEqual(Object a, Object b) {
-    return a == b || (a != null && a.equals(b));
-  }
-
-  /** Returns true if two {@link Intent}s are both null, or have the same action. */
-  public static final boolean areIntentActionEqual(Intent a, Intent b) {
-    if (a == b) {
-      return true;
-    }
-    if (a == null || b == null) {
-      return false;
-    }
-    return TextUtils.equals(a.getAction(), b.getAction());
-  }
-
-  public static boolean areGroupWritableAccountsAvailable(Context context) {
-    final List<AccountWithDataSet> accounts =
-        AccountTypeManager.getInstance(context).getGroupWritableAccounts();
-    return !accounts.isEmpty();
-  }
-
-  /**
-   * Returns the size (width and height) of thumbnail pictures as configured in the provider. This
-   * can safely be called from the UI thread, as the provider can serve this without performing a
-   * database access
-   */
-  public static int getThumbnailSize(Context context) {
-    if (sThumbnailSize == -1) {
-      final Cursor c =
-          context
-              .getContentResolver()
-              .query(
-                  DisplayPhoto.CONTENT_MAX_DIMENSIONS_URI,
-                  new String[] {DisplayPhoto.THUMBNAIL_MAX_DIM},
-                  null,
-                  null,
-                  null);
-      if (c != null) {
-        try {
-          if (c.moveToFirst()) {
-            sThumbnailSize = c.getInt(0);
-          }
-        } finally {
-          c.close();
-        }
-      }
-    }
-    return sThumbnailSize != -1 ? sThumbnailSize : DEFAULT_THUMBNAIL_SIZE;
-  }
-
-  private static Intent getCustomImIntent(ImDataItem im, int protocol) {
-    String host = im.getCustomProtocol();
-    final String data = im.getData();
-    if (TextUtils.isEmpty(data)) {
-      return null;
-    }
-    if (protocol != Im.PROTOCOL_CUSTOM) {
-      // Try bringing in a well-known host for specific protocols
-      host = ContactsUtils.lookupProviderNameFromId(protocol);
-    }
-    if (TextUtils.isEmpty(host)) {
-      return null;
-    }
-    final String authority = host.toLowerCase();
-    final Uri imUri =
-        new Uri.Builder().scheme(SCHEME_IMTO).authority(authority).appendPath(data).build();
-    final Intent intent = new Intent(Intent.ACTION_SENDTO, imUri);
-    return intent;
-  }
-
-  /**
-   * Returns the proper Intent for an ImDatItem. If available, a secondary intent is stored in the
-   * second Pair slot
-   */
-  public static Pair<Intent, Intent> buildImIntent(Context context, ImDataItem im) {
-    Intent intent = null;
-    Intent secondaryIntent = null;
-    final boolean isEmail = im.isCreatedFromEmail();
-
-    if (!isEmail && !im.isProtocolValid()) {
-      return new Pair<>(null, null);
-    }
-
-    final String data = im.getData();
-    if (TextUtils.isEmpty(data)) {
-      return new Pair<>(null, null);
-    }
-
-    final int protocol = isEmail ? Im.PROTOCOL_GOOGLE_TALK : im.getProtocol();
-
-    if (protocol == Im.PROTOCOL_GOOGLE_TALK) {
-      final int chatCapability = im.getChatCapability();
-      if ((chatCapability & Im.CAPABILITY_HAS_CAMERA) != 0) {
-        intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message"));
-        secondaryIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?call"));
-      } else if ((chatCapability & Im.CAPABILITY_HAS_VOICE) != 0) {
-        // Allow Talking and Texting
-        intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message"));
-        secondaryIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?call"));
-      } else {
-        intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message"));
-      }
-    } else {
-      // Build an IM Intent
-      intent = getCustomImIntent(im, protocol);
-    }
-    return new Pair<>(intent, secondaryIntent);
-  }
 
   /**
    * Determine UserType from directory id and contact id.
@@ -232,27 +65,13 @@
           : USER_TYPE_CURRENT;
     }
     // Only check contact id if directory id is null
-    if (contactId != null && contactId != 0L && ContactsCompat.isEnterpriseContactId(contactId)) {
+    if (contactId != null && contactId != 0L && Contacts.isEnterpriseContactId(contactId)) {
       return USER_TYPE_WORK;
     } else {
       return USER_TYPE_CURRENT;
     }
   }
 
-  // TODO find a proper place for the canonical version of these
-  public interface ProviderNames {
-
-    String YAHOO = "Yahoo";
-    String GTALK = "GTalk";
-    String MSN = "MSN";
-    String ICQ = "ICQ";
-    String AIM = "AIM";
-    String XMPP = "XMPP";
-    String JABBER = "JABBER";
-    String SKYPE = "SKYPE";
-    String QQ = "QQ";
-  }
-
   /**
    * UserType indicates the user type of the contact. If the contact is from Work User (Work Profile
    * in Android Multi-User System), it's {@link #USER_TYPE_WORK}, otherwise, {@link
diff --git a/java/com/android/contacts/common/GeoUtil.java b/java/com/android/contacts/common/GeoUtil.java
deleted file mode 100644
index 50b0cd9..0000000
--- a/java/com/android/contacts/common/GeoUtil.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright (C) 2012 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.contacts.common;
-
-import android.app.Application;
-import android.content.Context;
-import com.android.contacts.common.location.CountryDetector;
-import com.google.i18n.phonenumbers.NumberParseException;
-import com.google.i18n.phonenumbers.PhoneNumberUtil;
-import com.google.i18n.phonenumbers.Phonenumber;
-import com.google.i18n.phonenumbers.geocoding.PhoneNumberOfflineGeocoder;
-import java.util.Locale;
-
-/** Static methods related to Geo. */
-public class GeoUtil {
-
-  /**
-   * Returns the country code of the country the user is currently in. Before calling this method,
-   * make sure that {@link CountryDetector#initialize(Context)} has already been called in {@link
-   * Application#onCreate()}.
-   *
-   * @return The ISO 3166-1 two letters country code of the country the user is in.
-   */
-  public static String getCurrentCountryIso(Context context) {
-    // The {@link CountryDetector} should never return null so this is safe to return as-is.
-    return CountryDetector.getInstance(context).getCurrentCountryIso();
-  }
-
-  public static String getGeocodedLocationFor(Context context, String phoneNumber) {
-    final PhoneNumberOfflineGeocoder geocoder = PhoneNumberOfflineGeocoder.getInstance();
-    final PhoneNumberUtil phoneNumberUtil = PhoneNumberUtil.getInstance();
-    try {
-      final Phonenumber.PhoneNumber structuredPhoneNumber =
-          phoneNumberUtil.parse(phoneNumber, getCurrentCountryIso(context));
-      final Locale locale = context.getResources().getConfiguration().locale;
-      return geocoder.getDescriptionForNumber(structuredPhoneNumber, locale);
-    } catch (NumberParseException e) {
-      return null;
-    }
-  }
-}
diff --git a/java/com/android/contacts/common/MoreContactUtils.java b/java/com/android/contacts/common/MoreContactUtils.java
index 028f899..26241b3 100644
--- a/java/com/android/contacts/common/MoreContactUtils.java
+++ b/java/com/android/contacts/common/MoreContactUtils.java
@@ -16,7 +16,6 @@
 
 package com.android.contacts.common;
 
-import android.content.Context;
 import android.content.Intent;
 import android.graphics.Rect;
 import android.net.Uri;
@@ -24,7 +23,6 @@
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
 import android.view.View;
-import android.widget.TextView;
 import com.android.contacts.common.model.account.AccountType;
 import com.google.i18n.phonenumbers.NumberParseException;
 import com.google.i18n.phonenumbers.PhoneNumberUtil;
@@ -194,40 +192,6 @@
   }
 
   /**
-   * Returns a header view based on the R.layout.list_separator, where the containing {@link
-   * android.widget.TextView} is set using the given textResourceId.
-   */
-  public static TextView createHeaderView(Context context, int textResourceId) {
-    final TextView textView = (TextView) View.inflate(context, R.layout.list_separator, null);
-    textView.setText(context.getString(textResourceId));
-    return textView;
-  }
-
-  /**
-   * Set the top padding on the header view dynamically, based on whether the header is in the first
-   * row or not.
-   */
-  public static void setHeaderViewBottomPadding(
-      Context context, TextView textView, boolean isFirstRow) {
-    final int topPadding;
-    if (isFirstRow) {
-      topPadding =
-          (int)
-              context
-                  .getResources()
-                  .getDimension(R.dimen.frequently_contacted_title_top_margin_when_first_row);
-    } else {
-      topPadding =
-          (int) context.getResources().getDimension(R.dimen.frequently_contacted_title_top_margin);
-    }
-    textView.setPaddingRelative(
-        textView.getPaddingStart(),
-        topPadding,
-        textView.getPaddingEnd(),
-        textView.getPaddingBottom());
-  }
-
-  /**
    * Returns the intent to launch for the given invitable account type and contact lookup URI. This
    * will return null if the account type is not invitable (i.e. there is no {@link
    * AccountType#getInviteContactActivityClassName()} or {@link
diff --git a/java/com/android/contacts/common/compat/ContactsCompat.java b/java/com/android/contacts/common/compat/ContactsCompat.java
index 39d0b55..e0c9b7e 100644
--- a/java/com/android/contacts/common/compat/ContactsCompat.java
+++ b/java/com/android/contacts/common/compat/ContactsCompat.java
@@ -21,7 +21,6 @@
 import android.os.Build.VERSION_CODES;
 import android.provider.ContactsContract;
 import android.provider.ContactsContract.Contacts;
-import com.android.dialer.compat.CompatUtils;
 
 /** Compatibility class for {@link ContactsContract.Contacts} */
 public class ContactsCompat {
@@ -29,8 +28,6 @@
   // TODO: Use N APIs
   private static final Uri ENTERPRISE_CONTENT_FILTER_URI =
       Uri.withAppendedPath(Contacts.CONTENT_URI, "filter_enterprise");
-  // Copied from ContactsContract.Contacts#ENTERPRISE_CONTACT_ID_BASE, which is hidden.
-  private static final long ENTERPRISE_CONTACT_ID_BASE = 1000000000;
 
   /** Not instantiable. */
   private ContactsCompat() {}
@@ -41,17 +38,4 @@
     }
     return Contacts.CONTENT_FILTER_URI;
   }
-
-  /**
-   * Return {@code true} if a contact ID is from the contacts provider on the enterprise profile.
-   */
-  public static boolean isEnterpriseContactId(long contactId) {
-    if (CompatUtils.isLollipopCompatible()) {
-      return Contacts.isEnterpriseContactId(contactId);
-    } else {
-      // copied from ContactsContract.Contacts.isEnterpriseContactId
-      return (contactId >= ENTERPRISE_CONTACT_ID_BASE)
-          && (contactId < ContactsContract.Profile.MIN_ID);
-    }
-  }
 }
diff --git a/java/com/android/contacts/common/compat/PhoneAccountCompat.java b/java/com/android/contacts/common/compat/PhoneAccountCompat.java
index 6a24ec0..aa22c68 100644
--- a/java/com/android/contacts/common/compat/PhoneAccountCompat.java
+++ b/java/com/android/contacts/common/compat/PhoneAccountCompat.java
@@ -20,33 +20,10 @@
 import android.graphics.drawable.Icon;
 import android.support.annotation.Nullable;
 import android.telecom.PhoneAccount;
-import android.util.Log;
-import com.android.dialer.compat.CompatUtils;
 
 /** Compatiblity class for {@link android.telecom.PhoneAccount} */
 public class PhoneAccountCompat {
 
-  private static final String TAG = PhoneAccountCompat.class.getSimpleName();
-
-  /**
-   * Gets the {@link Icon} associated with the given {@link PhoneAccount}
-   *
-   * @param phoneAccount the PhoneAccount from which to retrieve the Icon
-   * @return the Icon, or null
-   */
-  @Nullable
-  public static Icon getIcon(@Nullable PhoneAccount phoneAccount) {
-    if (phoneAccount == null) {
-      return null;
-    }
-
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return phoneAccount.getIcon();
-    }
-
-    return null;
-  }
-
   /**
    * Builds and returns an icon {@code Drawable} to represent this {@code PhoneAccount} in a user
    * interface.
@@ -61,44 +38,16 @@
     if (phoneAccount == null || context == null) {
       return null;
     }
-
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return createIconDrawableMarshmallow(phoneAccount, context);
-    }
-
-    if (CompatUtils.isLollipopMr1Compatible()) {
-      return createIconDrawableLollipopMr1(phoneAccount, context);
-    }
-    return null;
+    return createIconDrawableMarshmallow(phoneAccount, context);
   }
 
   @Nullable
   private static Drawable createIconDrawableMarshmallow(
       PhoneAccount phoneAccount, Context context) {
-    Icon accountIcon = getIcon(phoneAccount);
+    Icon accountIcon = phoneAccount.getIcon();
     if (accountIcon == null) {
       return null;
     }
     return accountIcon.loadDrawable(context);
   }
-
-  @Nullable
-  private static Drawable createIconDrawableLollipopMr1(
-      PhoneAccount phoneAccount, Context context) {
-    try {
-      return (Drawable)
-          PhoneAccount.class
-              .getMethod("createIconDrawable", Context.class)
-              .invoke(phoneAccount, context);
-    } catch (ReflectiveOperationException e) {
-      return null;
-    } catch (Throwable t) {
-      Log.e(
-          TAG,
-          "Unexpected exception when attempting to call "
-              + "android.telecom.PhoneAccount#createIconDrawable",
-          t);
-      return null;
-    }
-  }
 }
diff --git a/java/com/android/contacts/common/compat/PhoneNumberUtilsCompat.java b/java/com/android/contacts/common/compat/PhoneNumberUtilsCompat.java
index 960b340..a6cfe07 100644
--- a/java/com/android/contacts/common/compat/PhoneNumberUtilsCompat.java
+++ b/java/com/android/contacts/common/compat/PhoneNumberUtilsCompat.java
@@ -17,13 +17,7 @@
 package com.android.contacts.common.compat;
 
 import android.telephony.PhoneNumberUtils;
-import android.text.Spannable;
-import android.text.TextUtils;
 import android.text.style.TtsSpan;
-import com.android.dialer.compat.CompatUtils;
-import com.google.i18n.phonenumbers.NumberParseException;
-import com.google.i18n.phonenumbers.PhoneNumberUtil;
-import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
 
 /**
  * This class contains static utility methods extracted from PhoneNumberUtils, and the methods were
@@ -37,138 +31,16 @@
   /** Not instantiable. */
   private PhoneNumberUtilsCompat() {}
 
-  public static String normalizeNumber(String phoneNumber) {
-    if (CompatUtils.isLollipopCompatible()) {
-      return PhoneNumberUtils.normalizeNumber(phoneNumber);
-    } else {
-      return normalizeNumberInternal(phoneNumber);
-    }
-  }
-
-  /** Implementation copied from {@link PhoneNumberUtils#normalizeNumber} */
-  private static String normalizeNumberInternal(String phoneNumber) {
-    if (TextUtils.isEmpty(phoneNumber)) {
-      return "";
-    }
-    StringBuilder sb = new StringBuilder();
-    int len = phoneNumber.length();
-    for (int i = 0; i < len; i++) {
-      char c = phoneNumber.charAt(i);
-      // Character.digit() supports ASCII and Unicode digits (fullwidth, Arabic-Indic, etc.)
-      int digit = Character.digit(c, 10);
-      if (digit != -1) {
-        sb.append(digit);
-      } else if (sb.length() == 0 && c == '+') {
-        sb.append(c);
-      } else if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) {
-        return normalizeNumber(PhoneNumberUtils.convertKeypadLettersToDigits(phoneNumber));
-      }
-    }
-    return sb.toString();
-  }
-
   public static String formatNumber(
       String phoneNumber, String phoneNumberE164, String defaultCountryIso) {
-    if (CompatUtils.isLollipopCompatible()) {
       return PhoneNumberUtils.formatNumber(phoneNumber, phoneNumberE164, defaultCountryIso);
-    } else {
-      // This method was deprecated in API level 21, so it's only used on pre-L SDKs.
-      return PhoneNumberUtils.formatNumber(phoneNumber);
-    }
   }
 
   public static CharSequence createTtsSpannable(CharSequence phoneNumber) {
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return PhoneNumberUtils.createTtsSpannable(phoneNumber);
-    } else {
-      return createTtsSpannableInternal(phoneNumber);
-    }
+    return PhoneNumberUtils.createTtsSpannable(phoneNumber);
   }
 
   public static TtsSpan createTtsSpan(String phoneNumber) {
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return PhoneNumberUtils.createTtsSpan(phoneNumber);
-    } else if (CompatUtils.isLollipopCompatible()) {
-      return createTtsSpanLollipop(phoneNumber);
-    } else {
-      return null;
-    }
-  }
-
-  /** Copied from {@link PhoneNumberUtils#createTtsSpannable} */
-  private static CharSequence createTtsSpannableInternal(CharSequence phoneNumber) {
-    if (phoneNumber == null) {
-      return null;
-    }
-    Spannable spannable = Spannable.Factory.getInstance().newSpannable(phoneNumber);
-    addTtsSpanInternal(spannable, 0, spannable.length());
-    return spannable;
-  }
-
-  /** Compat method for addTtsSpan, see {@link PhoneNumberUtils#addTtsSpan} */
-  public static void addTtsSpan(Spannable s, int start, int endExclusive) {
-    if (CompatUtils.isMarshmallowCompatible()) {
-      PhoneNumberUtils.addTtsSpan(s, start, endExclusive);
-    } else {
-      addTtsSpanInternal(s, start, endExclusive);
-    }
-  }
-
-  /** Copied from {@link PhoneNumberUtils#addTtsSpan} */
-  private static void addTtsSpanInternal(Spannable s, int start, int endExclusive) {
-    s.setSpan(
-        createTtsSpan(s.subSequence(start, endExclusive).toString()),
-        start,
-        endExclusive,
-        Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
-  }
-
-  /** Copied from {@link PhoneNumberUtils#createTtsSpan} */
-  private static TtsSpan createTtsSpanLollipop(String phoneNumberString) {
-    if (phoneNumberString == null) {
-      return null;
-    }
-
-    // Parse the phone number
-    final PhoneNumberUtil phoneNumberUtil = PhoneNumberUtil.getInstance();
-    PhoneNumber phoneNumber = null;
-    try {
-      // Don't supply a defaultRegion so this fails for non-international numbers because
-      // we don't want to TalkBalk to read a country code (e.g. +1) if it is not already
-      // present
-      phoneNumber = phoneNumberUtil.parse(phoneNumberString, /* defaultRegion */ null);
-    } catch (NumberParseException ignored) {
-    }
-
-    // Build a telephone tts span
-    final TtsSpan.TelephoneBuilder builder = new TtsSpan.TelephoneBuilder();
-    if (phoneNumber == null) {
-      // Strip separators otherwise TalkBack will be silent
-      // (this behavior was observed with TalkBalk 4.0.2 from their alpha channel)
-      builder.setNumberParts(splitAtNonNumerics(phoneNumberString));
-    } else {
-      if (phoneNumber.hasCountryCode()) {
-        builder.setCountryCode(Integer.toString(phoneNumber.getCountryCode()));
-      }
-      builder.setNumberParts(Long.toString(phoneNumber.getNationalNumber()));
-    }
-    return builder.build();
-  }
-
-  /**
-   * Split a phone number using spaces, ignoring anything that is not a digit
-   *
-   * @param number A {@code CharSequence} before splitting, e.g., "+20(123)-456#"
-   * @return A {@code String} after splitting, e.g., "20 123 456".
-   */
-  private static String splitAtNonNumerics(CharSequence number) {
-    StringBuilder sb = new StringBuilder(number.length());
-    for (int i = 0; i < number.length(); i++) {
-      sb.append(PhoneNumberUtils.isISODigit(number.charAt(i)) ? number.charAt(i) : " ");
-    }
-    // It is very important to remove extra spaces. At time of writing, any leading or trailing
-    // spaces, or any sequence of more than one space, will confuse TalkBack and cause the TTS
-    // span to be non-functional!
-    return sb.toString().replaceAll(" +", " ").trim();
+    return PhoneNumberUtils.createTtsSpan(phoneNumber);
   }
 }
diff --git a/java/com/android/contacts/common/compat/TelephonyManagerCompat.java b/java/com/android/contacts/common/compat/TelephonyManagerCompat.java
index 7e4803c..02113ca 100644
--- a/java/com/android/contacts/common/compat/TelephonyManagerCompat.java
+++ b/java/com/android/contacts/common/compat/TelephonyManagerCompat.java
@@ -27,7 +27,7 @@
 import android.telephony.TelephonyManager;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.telecom.TelecomUtil;
 import java.lang.reflect.InvocationTargetException;
 
 public class TelephonyManagerCompat {
@@ -40,6 +40,8 @@
   public static final String EVENT_CALL_REMOTELY_HELD = "android.telecom.event.CALL_REMOTELY_HELD";
   public static final String EVENT_CALL_REMOTELY_UNHELD =
       "android.telecom.event.CALL_REMOTELY_UNHELD";
+  public static final String EVENT_MERGE_START = "android.telecom.event.MERGE_START";
+  public static final String EVENT_MERGE_COMPLETE = "android.telecom.event.MERGE_COMPLETE";
 
   public static final String EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC =
       "android.telephony.event.EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC";
@@ -49,31 +51,6 @@
   private static final String SECRET_CODE_ACTION = "android.provider.Telephony.SECRET_CODE";
 
   /**
-   * @param telephonyManager The telephony manager instance to use for method calls.
-   * @return true if the current device is "voice capable".
-   *     <p>"Voice capable" means that this device supports circuit-switched (i.e. voice) phone
-   *     calls over the telephony network, and is allowed to display the in-call UI while a cellular
-   *     voice call is active. This will be false on "data only" devices which can't make voice
-   *     calls and don't support any in-call UI.
-   *     <p>Note: the meaning of this flag is subtly different from the
-   *     PackageManager.FEATURE_TELEPHONY system feature, which is available on any device with a
-   *     telephony radio, even if the device is data-only.
-   */
-  public static boolean isVoiceCapable(@Nullable TelephonyManager telephonyManager) {
-    if (telephonyManager == null) {
-      return false;
-    }
-    if (CompatUtils.isLollipopMr1Compatible()
-        || CompatUtils.isMethodAvailable(TELEPHONY_MANAGER_CLASS, "isVoiceCapable")) {
-      // isVoiceCapable was unhidden in L-MR1
-      return telephonyManager.isVoiceCapable();
-    }
-    final int phoneType = telephonyManager.getPhoneType();
-    return phoneType == TelephonyManager.PHONE_TYPE_CDMA
-        || phoneType == TelephonyManager.PHONE_TYPE_GSM;
-  }
-
-  /**
    * Returns the number of phones available. Returns 1 for Single standby mode (Single SIM
    * functionality) Returns 2 for Dual standby mode.(Dual SIM functionality)
    *
@@ -85,31 +62,7 @@
     if (telephonyManager == null) {
       return 1;
     }
-    if (CompatUtils.isMarshmallowCompatible()
-        || CompatUtils.isMethodAvailable(TELEPHONY_MANAGER_CLASS, "getPhoneCount")) {
-      return telephonyManager.getPhoneCount();
-    }
-    return 1;
-  }
-
-  /**
-   * Returns the unique device ID of a subscription, for example, the IMEI for GSM and the MEID for
-   * CDMA phones. Return null if device ID is not available.
-   *
-   * <p>Requires Permission: {@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE}
-   *
-   * @param telephonyManager The telephony manager instance to use for method calls.
-   * @param slotId of which deviceID is returned
-   */
-  public static String getDeviceId(@Nullable TelephonyManager telephonyManager, int slotId) {
-    if (telephonyManager == null) {
-      return null;
-    }
-    if (CompatUtils.isMarshmallowCompatible()
-        || CompatUtils.isMethodAvailable(TELEPHONY_MANAGER_CLASS, "getDeviceId", Integer.class)) {
-      return telephonyManager.getDeviceId(slotId);
-    }
-    return null;
+    return telephonyManager.getPhoneCount();
   }
 
   /**
@@ -119,14 +72,7 @@
    * @return {@code true} if the device supports TTY mode, and {@code false} otherwise.
    */
   public static boolean isTtyModeSupported(@Nullable TelephonyManager telephonyManager) {
-    if (telephonyManager == null) {
-      return false;
-    }
-    if (CompatUtils.isMarshmallowCompatible()
-        || CompatUtils.isMethodAvailable(TELEPHONY_MANAGER_CLASS, "isTtyModeSupported")) {
-      return telephonyManager.isTtyModeSupported();
-    }
-    return false;
+    return telephonyManager != null && telephonyManager.isTtyModeSupported();
   }
 
   /**
@@ -138,15 +84,7 @@
    */
   public static boolean isHearingAidCompatibilitySupported(
       @Nullable TelephonyManager telephonyManager) {
-    if (telephonyManager == null) {
-      return false;
-    }
-    if (CompatUtils.isMarshmallowCompatible()
-        || CompatUtils.isMethodAvailable(
-            TELEPHONY_MANAGER_CLASS, "isHearingAidCompatibilitySupported")) {
-      return telephonyManager.isHearingAidCompatibilitySupported();
-    }
-    return false;
+    return telephonyManager != null && telephonyManager.isHearingAidCompatibilitySupported();
   }
 
   /**
@@ -228,6 +166,12 @@
   public static void handleSecretCode(Context context, String secretCode) {
     // Must use system service on O+ to avoid using broadcasts, which are not allowed on O+.
     if (BuildCompat.isAtLeastO()) {
+      if (!TelecomUtil.isDefaultDialer(context)) {
+        LogUtil.e(
+            "TelephonyManagerCompat.handleSecretCode",
+            "not default dialer, cannot send special code");
+        return;
+      }
       context.getSystemService(TelephonyManager.class).sendDialerSpecialCode(secretCode);
     } else {
       // System service call is not supported pre-O, so must use a broadcast for N-.
diff --git a/java/com/android/contacts/common/compat/telecom/TelecomManagerCompat.java b/java/com/android/contacts/common/compat/telecom/TelecomManagerCompat.java
index 5687f6f..8393b26 100644
--- a/java/com/android/contacts/common/compat/telecom/TelecomManagerCompat.java
+++ b/java/com/android/contacts/common/compat/telecom/TelecomManagerCompat.java
@@ -15,273 +15,25 @@
  */
 package com.android.contacts.common.compat.telecom;
 
-import android.app.Activity;
-import android.content.Intent;
-import android.net.Uri;
 import android.support.annotation.Nullable;
-import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
-import android.telephony.PhoneNumberUtils;
-import android.telephony.TelephonyManager;
-import android.text.TextUtils;
-import com.android.dialer.compat.CompatUtils;
-import java.util.ArrayList;
-import java.util.List;
+import java.lang.reflect.Field;
 
 /** Compatibility class for {@link android.telecom.TelecomManager}. */
 public class TelecomManagerCompat {
 
-  public static final String TELECOM_MANAGER_CLASS = "android.telecom.TelecomManager";
-
   // TODO: remove once this is available in android.telecom.Call
   // b/33779976
   public static final String EXTRA_LAST_EMERGENCY_CALLBACK_TIME_MILLIS =
       "android.telecom.extra.LAST_EMERGENCY_CALLBACK_TIME_MILLIS";
 
-  /**
-   * Places a new outgoing call to the provided address using the system telecom service with the
-   * specified intent.
-   *
-   * @param activity {@link Activity} used to start another activity for the given intent
-   * @param telecomManager the {@link TelecomManager} used to place a call, if possible
-   * @param intent the intent for the call
-   */
-  public static void placeCall(
-      @Nullable Activity activity,
-      @Nullable TelecomManager telecomManager,
-      @Nullable Intent intent) {
-    if (activity == null || telecomManager == null || intent == null) {
-      return;
-    }
-    if (CompatUtils.isMarshmallowCompatible()) {
-      telecomManager.placeCall(intent.getData(), intent.getExtras());
-      return;
-    }
-    activity.startActivityForResult(intent, 0);
-  }
-
-  /**
-   * Get the URI for running an adn query.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @param accountHandle The handle for the account to derive an adn query URI for or {@code null}
-   *     to return a URI which will use the default account.
-   * @return The URI (with the content:// scheme) specific to the specified {@link PhoneAccount} for
-   *     the the content retrieve.
-   */
-  public static Uri getAdnUriForPhoneAccount(
-      @Nullable TelecomManager telecomManager, PhoneAccountHandle accountHandle) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(
-                TELECOM_MANAGER_CLASS, "getAdnUriForPhoneAccount", PhoneAccountHandle.class))) {
-      return telecomManager.getAdnUriForPhoneAccount(accountHandle);
-    }
-    return Uri.parse("content://icc/adn");
-  }
-
-  /**
-   * Returns a list of {@link PhoneAccountHandle}s which can be used to make and receive phone
-   * calls. The returned list includes only those accounts which have been explicitly enabled by the
-   * user.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @return A list of PhoneAccountHandle objects.
-   */
-  public static List<PhoneAccountHandle> getCallCapablePhoneAccounts(
-      @Nullable TelecomManager telecomManager) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(
-                TELECOM_MANAGER_CLASS, "getCallCapablePhoneAccounts"))) {
-      return telecomManager.getCallCapablePhoneAccounts();
-    }
-    return new ArrayList<>();
-  }
-
-  /**
-   * Used to determine the currently selected default dialer package.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @return package name for the default dialer package or null if no package has been selected as
-   *     the default dialer.
-   */
-  @Nullable
-  public static String getDefaultDialerPackage(@Nullable TelecomManager telecomManager) {
-    if (telecomManager != null && CompatUtils.isDefaultDialerCompatible()) {
-      return telecomManager.getDefaultDialerPackage();
-    }
-    return null;
-  }
-
-  /**
-   * Return the {@link PhoneAccount} which will be used to place outgoing calls to addresses with
-   * the specified {@code uriScheme}. This PhoneAccount will always be a member of the list which is
-   * returned from invoking {@link TelecomManager#getCallCapablePhoneAccounts()}. The specific
-   * account returned depends on the following priorities:
-   *
-   * <p>1. If the user-selected default PhoneAccount supports the specified scheme, it will be
-   * returned. 2. If there exists only one PhoneAccount that supports the specified scheme, it will
-   * be returned.
-   *
-   * <p>If no PhoneAccount fits the criteria above, this method will return {@code null}.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @param uriScheme The URI scheme.
-   * @return The {@link PhoneAccountHandle} corresponding to the account to be used.
-   */
-  @Nullable
-  public static PhoneAccountHandle getDefaultOutgoingPhoneAccount(
-      @Nullable TelecomManager telecomManager, @Nullable String uriScheme) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(
-                TELECOM_MANAGER_CLASS, "getDefaultOutgoingPhoneAccount", String.class))) {
-      return telecomManager.getDefaultOutgoingPhoneAccount(uriScheme);
-    }
-    return null;
-  }
-
-  /**
-   * Return the line 1 phone number for given phone account.
-   *
-   * @param telecomManager the {@link TelecomManager} to use in the event that {@link
-   *     TelecomManager#getLine1Number(PhoneAccountHandle)} is available
-   * @param telephonyManager the {@link TelephonyManager} to use if TelecomManager#getLine1Number is
-   *     unavailable
-   * @param phoneAccountHandle the phoneAccountHandle upon which to check the line one number
-   * @return the line one number
-   */
-  @Nullable
-  public static String getLine1Number(
-      @Nullable TelecomManager telecomManager,
-      @Nullable TelephonyManager telephonyManager,
-      @Nullable PhoneAccountHandle phoneAccountHandle) {
-    if (telecomManager != null && CompatUtils.isMarshmallowCompatible()) {
-      return telecomManager.getLine1Number(phoneAccountHandle);
-    }
-    if (telephonyManager != null) {
-      return telephonyManager.getLine1Number();
-    }
-    return null;
-  }
-
-  /**
-   * Return whether a given phone number is the configured voicemail number for a particular phone
-   * account.
-   *
-   * @param telecomManager the {@link TelecomManager} to use for checking the number.
-   * @param accountHandle The handle for the account to check the voicemail number against
-   * @param number The number to look up.
-   */
-  public static boolean isVoiceMailNumber(
-      @Nullable TelecomManager telecomManager,
-      @Nullable PhoneAccountHandle accountHandle,
-      @Nullable String number) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(
-                TELECOM_MANAGER_CLASS,
-                "isVoiceMailNumber",
-                PhoneAccountHandle.class,
-                String.class))) {
-      return telecomManager.isVoiceMailNumber(accountHandle, number);
-    }
-    return PhoneNumberUtils.isVoiceMailNumber(number);
-  }
-
-  /**
-   * Return the {@link PhoneAccount} for a specified {@link PhoneAccountHandle}. Object includes
-   * resources which can be used in a user interface.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @param account The {@link PhoneAccountHandle}.
-   * @return The {@link PhoneAccount} object or null if it doesn't exist.
-   */
-  @Nullable
-  public static PhoneAccount getPhoneAccount(
-      @Nullable TelecomManager telecomManager, @Nullable PhoneAccountHandle accountHandle) {
-    if (telecomManager != null
-        && (CompatUtils.isMethodAvailable(
-            TELECOM_MANAGER_CLASS, "getPhoneAccount", PhoneAccountHandle.class))) {
-      return telecomManager.getPhoneAccount(accountHandle);
-    }
-    return null;
-  }
-
-  /**
-   * Return the voicemail number for a given phone account.
-   *
-   * @param telecomManager The {@link TelecomManager} object to use for retrieving the voicemail
-   *     number if accountHandle is specified.
-   * @param telephonyManager The {@link TelephonyManager} object to use for retrieving the voicemail
-   *     number if accountHandle is null.
-   * @param accountHandle The handle for the phone account.
-   * @return The voicemail number for the phone account, and {@code null} if one has not been
-   *     configured.
-   */
-  @Nullable
-  public static String getVoiceMailNumber(
-      @Nullable TelecomManager telecomManager,
-      @Nullable TelephonyManager telephonyManager,
-      @Nullable PhoneAccountHandle accountHandle) {
-    if (telecomManager != null
-        && (CompatUtils.isMethodAvailable(
-            TELECOM_MANAGER_CLASS, "getVoiceMailNumber", PhoneAccountHandle.class))) {
-      return telecomManager.getVoiceMailNumber(accountHandle);
-    } else if (telephonyManager != null) {
-      return telephonyManager.getVoiceMailNumber();
-    }
-    return null;
-  }
-
-  /**
-   * Processes the specified dial string as an MMI code. MMI codes are any sequence of characters
-   * entered into the dialpad that contain a "*" or "#". Some of these sequences launch special
-   * behavior through handled by Telephony.
-   *
-   * @param telecomManager The {@link TelecomManager} object to use for handling MMI.
-   * @param dialString The digits to dial.
-   * @return {@code true} if the digits were processed as an MMI code, {@code false} otherwise.
-   */
-  public static boolean handleMmi(
-      @Nullable TelecomManager telecomManager,
-      @Nullable String dialString,
-      @Nullable PhoneAccountHandle accountHandle) {
-    if (telecomManager == null || TextUtils.isEmpty(dialString)) {
-      return false;
-    }
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return telecomManager.handleMmi(dialString, accountHandle);
-    }
-
-    Object handleMmiResult =
-        CompatUtils.invokeMethod(
-            telecomManager,
-            "handleMmi",
-            new Class<?>[] {PhoneAccountHandle.class, String.class},
-            new Object[] {accountHandle, dialString});
-    if (handleMmiResult != null) {
-      return (boolean) handleMmiResult;
-    }
-
-    return telecomManager.handleMmi(dialString);
-  }
-
-  /**
-   * Silences the ringer if a ringing call exists. Noop if {@link TelecomManager#silenceRinger()} is
-   * unavailable.
-   *
-   * @param telecomManager the TelecomManager to use to silence the ringer.
-   */
-  public static void silenceRinger(@Nullable TelecomManager telecomManager) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(TELECOM_MANAGER_CLASS, "silenceRinger"))) {
-      telecomManager.silenceRinger();
-    }
-  }
+  // Constants from http://cs/android/frameworks/base/telecomm/java/android/telecom/Call.java.
+  public static final String EVENT_REQUEST_HANDOVER = "android.telecom.event.REQUEST_HANDOVER";
+  public static final String EXTRA_HANDOVER_PHONE_ACCOUNT_HANDLE =
+      "android.telecom.extra.HANDOVER_PHONE_ACCOUNT_HANDLE";
+  public static final String EXTRA_HANDOVER_VIDEO_STATE =
+      "android.telecom.extra.HANDOVER_VIDEO_STATE";
 
   /**
    * Returns the current SIM call manager. Apps must be prepared for this method to return null,
@@ -292,11 +44,25 @@
    */
   @Nullable
   public static PhoneAccountHandle getSimCallManager(TelecomManager telecomManager) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(TELECOM_MANAGER_CLASS, "getSimCallManager"))) {
+    if (telecomManager != null) {
       return telecomManager.getSimCallManager();
     }
     return null;
   }
+
+  /**
+   * Handovers are supported from Android O-DR onward. Since there is no API bump from O to O-DR, we
+   * need to use reflection to check the existence of TelecomManager.EXTRA_IS_HANDOVER in
+   * http://cs/android/frameworks/base/telecomm/java/android/telecom/TelecomManager.java.
+   */
+  public static boolean supportsHandover() {
+    //
+    try {
+      Field field = TelecomManager.class.getDeclaredField("EXTRA_IS_HANDOVER");
+      return "android.telecom.extra.IS_HANDOVER".equals(field.get(null /* obj (static field) */));
+    } catch (Exception e) {
+      // Do nothing
+    }
+    return false;
+  }
 }
diff --git a/java/com/android/contacts/common/dialog/CallSubjectDialog.java b/java/com/android/contacts/common/dialog/CallSubjectDialog.java
index 0e79371..88fac02 100644
--- a/java/com/android/contacts/common/dialog/CallSubjectDialog.java
+++ b/java/com/android/contacts/common/dialog/CallSubjectDialog.java
@@ -45,7 +45,7 @@
 import android.widget.TextView;
 import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.R;
-import com.android.contacts.common.compat.telecom.TelecomManagerCompat;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.dialer.animation.AnimUtils;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
@@ -154,11 +154,7 @@
                   .setCallSubject(subject)
                   .build();
 
-          TelecomManagerCompat.placeCall(
-              CallSubjectDialog.this,
-              (TelecomManager) getSystemService(Context.TELECOM_SERVICE),
-              intent);
-
+          getSystemService(TelecomManager.class).placeCall(intent.getData(), intent.getExtras());
           mSubjectHistory.add(subject);
           saveSubjectHistory(mSubjectHistory);
           finish();
@@ -202,7 +198,7 @@
         number /* number */,
         null /* displayNumber */,
         null /* numberLabel */,
-        ContactPhotoManager.TYPE_DEFAULT,
+        LetterTileDrawable.TYPE_DEFAULT,
         null /* phoneAccountHandle */);
   }
 
@@ -356,7 +352,7 @@
     mNumber = arguments.getString(ARG_NUMBER);
     mDisplayNumber = arguments.getString(ARG_DISPLAY_NUMBER);
     mNumberLabel = arguments.getString(ARG_NUMBER_LABEL);
-    mContactType = arguments.getInt(ARG_CONTACT_TYPE, ContactPhotoManager.TYPE_DEFAULT);
+    mContactType = arguments.getInt(ARG_CONTACT_TYPE, LetterTileDrawable.TYPE_DEFAULT);
     mPhoneAccountHandle = arguments.getParcelable(ARG_PHONE_ACCOUNT_HANDLE);
   }
 
diff --git a/java/com/android/contacts/common/extensions/PhoneDirectoryExtender.java b/java/com/android/contacts/common/extensions/PhoneDirectoryExtender.java
index 2607ad1..6c932daf 100644
--- a/java/com/android/contacts/common/extensions/PhoneDirectoryExtender.java
+++ b/java/com/android/contacts/common/extensions/PhoneDirectoryExtender.java
@@ -15,14 +15,24 @@
 package com.android.contacts.common.extensions;
 
 import android.content.Context;
+import android.net.Uri;
+import android.support.annotation.Nullable;
 import com.android.contacts.common.list.DirectoryPartition;
 import java.util.List;
 
 /** An interface for adding extended phone directories. */
 public interface PhoneDirectoryExtender {
+
   /**
    * Return a list of extended directories to add. May return null if no directories are to be
    * added.
    */
   List<DirectoryPartition> getExtendedDirectories(Context context);
+
+  /** returns true if the nearby places directory is enabled. */
+  boolean isEnabled(Context context);
+
+  /** Returns the content uri for nearby places. */
+  @Nullable
+  Uri getContentUri();
 }
diff --git a/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderAccessor.java b/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderAccessor.java
index 84649f1..7978831 100644
--- a/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderAccessor.java
+++ b/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderAccessor.java
@@ -16,6 +16,7 @@
 
 import android.content.Context;
 import android.support.annotation.NonNull;
+import android.support.annotation.VisibleForTesting;
 import com.android.dialer.common.Assert;
 
 /** Accessor for the phone directory extender singleton. */
@@ -25,6 +26,11 @@
 
   private PhoneDirectoryExtenderAccessor() {}
 
+  @VisibleForTesting
+  public static void setForTesting(PhoneDirectoryExtender extender) {
+    instance = extender;
+  }
+
   @NonNull
   public static PhoneDirectoryExtender get(@NonNull Context context) {
     Assert.isNotNull(context);
diff --git a/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderStub.java b/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderStub.java
index 95f9715..4c3d3d1 100644
--- a/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderStub.java
+++ b/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderStub.java
@@ -15,6 +15,8 @@
 package com.android.contacts.common.extensions;
 
 import android.content.Context;
+import android.net.Uri;
+import android.support.annotation.Nullable;
 import com.android.contacts.common.list.DirectoryPartition;
 import java.util.Collections;
 import java.util.List;
@@ -26,4 +28,15 @@
   public List<DirectoryPartition> getExtendedDirectories(Context context) {
     return Collections.emptyList();
   }
+
+  @Override
+  public boolean isEnabled(Context context) {
+    return false;
+  }
+
+  @Nullable
+  @Override
+  public Uri getContentUri() {
+    return null;
+  }
 }
diff --git a/java/com/android/contacts/common/format/FormatUtils.java b/java/com/android/contacts/common/format/FormatUtils.java
deleted file mode 100644
index 727c15b..0000000
--- a/java/com/android/contacts/common/format/FormatUtils.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- * Copyright (C) 2011 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.contacts.common.format;
-
-import android.database.CharArrayBuffer;
-import android.graphics.Typeface;
-import android.support.annotation.VisibleForTesting;
-import android.text.SpannableString;
-import android.text.style.StyleSpan;
-import java.util.Arrays;
-
-/** Assorted utility methods related to text formatting in Contacts. */
-public class FormatUtils {
-
-  /**
-   * Finds the earliest point in buffer1 at which the first part of buffer2 matches. For example,
-   * overlapPoint("abcd", "cdef") == 2.
-   */
-  public static int overlapPoint(CharArrayBuffer buffer1, CharArrayBuffer buffer2) {
-    if (buffer1 == null || buffer2 == null) {
-      return -1;
-    }
-    return overlapPoint(
-        Arrays.copyOfRange(buffer1.data, 0, buffer1.sizeCopied),
-        Arrays.copyOfRange(buffer2.data, 0, buffer2.sizeCopied));
-  }
-
-  /**
-   * Finds the earliest point in string1 at which the first part of string2 matches. For example,
-   * overlapPoint("abcd", "cdef") == 2.
-   */
-  @VisibleForTesting
-  public static int overlapPoint(String string1, String string2) {
-    if (string1 == null || string2 == null) {
-      return -1;
-    }
-    return overlapPoint(string1.toCharArray(), string2.toCharArray());
-  }
-
-  /**
-   * Finds the earliest point in array1 at which the first part of array2 matches. For example,
-   * overlapPoint("abcd", "cdef") == 2.
-   */
-  public static int overlapPoint(char[] array1, char[] array2) {
-    if (array1 == null || array2 == null) {
-      return -1;
-    }
-    int count1 = array1.length;
-    int count2 = array2.length;
-
-    // Ignore matching tails of the two arrays.
-    while (count1 > 0 && count2 > 0 && array1[count1 - 1] == array2[count2 - 1]) {
-      count1--;
-      count2--;
-    }
-
-    int size = count2;
-    for (int i = 0; i < count1; i++) {
-      if (i + size > count1) {
-        size = count1 - i;
-      }
-      int j;
-      for (j = 0; j < size; j++) {
-        if (array1[i + j] != array2[j]) {
-          break;
-        }
-      }
-      if (j == size) {
-        return i;
-      }
-    }
-
-    return -1;
-  }
-
-  /**
-   * Applies the given style to a range of the input CharSequence.
-   *
-   * @param style The style to apply (see the style constants in {@link Typeface}).
-   * @param input The CharSequence to style.
-   * @param start Starting index of the range to style (will be clamped to be a minimum of 0).
-   * @param end Ending index of the range to style (will be clamped to a maximum of the input
-   *     length).
-   * @param flags Bitmask for configuring behavior of the span. See {@link android.text.Spanned}.
-   * @return The styled CharSequence.
-   */
-  public static CharSequence applyStyleToSpan(
-      int style, CharSequence input, int start, int end, int flags) {
-    // Enforce bounds of the char sequence.
-    start = Math.max(0, start);
-    end = Math.min(input.length(), end);
-    SpannableString text = new SpannableString(input);
-    text.setSpan(new StyleSpan(style), start, end, flags);
-    return text;
-  }
-
-  @VisibleForTesting
-  public static void copyToCharArrayBuffer(String text, CharArrayBuffer buffer) {
-    if (text != null) {
-      char[] data = buffer.data;
-      if (data == null || data.length < text.length()) {
-        buffer.data = text.toCharArray();
-      } else {
-        text.getChars(0, text.length(), data, 0);
-      }
-      buffer.sizeCopied = text.length();
-    } else {
-      buffer.sizeCopied = 0;
-    }
-  }
-
-  /** Returns a String that represents the content of the given {@link CharArrayBuffer}. */
-  @VisibleForTesting
-  public static String charArrayBufferToString(CharArrayBuffer buffer) {
-    return new String(buffer.data, 0, buffer.sizeCopied);
-  }
-
-  /**
-   * Finds the index of the first word that starts with the given prefix.
-   *
-   * <p>If not found, returns -1.
-   *
-   * @param text the text in which to search for the prefix
-   * @param prefix the text to find, in upper case letters
-   */
-  public static int indexOfWordPrefix(CharSequence text, String prefix) {
-    if (prefix == null || text == null) {
-      return -1;
-    }
-
-    int textLength = text.length();
-    int prefixLength = prefix.length();
-
-    if (prefixLength == 0 || textLength < prefixLength) {
-      return -1;
-    }
-
-    int i = 0;
-    while (i < textLength) {
-      // Skip non-word characters
-      while (i < textLength && !Character.isLetterOrDigit(text.charAt(i))) {
-        i++;
-      }
-
-      if (i + prefixLength > textLength) {
-        return -1;
-      }
-
-      // Compare the prefixes
-      int j;
-      for (j = 0; j < prefixLength; j++) {
-        if (Character.toUpperCase(text.charAt(i + j)) != prefix.charAt(j)) {
-          break;
-        }
-      }
-      if (j == prefixLength) {
-        return i;
-      }
-
-      // Skip this word
-      while (i < textLength && Character.isLetterOrDigit(text.charAt(i))) {
-        i++;
-      }
-    }
-
-    return -1;
-  }
-}
diff --git a/java/com/android/contacts/common/format/TextHighlighter.java b/java/com/android/contacts/common/format/TextHighlighter.java
index 30c03fd..f397f04 100644
--- a/java/com/android/contacts/common/format/TextHighlighter.java
+++ b/java/com/android/contacts/common/format/TextHighlighter.java
@@ -24,8 +24,6 @@
 /** Highlights the text in a text field. */
 public class TextHighlighter {
 
-  private static final boolean DEBUG = false;
-  private final String TAG = TextHighlighter.class.getSimpleName();
   private int mTextStyle;
 
   private CharacterStyle mTextStyleSpan;
@@ -81,7 +79,7 @@
     }
     final String trimmedPrefix = prefix.substring(prefixStart);
 
-    int index = FormatUtils.indexOfWordPrefix(text, trimmedPrefix);
+    int index = indexOfWordPrefix(text, trimmedPrefix);
     if (index != -1) {
       final SpannableString result = new SpannableString(text);
       result.setSpan(mTextStyleSpan, index, index + trimmedPrefix.length(), 0 /* flags */);
@@ -90,4 +88,55 @@
       return text;
     }
   }
+
+  /**
+   * Finds the index of the first word that starts with the given prefix.
+   *
+   * <p>If not found, returns -1.
+   *
+   * @param text the text in which to search for the prefix
+   * @param prefix the text to find, in upper case letters
+   */
+  public static int indexOfWordPrefix(CharSequence text, String prefix) {
+    if (prefix == null || text == null) {
+      return -1;
+    }
+
+    int textLength = text.length();
+    int prefixLength = prefix.length();
+
+    if (prefixLength == 0 || textLength < prefixLength) {
+      return -1;
+    }
+
+    int i = 0;
+    while (i < textLength) {
+      // Skip non-word characters
+      while (i < textLength && !Character.isLetterOrDigit(text.charAt(i))) {
+        i++;
+      }
+
+      if (i + prefixLength > textLength) {
+        return -1;
+      }
+
+      // Compare the prefixes
+      int j;
+      for (j = 0; j < prefixLength; j++) {
+        if (Character.toUpperCase(text.charAt(i + j)) != prefix.charAt(j)) {
+          break;
+        }
+      }
+      if (j == prefixLength) {
+        return i;
+      }
+
+      // Skip this word
+      while (i < textLength && Character.isLetterOrDigit(text.charAt(i))) {
+        i++;
+      }
+    }
+
+    return -1;
+  }
 }
diff --git a/java/com/android/contacts/common/format/testing/SpannedTestUtils.java b/java/com/android/contacts/common/format/testing/SpannedTestUtils.java
deleted file mode 100644
index 293d9d5..0000000
--- a/java/com/android/contacts/common/format/testing/SpannedTestUtils.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2011 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.contacts.common.format.testing;
-
-import android.test.suitebuilder.annotation.SmallTest;
-import android.text.Html;
-import android.text.SpannableString;
-import android.text.Spanned;
-import android.text.TextUtils;
-import android.text.style.StyleSpan;
-import android.widget.TextView;
-import junit.framework.Assert;
-
-/** Utility class to check the value of spanned text in text views. */
-@SmallTest
-public class SpannedTestUtils {
-
-  /**
-   * Checks that the text contained in the text view matches the given HTML text.
-   *
-   * @param expectedHtmlText the expected text to be in the text view
-   * @param textView the text view from which to get the text
-   */
-  public static void checkHtmlText(String expectedHtmlText, TextView textView) {
-    String actualHtmlText = Html.toHtml((Spanned) textView.getText());
-    if (TextUtils.isEmpty(expectedHtmlText)) {
-      // If the text is empty, it does not add the <p></p> bits to it.
-      Assert.assertEquals("", actualHtmlText);
-    } else {
-      Assert.assertEquals("<p dir=ltr>" + expectedHtmlText + "</p>\n", actualHtmlText);
-    }
-  }
-
-  /**
-   * Assert span exists in the correct location.
-   *
-   * @param seq The spannable string to check.
-   * @param start The starting index.
-   * @param end The ending index.
-   */
-  public static void assertPrefixSpan(CharSequence seq, int start, int end) {
-    Assert.assertTrue(seq instanceof Spanned);
-    Spanned spannable = (Spanned) seq;
-
-    if (start > 0) {
-      Assert.assertEquals(0, getNumForegroundColorSpansBetween(spannable, 0, start - 1));
-    }
-    Assert.assertEquals(1, getNumForegroundColorSpansBetween(spannable, start, end));
-    Assert.assertEquals(
-        0, getNumForegroundColorSpansBetween(spannable, end + 1, spannable.length() - 1));
-  }
-
-  private static int getNumForegroundColorSpansBetween(Spanned value, int start, int end) {
-    return value.getSpans(start, end, StyleSpan.class).length;
-  }
-
-  /**
-   * Asserts that the given character sequence is not a Spanned object and text is correct.
-   *
-   * @param seq The sequence to check.
-   * @param expected The expected text.
-   */
-  public static void assertNotSpanned(CharSequence seq, String expected) {
-    Assert.assertFalse(seq instanceof Spanned);
-    Assert.assertEquals(expected, seq);
-  }
-
-  public static int getNextTransition(SpannableString seq, int start) {
-    return seq.nextSpanTransition(start, seq.length(), StyleSpan.class);
-  }
-}
diff --git a/java/com/android/contacts/common/lettertiles/LetterTileDrawable.java b/java/com/android/contacts/common/lettertiles/LetterTileDrawable.java
index 88522c4..5c401fe 100644
--- a/java/com/android/contacts/common/lettertiles/LetterTileDrawable.java
+++ b/java/com/android/contacts/common/lettertiles/LetterTileDrawable.java
@@ -29,9 +29,12 @@
 import android.graphics.Typeface;
 import android.graphics.drawable.Drawable;
 import android.support.annotation.IntDef;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.telecom.TelecomManager;
 import android.text.TextUtils;
 import com.android.contacts.common.R;
+import com.android.contacts.common.lettertiles.LetterTileDrawable.ContactType;
 import com.android.dialer.common.Assert;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
@@ -122,10 +125,16 @@
       sLetterToTileRatio = res.getFraction(R.dimen.letter_to_tile_ratio, 1, 1);
       sDefaultPersonAvatar =
           res.getDrawable(R.drawable.product_logo_avatar_anonymous_white_color_120, null);
+      Assert.isNotNull(sDefaultPersonAvatar, "sDefaultPersonAvatar is null");
       sDefaultBusinessAvatar = res.getDrawable(R.drawable.quantum_ic_business_vd_theme_24, null);
+      Assert.isNotNull(sDefaultBusinessAvatar, "sDefaultBusinessAvatar is null");
       sDefaultVoicemailAvatar = res.getDrawable(R.drawable.quantum_ic_voicemail_vd_theme_24, null);
+      Assert.isNotNull(sDefaultVoicemailAvatar, "sDefaultVoicemailAvatar is null");
       sDefaultSpamAvatar = res.getDrawable(R.drawable.quantum_ic_report_vd_theme_24, null);
+      Assert.isNotNull(sDefaultSpamAvatar, "sDefaultSpamAvatar is null");
       sDefaultConferenceAvatar = res.getDrawable(R.drawable.quantum_ic_group_vd_theme_24, null);
+      Assert.isNotNull(sDefaultConferenceAvatar, "sDefaultConferenceAvatar is null");
+
       sPaint.setTypeface(
           Typeface.create(res.getString(R.string.letter_tile_letter_font_family), Typeface.NORMAL));
       sPaint.setTextAlign(Align.CENTER);
@@ -178,7 +187,7 @@
   }
 
   @Override
-  public void draw(final Canvas canvas) {
+  public void draw(@NonNull final Canvas canvas) {
     final Rect bounds = getBounds();
     if (!isVisible() || bounds.isEmpty()) {
       return;
@@ -233,6 +242,11 @@
     } else {
       // Draw the default image if there is no letter/digit to be drawn
       Drawable drawable = getDrawableForContactType(mContactType);
+      if (drawable == null) {
+        throw Assert.createIllegalStateFailException(
+            "Unable to find drawable for contact type " + mContactType);
+      }
+
       drawable.setBounds(getScaledBounds(mScale, mOffset));
       drawable.setAlpha(drawable == sDefaultSpamAvatar ? SPAM_ALPHA : ALPHA);
       drawable.draw(canvas);
@@ -406,4 +420,30 @@
     }
     return this;
   }
+
+  /**
+   * Returns the appropriate LetterTileDrawable.TYPE_ based on the given primitive conditions.
+   *
+   * <p>If no special state is detected, yields TYPE_DEFAULT
+   */
+  public static @ContactType int getContactTypeFromPrimitives(
+      boolean isVoicemailNumber,
+      boolean isSpam,
+      boolean isBusiness,
+      int numberPresentation,
+      boolean isConference) {
+    if (isVoicemailNumber) {
+      return LetterTileDrawable.TYPE_VOICEMAIL;
+    } else if (isSpam) {
+      return LetterTileDrawable.TYPE_SPAM;
+    } else if (isBusiness) {
+      return LetterTileDrawable.TYPE_BUSINESS;
+    } else if (numberPresentation == TelecomManager.PRESENTATION_RESTRICTED) {
+      return LetterTileDrawable.TYPE_GENERIC_AVATAR;
+    } else if (isConference) {
+      return LetterTileDrawable.TYPE_CONFERENCE;
+    } else {
+      return LetterTileDrawable.TYPE_DEFAULT;
+    }
+  }
 }
diff --git a/java/com/android/contacts/common/list/ContactEntryListAdapter.java b/java/com/android/contacts/common/list/ContactEntryListAdapter.java
index 18bbae3..7335297 100644
--- a/java/com/android/contacts/common/list/ContactEntryListAdapter.java
+++ b/java/com/android/contacts/common/list/ContactEntryListAdapter.java
@@ -26,7 +26,6 @@
 import android.provider.ContactsContract.Contacts;
 import android.provider.ContactsContract.Directory;
 import android.text.TextUtils;
-import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -39,7 +38,11 @@
 import com.android.contacts.common.R;
 import com.android.contacts.common.compat.DirectoryCompat;
 import com.android.contacts.common.util.SearchUtil;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 import java.util.HashSet;
 
 /**
@@ -53,7 +56,6 @@
    */
   public static final boolean LOCAL_INVISIBLE_DIRECTORY_ENABLED = false;
 
-  private static final String TAG = "ContactEntryListAdapter";
   private int mDisplayOrder;
   private int mSortOrder;
 
@@ -80,6 +82,8 @@
   private ContactListFilter mFilter;
   private boolean mDarkTheme = false;
 
+  public static final int SUGGESTIONS_LOADER_ID = 0;
+
   /** Resource used to provide header-text for default filter. */
   private CharSequence mDefaultFilterHeaderText;
 
@@ -128,9 +132,22 @@
   }
 
   protected void addPartitions() {
+    if (ConfigProviderBindings.get(getContext()).getBoolean("p13n_ranker_should_enable", false)) {
+      addPartition(createSuggestionsDirectoryPartition());
+    }
     addPartition(createDefaultDirectoryPartition());
   }
 
+  protected DirectoryPartition createSuggestionsDirectoryPartition() {
+    DirectoryPartition partition = new DirectoryPartition(true, true);
+    partition.setDirectoryId(SUGGESTIONS_LOADER_ID);
+    partition.setDirectoryType(getContext().getString(R.string.contact_suggestions));
+    partition.setPriorityDirectory(true);
+    partition.setPhotoSupported(true);
+    partition.setLabel(getContext().getString(R.string.local_suggestions_search_label));
+    return partition;
+  }
+
   protected DirectoryPartition createDefaultDirectoryPartition() {
     DirectoryPartition partition = new DirectoryPartition(true, true);
     partition.setDirectoryId(Directory.DEFAULT);
@@ -243,6 +260,11 @@
     } else {
       mUpperCaseQueryString = SearchUtil.cleanStartAndEndOfSearchQuery(queryString.toUpperCase());
     }
+
+    // Enable default partition header if in search mode (including zero-suggest).
+    if (mQueryString != null) {
+      setDefaultPartitionHeader(true);
+    }
   }
 
   public String getUpperCaseQueryString() {
@@ -354,9 +376,9 @@
     if (cursor.getCount() == 0) {
       // Directory table must have at least local directory, without which this adapter will
       // enter very weird state.
-      Log.e(
-          TAG,
-          "Directory search loader returned an empty cursor, which implies we have "
+      LogUtil.i(
+          "ContactEntryListAdapter.changeDirectories",
+          "directory search loader returned an empty cursor, which implies we have "
               + "no directory entries.",
           new RuntimeException());
       return;
@@ -529,22 +551,27 @@
     return false;
   }
 
-  /** Changes visibility parameters for the default directory partition. */
-  public void configureDefaultPartition(boolean showIfEmpty, boolean hasHeader) {
+  /** Configures visibility parameters for the directory partitions. */
+  public void configurePartitionsVisibility(boolean isInSearchMode) {
+    for (int i = 0; i < getPartitionCount(); i++) {
+      setShowIfEmpty(i, false);
+      setHasHeader(i, isInSearchMode);
+    }
+  }
+
+  // Sets header for the default partition.
+  private void setDefaultPartitionHeader(boolean setHeader) {
+    // Iterate in reverse here to ensure the first DEFAULT directory has header.
+    // Both "Suggestions" and "All Contacts" directories have DEFAULT id.
     int defaultPartitionIndex = -1;
-    int count = getPartitionCount();
-    for (int i = 0; i < count; i++) {
+    for (int i = getPartitionCount() - 1; i >= 0; i--) {
       Partition partition = getPartition(i);
       if (partition instanceof DirectoryPartition
           && ((DirectoryPartition) partition).getDirectoryId() == Directory.DEFAULT) {
         defaultPartitionIndex = i;
-        break;
       }
     }
-    if (defaultPartitionIndex != -1) {
-      setShowIfEmpty(defaultPartitionIndex, showIfEmpty);
-      setHasHeader(defaultPartitionIndex, hasHeader);
-    }
+    setHasHeader(defaultPartitionIndex, setHeader);
   }
 
   @Override
@@ -678,6 +705,9 @@
       // mimetype here is reasonable.
       quickContact.setPrioritizedMimeType(Phone.CONTENT_ITEM_TYPE);
     }
+    Logger.get(mContext)
+        .logQuickContactOnTouch(
+            quickContact, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_SEARCH, true);
 
     if (photoId != 0 || photoUriColumn == -1) {
       getPhotoLoader().loadThumbnail(quickContact, photoId, mDarkTheme, mCircularPhotos, null);
diff --git a/java/com/android/contacts/common/list/ContactEntryListFragment.java b/java/com/android/contacts/common/list/ContactEntryListFragment.java
index 278175c..04658be 100644
--- a/java/com/android/contacts/common/list/ContactEntryListFragment.java
+++ b/java/com/android/contacts/common/list/ContactEntryListFragment.java
@@ -47,6 +47,7 @@
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.ContactListViewUtils;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.performancereport.PerformanceReport;
 import java.lang.ref.WeakReference;
 import java.util.Locale;
 
@@ -440,6 +441,11 @@
       return;
     }
 
+    // Return for non-"Suggestions" if on the zero-suggest screen.
+    if (TextUtils.isEmpty(mQueryString) && partitionIndex > 0) {
+      return;
+    }
+
     mAdapter.changeCursor(partitionIndex, data);
     setProfileHeader();
 
@@ -555,7 +561,6 @@
   protected void setSearchMode(boolean flag) {
     if (mSearchMode != flag) {
       mSearchMode = flag;
-      setSectionHeaderDisplayEnabled(!mSearchMode);
 
       if (!flag) {
         mDirectoryListStatus = STATUS_NOT_LOADED;
@@ -572,7 +577,7 @@
           // should be cleaned up on exiting the search mode.
           mAdapter.removeDirectoriesAfterDefault();
         }
-        mAdapter.configureDefaultPartition(false, flag);
+        mAdapter.configurePartitionsVisibility(flag);
       }
 
       if (mListView != null) {
@@ -676,22 +681,16 @@
 
     boolean searchMode = isSearchMode();
     mAdapter.setSearchMode(searchMode);
-    mAdapter.configureDefaultPartition(false, searchMode);
+    mAdapter.configurePartitionsVisibility(searchMode);
     mAdapter.setPhotoLoader(mPhotoManager);
     mListView.setAdapter(mAdapter);
-
-    if (!isSearchMode()) {
-      mListView.setFocusableInTouchMode(true);
-      mListView.requestFocus();
-    }
-
     return mView;
   }
 
   protected void onCreateView(LayoutInflater inflater, ViewGroup container) {
     mView = inflateView(inflater, container);
 
-    mListView = (ListView) mView.findViewById(android.R.id.list);
+    mListView = mView.findViewById(android.R.id.list);
     if (mListView == null) {
       throw new RuntimeException(
           "Your content must have a ListView whose id attribute is " + "'android.R.id.list'");
@@ -770,6 +769,7 @@
 
   @Override
   public void onScrollStateChanged(AbsListView view, int scrollState) {
+    PerformanceReport.recordScrollStateChange(scrollState);
     if (scrollState == OnScrollListener.SCROLL_STATE_FLING) {
       mPhotoManager.pause();
     } else if (isPhotoLoaderEnabled()) {
diff --git a/java/com/android/contacts/common/list/ContactListItemView.java b/java/com/android/contacts/common/list/ContactListItemView.java
index 7a31947..c605f4e 100644
--- a/java/com/android/contacts/common/list/ContactListItemView.java
+++ b/java/com/android/contacts/common/list/ContactListItemView.java
@@ -30,8 +30,8 @@
 import android.provider.ContactsContract.Contacts;
 import android.provider.ContactsContract.SearchSnippets;
 import android.support.annotation.IntDef;
+import android.support.annotation.NonNull;
 import android.support.v4.content.ContextCompat;
-import android.support.v4.graphics.drawable.DrawableCompat;
 import android.text.Spannable;
 import android.text.SpannableString;
 import android.text.TextUtils;
@@ -55,7 +55,7 @@
 import com.android.contacts.common.list.PhoneNumberListAdapter.Listener;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.contacts.common.util.SearchUtil;
-import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.util.ViewUtil;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
@@ -81,13 +81,15 @@
 
   /** IntDef for indices of ViewPager tabs. */
   @Retention(RetentionPolicy.SOURCE)
-  @IntDef({NONE, VIDEO, CALL_AND_SHARE})
+  @IntDef({NONE, VIDEO, LIGHTBRINGER, CALL_AND_SHARE})
   public @interface CallToAction {}
 
   public static final int NONE = 0;
   public static final int VIDEO = 1;
-  public static final int CALL_AND_SHARE = 2;
+  public static final int LIGHTBRINGER = 2;
+  public static final int CALL_AND_SHARE = 3;
 
+  private final PhotoPosition mPhotoPosition = getDefaultPhotoPosition();
   private static final Pattern SPLIT_PATTERN =
       Pattern.compile("([\\w-\\.]+)@((?:[\\w]+\\.)+)([a-zA-Z]{2,4})|[\\w]+");
   static final char SNIPPET_START_MATCH = '[';
@@ -106,7 +108,7 @@
   private int mNameTextViewTextSize;
   private int mHeaderWidth;
   private Drawable mActivatedBackgroundDrawable;
-  private int mCallToActionSize = 32;
+  private int mCallToActionSize = 48;
   private int mCallToActionMargin = 16;
   // Set in onLayout. Represent left and right position of the View on the screen.
   private int mLeftOffset;
@@ -122,10 +124,7 @@
   private String mHighlightedPrefix;
   /** Indicates whether the view should leave room for the "video call" icon. */
   private boolean mSupportVideoCall;
-  /** Indicates whether the view should leave room for the "call and share" icon. */
-  private boolean mSupportCallAndShare;
 
-  private PhotoPosition mPhotoPosition = getDefaultPhotoPosition(false /* normal/non opposite */);
   // Header layout data
   private TextView mHeaderTextView;
   private boolean mIsSectionHeaderEnabled;
@@ -139,7 +138,7 @@
   private TextView mSnippetView;
   private TextView mStatusView;
   private ImageView mPresenceIcon;
-  private ImageView mCallToAction;
+  @NonNull private final ImageView mCallToActionView;
   private ImageView mWorkProfileIcon;
   private ColorStateList mSecondaryTextColor;
   private int mDefaultPhotoViewSize = 0;
@@ -181,23 +180,14 @@
   private Rect mBoundsWithoutHeader = new Rect();
   private CharSequence mUnknownNameText;
 
-  public ContactListItemView(Context context) {
-    super(context);
+  private String mPhoneNumber;
+  private int mPosition = -1;
+  private @CallToAction int mCallToAction = NONE;
 
-    mTextHighlighter = new TextHighlighter(Typeface.BOLD);
-    mNameHighlightSequence = new ArrayList<>();
-    mNumberHighlightSequence = new ArrayList<>();
-  }
-
-  public ContactListItemView(
-      Context context,
-      AttributeSet attrs,
-      boolean supportVideoCallIcon,
-      boolean supportCallAndShare) {
+  public ContactListItemView(Context context, AttributeSet attrs, boolean supportVideoCallIcon) {
     this(context, attrs);
 
     mSupportVideoCall = supportVideoCallIcon;
-    mSupportCallAndShare = supportCallAndShare;
   }
 
   public ContactListItemView(Context context, AttributeSet attrs) {
@@ -284,19 +274,20 @@
     mNameHighlightSequence = new ArrayList<>();
     mNumberHighlightSequence = new ArrayList<>();
 
+    mCallToActionView = new ImageView(getContext());
+    mCallToActionView.setId(R.id.call_to_action);
+    mCallToActionView.setLayoutParams(new LayoutParams(mCallToActionSize, mCallToActionSize));
+    mCallToActionView.setScaleType(ScaleType.CENTER);
+    mCallToActionView.setImageTintList(
+        ContextCompat.getColorStateList(getContext(), R.color.search_video_call_icon_tint));
+    addView(mCallToActionView);
+
     setLayoutDirection(View.LAYOUT_DIRECTION_LOCALE);
   }
 
-  public static PhotoPosition getDefaultPhotoPosition(boolean opposite) {
-    final Locale locale = Locale.getDefault();
-    final int layoutDirection = TextUtils.getLayoutDirectionFromLocale(locale);
-    switch (layoutDirection) {
-      case View.LAYOUT_DIRECTION_RTL:
-        return (opposite ? PhotoPosition.LEFT : PhotoPosition.RIGHT);
-      case View.LAYOUT_DIRECTION_LTR:
-      default:
-        return (opposite ? PhotoPosition.RIGHT : PhotoPosition.LEFT);
-    }
+  public static PhotoPosition getDefaultPhotoPosition() {
+    int layoutDirection = TextUtils.getLayoutDirectionFromLocale(Locale.getDefault());
+    return layoutDirection == View.LAYOUT_DIRECTION_RTL ? PhotoPosition.RIGHT : PhotoPosition.LEFT;
   }
 
   /**
@@ -333,35 +324,48 @@
    * @param position The position in the adapter of the call to action.
    */
   public void setCallToAction(@CallToAction int action, Listener listener, int position) {
-    int drawable;
+    mCallToAction = action;
+    mPosition = position;
+
+    Drawable drawable;
     int description;
     OnClickListener onClickListener;
-    if (action == CALL_AND_SHARE && mSupportCallAndShare) {
-      drawable = R.drawable.ic_call_and_share;
-      description = R.string.description_search_video_call;
+    if (action == CALL_AND_SHARE) {
+      drawable = ContextCompat.getDrawable(getContext(), R.drawable.ic_phone_attach);
+      drawable.setAutoMirrored(true);
+      description = R.string.description_search_call_and_share;
       onClickListener = v -> listener.onCallAndShareIconClicked(position);
     } else if (action == VIDEO && mSupportVideoCall) {
-      drawable = R.drawable.ic_search_video_call;
-      description = R.string.description_search_call_and_share;
+      drawable =
+          ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_videocam_vd_theme_24);
+      drawable.setAutoMirrored(true);
+      description = R.string.description_search_video_call;
       onClickListener = v -> listener.onVideoCallIconClicked(position);
+    } else if (action == LIGHTBRINGER) {
+      CallIntentBuilder.increaseLightbringerCallButtonAppearInSearchCount();
+      drawable =
+          ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_videocam_vd_theme_24);
+      drawable.setAutoMirrored(true);
+      description = R.string.description_search_video_call;
+      onClickListener = v -> listener.onLightbringerIconClicked(position);
     } else {
-      if (mCallToAction != null) {
-        mCallToAction.setVisibility(View.GONE);
-        mCallToAction.setOnClickListener(null);
-      }
+      mCallToActionView.setVisibility(View.GONE);
+      mCallToActionView.setOnClickListener(null);
       return;
     }
 
-    if (mCallToAction == null) {
-      mCallToAction = new ImageView(getContext());
-      mCallToAction.setLayoutParams(new LayoutParams(mCallToActionSize, mCallToActionSize));
-      mCallToAction.setScaleType(ScaleType.CENTER);
-      addView(mCallToAction);
-    }
-    mCallToAction.setContentDescription(getContext().getString(description));
-    mCallToAction.setOnClickListener(onClickListener);
-    mCallToAction.setImageResource(drawable);
-    mCallToAction.setVisibility(View.VISIBLE);
+    mCallToActionView.setContentDescription(getContext().getString(description));
+    mCallToActionView.setOnClickListener(onClickListener);
+    mCallToActionView.setImageDrawable(drawable);
+    mCallToActionView.setVisibility(View.VISIBLE);
+  }
+
+  public @CallToAction int getCallToAction() {
+    return mCallToAction;
+  }
+
+  public int getPosition() {
+    return mPosition;
   }
 
   /**
@@ -376,18 +380,6 @@
     mSupportVideoCall = supportVideoCall;
   }
 
-  /**
-   * Sets whether the view supports a call and share icon. This is independent of whether the view
-   * is actually showing an icon. Support for the icon ensures that the layout leaves space for it,
-   * should it be shown.
-   *
-   * @param supportCallAndShare {@code true} if the call and share icon is supported, {@code false}
-   *     otherwise.
-   */
-  public void setSupportCallAndShareIcon(boolean supportCallAndShare) {
-    mSupportCallAndShare = supportCallAndShare;
-  }
-
   @Override
   protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
     // We will match parent's width and wrap content vertically, but make sure
@@ -423,9 +415,7 @@
       effectiveWidth -= mHeaderWidth + mGapBetweenImageAndText;
     }
 
-    if (mSupportVideoCall || mSupportCallAndShare) {
-      effectiveWidth -= (mCallToActionSize + mCallToActionMargin);
-    }
+    effectiveWidth -= (mCallToActionSize + mCallToActionMargin);
 
     // Go over all visible text views and measure actual width of each of them.
     // Also calculate their heights to get the total height for this entire view.
@@ -496,11 +486,9 @@
       mStatusTextViewHeight = mPresenceIcon.getMeasuredHeight();
     }
 
-    if ((mSupportVideoCall || mSupportCallAndShare) && isVisible(mCallToAction)) {
-      mCallToAction.measure(
-          MeasureSpec.makeMeasureSpec(mCallToActionSize, MeasureSpec.EXACTLY),
-          MeasureSpec.makeMeasureSpec(mCallToActionSize, MeasureSpec.EXACTLY));
-    }
+    mCallToActionView.measure(
+        MeasureSpec.makeMeasureSpec(mCallToActionSize, MeasureSpec.EXACTLY),
+        MeasureSpec.makeMeasureSpec(mCallToActionSize, MeasureSpec.EXACTLY));
 
     if (isVisible(mWorkProfileIcon)) {
       mWorkProfileIcon.measure(
@@ -629,34 +617,30 @@
       leftBound += mTextIndent;
     }
 
-    if (mSupportVideoCall || mSupportCallAndShare) {
-      // Place the call to action at the end of the list (e.g. take into account RTL mode).
-      if (isVisible(mCallToAction)) {
-        // Center the icon vertically
-        final int callToActionTop = topBound + (height - topBound - mCallToActionSize) / 2;
+    // Place the call to action at the end of the list (e.g. take into account RTL mode).
+    // Center the icon vertically
+    final int callToActionTop = topBound + (height - topBound - mCallToActionSize) / 2;
 
-        if (!isLayoutRtl) {
-          // When photo is on left, icon is placed on the right edge.
-          mCallToAction.layout(
-              rightBound - mCallToActionSize,
-              callToActionTop,
-              rightBound,
-              callToActionTop + mCallToActionSize);
-        } else {
-          // When photo is on right, icon is placed on the left edge.
-          mCallToAction.layout(
-              leftBound,
-              callToActionTop,
-              leftBound + mCallToActionSize,
-              callToActionTop + mCallToActionSize);
-        }
-      }
+    if (!isLayoutRtl) {
+      // When photo is on left, icon is placed on the right edge.
+      mCallToActionView.layout(
+          rightBound - mCallToActionSize,
+          callToActionTop,
+          rightBound,
+          callToActionTop + mCallToActionSize);
+    } else {
+      // When photo is on right, icon is placed on the left edge.
+      mCallToActionView.layout(
+          leftBound,
+          callToActionTop,
+          leftBound + mCallToActionSize,
+          callToActionTop + mCallToActionSize);
+    }
 
-      if (mPhotoPosition == PhotoPosition.LEFT) {
-        rightBound -= (mCallToActionSize + mCallToActionMargin);
-      } else {
-        leftBound += mCallToActionSize + mCallToActionMargin;
-      }
+    if (mPhotoPosition == PhotoPosition.LEFT) {
+      rightBound -= (mCallToActionSize + mCallToActionMargin);
+    } else {
+      leftBound += mCallToActionSize + mCallToActionMargin;
     }
 
     // Center text vertically, then apply the top offset.
@@ -901,9 +885,7 @@
     }
     if (mQuickContact == null) {
       mQuickContact = new QuickContactBadge(getContext());
-      if (CompatUtils.isLollipopCompatible()) {
-        mQuickContact.setOverlay(null);
-      }
+      mQuickContact.setOverlay(null);
       mQuickContact.setLayoutParams(getDefaultPhotoLayoutParams());
       if (mNameTextView != null) {
         mQuickContact.setContentDescription(
@@ -1008,9 +990,7 @@
       mNameTextView.setGravity(Gravity.CENTER_VERTICAL);
       mNameTextView.setTextAlignment(View.TEXT_ALIGNMENT_VIEW_START);
       mNameTextView.setId(R.id.cliv_name_textview);
-      if (CompatUtils.isLollipopCompatible()) {
-        mNameTextView.setElegantTextHeight(false);
-      }
+      mNameTextView.setElegantTextHeight(false);
       addView(mNameTextView);
     }
     return mNameTextView;
@@ -1056,6 +1036,7 @@
    * exists.
    */
   public void setPhoneNumber(String text) {
+    mPhoneNumber = text;
     if (text == null) {
       if (mDataView != null) {
         mDataView.setVisibility(View.GONE);
@@ -1086,6 +1067,10 @@
     }
   }
 
+  public String getPhoneNumber() {
+    return mPhoneNumber;
+  }
+
   private void setMarqueeText(TextView textView, CharSequence text) {
     if (getTextEllipsis() == TruncateAt.MARQUEE) {
       // To show MARQUEE correctly (with END effect during non-active state), we need
@@ -1109,9 +1094,7 @@
       mDataView.setTextAlignment(View.TEXT_ALIGNMENT_VIEW_START);
       mDataView.setActivated(isActivated());
       mDataView.setId(R.id.cliv_data_view);
-      if (CompatUtils.isLollipopCompatible()) {
-        mDataView.setElegantTextHeight(false);
-      }
+      mDataView.setElegantTextHeight(false);
       addView(mDataView);
     }
     return mDataView;
@@ -1469,28 +1452,17 @@
     forceLayout();
   }
 
-  public void setPhotoPosition(PhotoPosition photoPosition) {
-    mPhotoPosition = photoPosition;
-  }
-
   /**
    * Set drawable resources directly for the drawable resource of the photo view.
    *
-   * @param drawableId Id of drawable resource.
+   * @param drawable A drawable resource.
    */
-  public void setDrawableResource(int drawableId) {
+  public void setDrawable(Drawable drawable) {
     ImageView photo = getPhotoView();
     photo.setScaleType(ImageView.ScaleType.CENTER);
-    final Drawable drawable = ContextCompat.getDrawable(getContext(), drawableId);
-    final int iconColor = ContextCompat.getColor(getContext(), R.color.search_shortcut_icon_color);
-    if (CompatUtils.isLollipopCompatible()) {
-      photo.setImageDrawable(drawable);
-      photo.setImageTintList(ColorStateList.valueOf(iconColor));
-    } else {
-      final Drawable drawableWrapper = DrawableCompat.wrap(drawable).mutate();
-      DrawableCompat.setTint(drawableWrapper, iconColor);
-      photo.setImageDrawable(drawableWrapper);
-    }
+    int iconColor = ContextCompat.getColor(getContext(), R.color.search_shortcut_icon_color);
+    photo.setImageDrawable(drawable);
+    photo.setImageTintList(ColorStateList.valueOf(iconColor));
   }
 
   @Override
diff --git a/java/com/android/contacts/common/list/ContactTileView.java b/java/com/android/contacts/common/list/ContactTileView.java
index 9273b05..15582d6 100644
--- a/java/com/android/contacts/common/list/ContactTileView.java
+++ b/java/com/android/contacts/common/list/ContactTileView.java
@@ -19,7 +19,6 @@
 import android.graphics.Rect;
 import android.net.Uri;
 import android.util.AttributeSet;
-import android.util.Log;
 import android.view.View;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
@@ -28,6 +27,9 @@
 import com.android.contacts.common.ContactPhotoManager.DefaultImageRequest;
 import com.android.contacts.common.MoreContactUtils;
 import com.android.contacts.common.R;
+import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.callintent.CallSpecificAppData;
+import com.android.dialer.common.LogUtil;
 
 /** A ContactTile displays a contact's picture and name */
 public abstract class ContactTileView extends FrameLayout {
@@ -60,8 +62,14 @@
         if (mListener == null) {
           return;
         }
+        CallSpecificAppData callSpecificAppData =
+            CallSpecificAppData.newBuilder()
+                .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL)
+                .build();
         mListener.onContactSelected(
-            getLookupUri(), MoreContactUtils.getTargetRectFromView(ContactTileView.this));
+            getLookupUri(),
+            MoreContactUtils.getTargetRectFromView(ContactTileView.this),
+            callSpecificAppData);
       }
     };
   }
@@ -97,7 +105,7 @@
 
         }
       } else {
-        Log.w(TAG, "contactPhotoManager not set");
+        LogUtil.w(TAG, "contactPhotoManager not set");
       }
     } else {
       setVisibility(View.INVISIBLE);
@@ -163,9 +171,10 @@
   public interface Listener {
 
     /** Notification that the contact was selected; no specific action is dictated. */
-    void onContactSelected(Uri contactLookupUri, Rect viewRect);
+    void onContactSelected(
+        Uri contactLookupUri, Rect viewRect, CallSpecificAppData callSpecificAppData);
 
     /** Notification that the specified number is to be called. */
-    void onCallNumberDirectly(String phoneNumber);
+    void onCallNumberDirectly(String phoneNumber, CallSpecificAppData callSpecificAppData);
   }
 }
diff --git a/java/com/android/contacts/common/list/PhoneNumberListAdapter.java b/java/com/android/contacts/common/list/PhoneNumberListAdapter.java
index 9a490d7..d1118c3 100644
--- a/java/com/android/contacts/common/list/PhoneNumberListAdapter.java
+++ b/java/com/android/contacts/common/list/PhoneNumberListAdapter.java
@@ -30,7 +30,6 @@
 import android.text.TextUtils;
 import android.view.View;
 import android.view.ViewGroup;
-import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.ContactPhotoManager.DefaultImageRequest;
 import com.android.contacts.common.ContactsUtils;
 import com.android.contacts.common.R;
@@ -38,15 +37,17 @@
 import com.android.contacts.common.compat.DirectoryCompat;
 import com.android.contacts.common.compat.PhoneCompat;
 import com.android.contacts.common.extensions.PhoneDirectoryExtenderAccessor;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.contacts.common.list.ContactListItemView.CallToAction;
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.Constants;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.enrichedcall.EnrichedCallCapabilities;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
+import com.android.dialer.lightbringer.LightbringerComponent;
 import com.android.dialer.location.GeoUtil;
 import com.android.dialer.util.CallUtil;
 import java.util.ArrayList;
@@ -68,16 +69,14 @@
   // A list of extended directories to add to the directories from the database
   private final List<DirectoryPartition> mExtendedDirectories;
   private final CharSequence mUnknownNameText;
-  private final boolean mCallAndShareEnabled;
+  protected final boolean mIsImsVideoEnabled;
+
   // Extended directories will have ID's that are higher than any of the id's from the database,
   // so that we can identify them and set them up properly. If no extended directories
   // exist, this will be Long.MAX_VALUE
   private long mFirstExtendedDirectoryId = Long.MAX_VALUE;
-  private ContactListItemView.PhotoPosition mPhotoPosition;
   private boolean mUseCallableUri;
   private Listener mListener;
-  private boolean mIsVideoEnabled;
-  private boolean mIsPresenceEnabled;
 
   public PhoneNumberListAdapter(Context context) {
     super(context);
@@ -88,11 +87,9 @@
         PhoneDirectoryExtenderAccessor.get(mContext).getExtendedDirectories(mContext);
 
     int videoCapabilities = CallUtil.getVideoCallingAvailability(context);
-    mIsVideoEnabled = (videoCapabilities & CallUtil.VIDEO_CALLING_ENABLED) != 0;
-    mIsPresenceEnabled = (videoCapabilities & CallUtil.VIDEO_CALLING_PRESENCE) != 0;
-
-    // TODO
-    mCallAndShareEnabled = true;
+    mIsImsVideoEnabled =
+        CallUtil.isVideoEnabled(context)
+            && (videoCapabilities & CallUtil.VIDEO_CALLING_PRESENCE) != 0;
   }
 
   @Override
@@ -249,10 +246,10 @@
     return item != null ? item.getString(PhoneQuery.LOOKUP_KEY) : null;
   }
 
-  public CallComposerContact getCallComposerContact(int position) {
+  public DialerContact getDialerContact(int position) {
     Cursor cursor = (Cursor) getItem(position);
     if (cursor == null) {
-      LogUtil.e("PhoneNumberListAdapter.getCallComposerContact", "cursor was null.");
+      LogUtil.e("PhoneNumberListAdapter.getDialerContact", "cursor was null.");
       return null;
     }
 
@@ -263,11 +260,11 @@
         Contacts.getLookupUri(
             cursor.getLong(PhoneQuery.CONTACT_ID), cursor.getString(PhoneQuery.LOOKUP_KEY));
 
-    CallComposerContact.Builder contact = CallComposerContact.newBuilder();
+    DialerContact.Builder contact = DialerContact.newBuilder();
     contact
         .setNumber(number)
         .setPhotoId(cursor.getLong(PhoneQuery.PHOTO_ID))
-        .setContactType(ContactPhotoManager.TYPE_DEFAULT)
+        .setContactType(LetterTileDrawable.TYPE_DEFAULT)
         .setNameOrNumber(displayName)
         .setNumberLabel(
             Phone.getTypeLabel(
@@ -297,7 +294,6 @@
     ContactListItemView view = super.newView(context, partition, cursor, position, parent);
     view.setUnknownNameText(mUnknownNameText);
     view.setQuickContactEnabled(isQuickContactEnabled());
-    view.setPhotoPosition(mPhotoPosition);
     return view;
   }
 
@@ -355,14 +351,8 @@
     }
 
     final DirectoryPartition directory = (DirectoryPartition) getPartition(partition);
-
-    // If the first partition does not have a header, then all subsequent partitions'
-    // getPositionForPartition returns an index off by 1.
-    int partitionOffset = 0;
-    if (partition > 0 && !getPartition(0).getHasHeader()) {
-      partitionOffset = 1;
-    }
-    position += getPositionForPartition(partition) + partitionOffset;
+    // All sections have headers, so scroll position is off by 1.
+    position += getPositionForPartition(partition) + 1;
 
     bindPhoneNumber(view, cursor, directory.isDisplayNumber(), position);
   }
@@ -401,13 +391,17 @@
       int carrierPresence = cursor.getInt(PhoneQuery.CARRIER_PRESENCE);
       boolean isPresent = (carrierPresence & Phone.CARRIER_PRESENCE_VT_CAPABLE) != 0;
 
-      boolean isVideoIconShown = mIsVideoEnabled && (!mIsPresenceEnabled || isPresent);
-      if (isVideoIconShown) {
+      boolean showViewIcon = mIsImsVideoEnabled && isPresent;
+      if (showViewIcon) {
         action = ContactListItemView.VIDEO;
       }
     }
 
-    if (isCallAndShareEnabled() && action == ContactListItemView.NONE && number != null) {
+    if (LightbringerComponent.get(mContext).getLightbringer().isReachable(mContext, number)) {
+      action = ContactListItemView.LIGHTBRINGER;
+    }
+
+    if (action == ContactListItemView.NONE) {
       EnrichedCallManager manager = EnrichedCallComponent.get(mContext).getEnrichedCallManager();
       EnrichedCallCapabilities capabilities = manager.getCapabilities(number);
       if (capabilities != null && capabilities.supportsCallComposer()) {
@@ -481,14 +475,6 @@
     }
   }
 
-  public ContactListItemView.PhotoPosition getPhotoPosition() {
-    return mPhotoPosition;
-  }
-
-  public void setPhotoPosition(ContactListItemView.PhotoPosition photoPosition) {
-    mPhotoPosition = photoPosition;
-  }
-
   public void setUseCallableUri(boolean useCallableUri) {
     mUseCallableUri = useCallableUri;
   }
@@ -570,14 +556,12 @@
     mListener = listener;
   }
 
-  public boolean isCallAndShareEnabled() {
-    return mCallAndShareEnabled;
-  }
-
   public interface Listener {
 
     void onVideoCallIconClicked(int position);
 
+    void onLightbringerIconClicked(int position);
+
     void onCallAndShareIconClicked(int position);
   }
 
@@ -642,18 +626,14 @@
     static {
       final List<String> projectionList =
           new ArrayList<>(Arrays.asList(PROJECTION_PRIMARY_INTERNAL));
-      if (CompatUtils.isMarshmallowCompatible()) {
-        projectionList.add(Phone.CARRIER_PRESENCE); // 9
-      }
+      projectionList.add(Phone.CARRIER_PRESENCE); // 9
       PROJECTION_PRIMARY = projectionList.toArray(new String[projectionList.size()]);
     }
 
     static {
       final List<String> projectionList =
           new ArrayList<>(Arrays.asList(PROJECTION_ALTERNATIVE_INTERNAL));
-      if (CompatUtils.isMarshmallowCompatible()) {
-        projectionList.add(Phone.CARRIER_PRESENCE); // 9
-      }
+      projectionList.add(Phone.CARRIER_PRESENCE); // 9
       PROJECTION_ALTERNATIVE = projectionList.toArray(new String[projectionList.size()]);
     }
   }
diff --git a/java/com/android/contacts/common/list/PhoneNumberPickerFragment.java b/java/com/android/contacts/common/list/PhoneNumberPickerFragment.java
index 8f25f82..de7903e 100644
--- a/java/com/android/contacts/common/list/PhoneNumberPickerFragment.java
+++ b/java/com/android/contacts/common/list/PhoneNumberPickerFragment.java
@@ -29,16 +29,20 @@
 import android.view.View;
 import android.view.ViewGroup;
 import com.android.contacts.common.R;
+import com.android.contacts.common.list.PhoneNumberListAdapter.Listener;
 import com.android.contacts.common.util.AccountFilterUtil;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallInitiationType.Type;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
+import com.android.dialer.lightbringer.LightbringerComponent;
+import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.protos.ProtoParsers;
 import java.util.Set;
 import org.json.JSONException;
@@ -61,9 +65,6 @@
 
   private boolean mUseCallableUri;
 
-  private ContactListItemView.PhotoPosition mPhotoPosition =
-      ContactListItemView.getDefaultPhotoPosition(false /* normal/non opposite */);
-
   private final Set<OnLoadFinishedListener> mLoadFinishedListeners = new ArraySet<>();
 
   private CursorReranker mCursorReranker;
@@ -71,7 +72,7 @@
   public PhoneNumberPickerFragment() {
     setQuickContactEnabled(false);
     setPhotoLoaderEnabled(true);
-    setSectionHeaderDisplayEnabled(true);
+    setSectionHeaderDisplayEnabled(false);
     setDirectorySearchMode(DirectoryListLoader.SEARCH_MODE_NONE);
 
     // Show nothing instead of letting caller Activity show something.
@@ -85,17 +86,33 @@
    */
   @Override
   public void onVideoCallIconClicked(int position) {
+    Logger.get(getContext()).logImpression(DialerImpression.Type.IMS_VIDEO_REQUESTED_FROM_SEARCH);
     callNumber(position, true /* isVideoCall */);
   }
 
   @Override
+  public void onLightbringerIconClicked(int position) {
+    PerformanceReport.stopRecording();
+    String phoneNumber = getPhoneNumber(position);
+    Intent intent =
+        LightbringerComponent.get(getContext())
+            .getLightbringer()
+            .getIntent(getContext(), phoneNumber);
+    // DialtactsActivity.ACTIVITY_REQUEST_CODE_LIGHTBRINGER
+    // Cannot reference because of cyclic dependencies
+    Logger.get(getContext())
+        .logImpression(DialerImpression.Type.LIGHTBRINGER_VIDEO_REQUESTED_FROM_SEARCH);
+    int dialactsActivityRequestCode = 3;
+    getActivity().startActivityForResult(intent, dialactsActivityRequestCode);
+  }
+
+  @Override
   public void onCallAndShareIconClicked(int position) {
     // Required because of cyclic dependencies of everything depending on contacts/common.
     String componentName = "com.android.dialer.callcomposer.CallComposerActivity";
     Intent intent = new Intent();
     intent.setComponent(new ComponentName(getContext(), componentName));
-    CallComposerContact contact =
-        ((PhoneNumberListAdapter) getAdapter()).getCallComposerContact(position);
+    DialerContact contact = ((PhoneNumberListAdapter) getAdapter()).getDialerContact(position);
     ProtoParsers.put(intent, "CALL_COMPOSER_CONTACT", contact);
     startActivity(intent);
   }
@@ -267,7 +284,7 @@
         && data != null
         && !data.isClosed()
         && data.getCount() > 0
-        && loader.getId() != -1) { // skip invalid directory ID of -1
+        && loader.getId() == 0) { // only re-rank if a suggestions loader with id of 0.
       data = mCursorReranker.rerankCursor(data);
     }
     super.onLoadFinished(loader, data);
@@ -320,7 +337,27 @@
   @Override
   public void onCapabilitiesUpdated() {
     if (getAdapter() != null) {
-      getAdapter().notifyDataSetChanged();
+      EnrichedCallManager manager =
+          EnrichedCallComponent.get(getContext()).getEnrichedCallManager();
+      Listener listener = ((PhoneNumberListAdapter) getAdapter()).getListener();
+
+      for (int i = 0; i < getListView().getChildCount(); i++) {
+        if (!(getListView().getChildAt(i) instanceof ContactListItemView)) {
+          continue;
+        }
+
+        // Since call and share is the lowest priority call to action, if any others are set,
+        // do not reset the call to action. Also do not set the call and share call to action if
+        // the number doesn't support call composer.
+        ContactListItemView view = (ContactListItemView) getListView().getChildAt(i);
+        if (view.getCallToAction() != ContactListItemView.NONE
+            || view.getPhoneNumber() == null
+            || manager.getCapabilities(view.getPhoneNumber()) == null
+            || !manager.getCapabilities(view.getPhoneNumber()).supportsCallComposer()) {
+          continue;
+        }
+        view.setCallToAction(ContactListItemView.CALL_AND_SHARE, listener, view.getPosition());
+      }
     }
   }
 
@@ -360,12 +397,6 @@
     if (!isSearchMode() && mFilter != null) {
       adapter.setFilter(mFilter);
     }
-
-    setPhotoPosition(adapter);
-  }
-
-  protected void setPhotoPosition(ContactEntryListAdapter adapter) {
-    ((PhoneNumberListAdapter) adapter).setPhotoPosition(mPhotoPosition);
   }
 
   @Override
@@ -389,15 +420,6 @@
     updateFilterHeaderView();
   }
 
-  public void setPhotoPosition(ContactListItemView.PhotoPosition photoPosition) {
-    mPhotoPosition = photoPosition;
-
-    final PhoneNumberListAdapter adapter = (PhoneNumberListAdapter) getAdapter();
-    if (adapter != null) {
-      adapter.setPhotoPosition(photoPosition);
-    }
-  }
-
   /**
    * @param isRemoteDirectory {@code true} if the call was initiated using a contact/phone number
    *     not in the local contacts database
diff --git a/java/com/android/contacts/common/list/ViewPagerTabs.java b/java/com/android/contacts/common/list/ViewPagerTabs.java
index 34f623e..1e6cf13 100644
--- a/java/com/android/contacts/common/list/ViewPagerTabs.java
+++ b/java/com/android/contacts/common/list/ViewPagerTabs.java
@@ -33,7 +33,6 @@
 import android.widget.TextView;
 import android.widget.Toast;
 import com.android.contacts.common.R;
-import com.android.dialer.compat.CompatUtils;
 
 /**
  * Lightweight implementation of ViewPager tabs. This looks similar to traditional actionBar tabs,
@@ -43,7 +42,13 @@
  */
 public class ViewPagerTabs extends HorizontalScrollView implements ViewPager.OnPageChangeListener {
 
-  private static final ViewOutlineProvider VIEW_BOUNDS_OUTLINE_PROVIDER;
+  private static final ViewOutlineProvider VIEW_BOUNDS_OUTLINE_PROVIDER =
+      new ViewOutlineProvider() {
+        @Override
+        public void getOutline(View view, Outline outline) {
+          outline.setRect(0, 0, view.getWidth(), view.getHeight());
+        }
+      };
   private static final int TAB_SIDE_PADDING_IN_DPS = 10;
   // TODO: This should use <declare-styleable> in the future
   private static final int[] ATTRS =
@@ -54,20 +59,6 @@
         android.R.attr.textAllCaps
       };
 
-  static {
-    if (CompatUtils.isLollipopCompatible()) {
-      VIEW_BOUNDS_OUTLINE_PROVIDER =
-          new ViewOutlineProvider() {
-            @Override
-            public void getOutline(View view, Outline outline) {
-              outline.setRect(0, 0, view.getWidth(), view.getHeight());
-            }
-          };
-    } else {
-      VIEW_BOUNDS_OUTLINE_PROVIDER = null;
-    }
-  }
-
   /**
    * Linearlayout that will contain the TextViews serving as tabs. This is the only child of the
    * parent HorizontalScrollView.
@@ -111,10 +102,8 @@
         new FrameLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT));
     a.recycle();
 
-    if (CompatUtils.isLollipopCompatible()) {
-      // enable shadow casting from view bounds
-      setOutlineProvider(VIEW_BOUNDS_OUTLINE_PROVIDER);
-    }
+    // enable shadow casting from view bounds
+    setOutlineProvider(VIEW_BOUNDS_OUTLINE_PROVIDER);
   }
 
   public void setViewPager(ViewPager viewPager) {
diff --git a/java/com/android/contacts/common/location/CountryDetector.java b/java/com/android/contacts/common/location/CountryDetector.java
deleted file mode 100644
index 7d9e42b..0000000
--- a/java/com/android/contacts/common/location/CountryDetector.java
+++ /dev/null
@@ -1,221 +0,0 @@
-/*
- * Copyright (C) 2016 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.contacts.common.location;
-
-import android.app.PendingIntent;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.location.Geocoder;
-import android.location.Location;
-import android.location.LocationManager;
-import android.preference.PreferenceManager;
-import android.telephony.TelephonyManager;
-import android.text.TextUtils;
-import android.util.Log;
-import com.android.dialer.util.PermissionsUtil;
-import java.util.Locale;
-
-/**
- * This class is used to detect the country where the user is. It is a simplified version of the
- * country detector service in the framework. The sources of country location are queried in the
- * following order of reliability:
- *
- * <ul>
- * <li>Mobile network
- * <li>Location manager
- * <li>SIM's country
- * <li>User's default locale
- * </ul>
- *
- * As far as possible this class tries to replicate the behavior of the system's country detector
- * service: 1) Order in priority of sources of country location 2) Mobile network information
- * provided by CDMA phones is ignored 3) Location information is updated every 12 hours (instead of
- * 24 hours in the system) 4) Location updates only uses the {@link
- * LocationManager#PASSIVE_PROVIDER} to avoid active use of the GPS 5) If a location is successfully
- * obtained and geocoded, we never fall back to use of the SIM's country (for the system, the
- * fallback never happens without a reboot) 6) Location is not used if the device does not implement
- * a {@link android.location.Geocoder}
- */
-public class CountryDetector {
-
-  public static final String KEY_PREFERENCE_TIME_UPDATED = "preference_time_updated";
-  public static final String KEY_PREFERENCE_CURRENT_COUNTRY = "preference_current_country";
-  private static final String TAG = "CountryDetector";
-  // Wait 12 hours between updates
-  private static final long TIME_BETWEEN_UPDATES_MS = 1000L * 60 * 60 * 12;
-  // Minimum distance before an update is triggered, in meters. We don't need this to be too
-  // exact because all we care about is what country the user is in.
-  private static final long DISTANCE_BETWEEN_UPDATES_METERS = 5000;
-  private static CountryDetector sInstance;
-  private final TelephonyManager mTelephonyManager;
-  private final LocationManager mLocationManager;
-  private final LocaleProvider mLocaleProvider;
-  // Used as a default country code when all the sources of country data have failed in the
-  // exceedingly rare event that the device does not have a default locale set for some reason.
-  private static final String DEFAULT_COUNTRY_ISO = "US";
-  private final Context mContext;
-
-  private CountryDetector(Context context) {
-    this(
-        context,
-        (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE),
-        (LocationManager) context.getSystemService(Context.LOCATION_SERVICE),
-        new LocaleProvider());
-  }
-
-  private CountryDetector(
-      Context context,
-      TelephonyManager telephonyManager,
-      LocationManager locationManager,
-      LocaleProvider localeProvider) {
-    mTelephonyManager = telephonyManager;
-    mLocationManager = locationManager;
-    mLocaleProvider = localeProvider;
-    mContext = context;
-
-    registerForLocationUpdates(context, mLocationManager);
-  }
-
-  public static void registerForLocationUpdates(Context context, LocationManager locationManager) {
-    if (!PermissionsUtil.hasLocationPermissions(context)) {
-      Log.w(TAG, "No location permissions, not registering for location updates.");
-      return;
-    }
-
-    if (!Geocoder.isPresent()) {
-      // Certain devices do not have an implementation of a geocoder - in that case there is
-      // no point trying to get location updates because we cannot retrieve the country based
-      // on the location anyway.
-      return;
-    }
-    final Intent activeIntent = new Intent(context, LocationChangedReceiver.class);
-    final PendingIntent pendingIntent =
-        PendingIntent.getBroadcast(context, 0, activeIntent, PendingIntent.FLAG_UPDATE_CURRENT);
-
-    locationManager.requestLocationUpdates(
-        LocationManager.PASSIVE_PROVIDER,
-        TIME_BETWEEN_UPDATES_MS,
-        DISTANCE_BETWEEN_UPDATES_METERS,
-        pendingIntent);
-  }
-
-  /**
-   * Returns the instance of the country detector. {@link #initialize(Context)} must have been
-   * called previously.
-   *
-   * @return the initialized country detector.
-   */
-  public static synchronized CountryDetector getInstance(Context context) {
-    if (sInstance == null) {
-      sInstance = new CountryDetector(context.getApplicationContext());
-    }
-    return sInstance;
-  }
-
-  /** Factory method for {@link CountryDetector} that allows the caller to provide mock objects. */
-  public CountryDetector getInstanceForTest(
-      Context context,
-      TelephonyManager telephonyManager,
-      LocationManager locationManager,
-      LocaleProvider localeProvider,
-      Geocoder geocoder) {
-    return new CountryDetector(context, telephonyManager, locationManager, localeProvider);
-  }
-
-  public String getCurrentCountryIso() {
-    String result = null;
-    if (isNetworkCountryCodeAvailable()) {
-      result = getNetworkBasedCountryIso();
-    }
-    if (TextUtils.isEmpty(result)) {
-      result = getLocationBasedCountryIso();
-    }
-    if (TextUtils.isEmpty(result)) {
-      result = getSimBasedCountryIso();
-    }
-    if (TextUtils.isEmpty(result)) {
-      result = getLocaleBasedCountryIso();
-    }
-    if (TextUtils.isEmpty(result)) {
-      result = DEFAULT_COUNTRY_ISO;
-    }
-    return result.toUpperCase(Locale.US);
-  }
-
-  /** @return the country code of the current telephony network the user is connected to. */
-  private String getNetworkBasedCountryIso() {
-    return mTelephonyManager.getNetworkCountryIso();
-  }
-
-  /** @return the geocoded country code detected by the {@link LocationManager}. */
-  private String getLocationBasedCountryIso() {
-    if (!Geocoder.isPresent() || !PermissionsUtil.hasLocationPermissions(mContext)) {
-      return null;
-    }
-    final SharedPreferences sharedPreferences =
-        PreferenceManager.getDefaultSharedPreferences(mContext);
-    return sharedPreferences.getString(KEY_PREFERENCE_CURRENT_COUNTRY, null);
-  }
-
-  /** @return the country code of the SIM card currently inserted in the device. */
-  private String getSimBasedCountryIso() {
-    return mTelephonyManager.getSimCountryIso();
-  }
-
-  /** @return the country code of the user's currently selected locale. */
-  private String getLocaleBasedCountryIso() {
-    Locale defaultLocale = mLocaleProvider.getDefaultLocale();
-    if (defaultLocale != null) {
-      return defaultLocale.getCountry();
-    }
-    return null;
-  }
-
-  private boolean isNetworkCountryCodeAvailable() {
-    // On CDMA TelephonyManager.getNetworkCountryIso() just returns the SIM's country code.
-    // In this case, we want to ignore the value returned and fallback to location instead.
-    return mTelephonyManager.getPhoneType() == TelephonyManager.PHONE_TYPE_GSM;
-  }
-
-  /**
-   * Class that can be used to return the user's default locale. This is in its own class so that it
-   * can be mocked out.
-   */
-  public static class LocaleProvider {
-
-    public Locale getDefaultLocale() {
-      return Locale.getDefault();
-    }
-  }
-
-  public static class LocationChangedReceiver extends BroadcastReceiver {
-
-    @Override
-    public void onReceive(final Context context, Intent intent) {
-      if (!intent.hasExtra(LocationManager.KEY_LOCATION_CHANGED)) {
-        return;
-      }
-
-      final Location location =
-          (Location) intent.getExtras().get(LocationManager.KEY_LOCATION_CHANGED);
-
-      UpdateCountryService.updateCountry(context, location);
-    }
-  }
-}
diff --git a/java/com/android/contacts/common/location/UpdateCountryService.java b/java/com/android/contacts/common/location/UpdateCountryService.java
deleted file mode 100644
index f23e09e..0000000
--- a/java/com/android/contacts/common/location/UpdateCountryService.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright (C) 2016 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.contacts.common.location;
-
-import android.app.IntentService;
-import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.content.SharedPreferences.Editor;
-import android.location.Address;
-import android.location.Geocoder;
-import android.location.Location;
-import android.preference.PreferenceManager;
-import android.util.Log;
-import java.io.IOException;
-import java.util.List;
-
-/**
- * Service used to perform asynchronous geocoding from within a broadcast receiver. Given a {@link
- * Location}, convert it into a country code, and save it in shared preferences.
- */
-public class UpdateCountryService extends IntentService {
-
-  private static final String TAG = UpdateCountryService.class.getSimpleName();
-
-  private static final String ACTION_UPDATE_COUNTRY = "saveCountry";
-
-  private static final String KEY_INTENT_LOCATION = "location";
-
-  public UpdateCountryService() {
-    super(TAG);
-  }
-
-  public static void updateCountry(Context context, Location location) {
-    final Intent serviceIntent = new Intent(context, UpdateCountryService.class);
-    serviceIntent.setAction(ACTION_UPDATE_COUNTRY);
-    serviceIntent.putExtra(UpdateCountryService.KEY_INTENT_LOCATION, location);
-    context.startService(serviceIntent);
-  }
-
-  @Override
-  protected void onHandleIntent(Intent intent) {
-    if (intent == null) {
-      Log.d(TAG, "onHandleIntent: could not handle null intent");
-      return;
-    }
-    if (ACTION_UPDATE_COUNTRY.equals(intent.getAction())) {
-      final Location location = intent.getParcelableExtra(KEY_INTENT_LOCATION);
-      final String country = getCountryFromLocation(getApplicationContext(), location);
-
-      if (country == null) {
-        return;
-      }
-
-      final SharedPreferences prefs =
-          PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
-
-      final Editor editor = prefs.edit();
-      editor.putLong(CountryDetector.KEY_PREFERENCE_TIME_UPDATED, System.currentTimeMillis());
-      editor.putString(CountryDetector.KEY_PREFERENCE_CURRENT_COUNTRY, country);
-      editor.commit();
-    }
-  }
-
-  /**
-   * Given a {@link Location}, return a country code.
-   *
-   * @return the ISO 3166-1 two letter country code
-   */
-  private String getCountryFromLocation(Context context, Location location) {
-    final Geocoder geocoder = new Geocoder(context);
-    String country = null;
-    try {
-      double latitude = location.getLatitude();
-      // Latitude has to be between 90 and -90 (latitude of north and south poles wrt equator)
-      if (latitude <= 90 && latitude >= -90) {
-        final List<Address> addresses =
-            geocoder.getFromLocation(location.getLatitude(), location.getLongitude(), 1);
-        if (addresses != null && addresses.size() > 0) {
-          country = addresses.get(0).getCountryCode();
-        }
-      } else {
-        Log.w(TAG, "Invalid latitude");
-      }
-    } catch (IOException e) {
-      Log.w(TAG, "Exception occurred when getting geocoded country from location");
-    }
-    return country;
-  }
-}
diff --git a/java/com/android/contacts/common/model/ContactLoader.java b/java/com/android/contacts/common/model/ContactLoader.java
index 55464b1..7ef3b73 100644
--- a/java/com/android/contacts/common/model/ContactLoader.java
+++ b/java/com/android/contacts/common/model/ContactLoader.java
@@ -522,6 +522,7 @@
     cursorColumnToContentValues(cursor, cv, ContactQuery.TIMES_USED);
     cursorColumnToContentValues(cursor, cv, ContactQuery.LAST_TIME_USED);
     cursorColumnToContentValues(cursor, cv, ContactQuery.CARRIER_PRESENCE);
+
     return cv;
   }
 
diff --git a/java/com/android/contacts/common/model/account/AccountType.java b/java/com/android/contacts/common/model/account/AccountType.java
index 1ae485a..ed0d421 100644
--- a/java/com/android/contacts/common/model/account/AccountType.java
+++ b/java/com/android/contacts/common/model/account/AccountType.java
@@ -25,6 +25,7 @@
 import android.provider.ContactsContract.Contacts;
 import android.provider.ContactsContract.RawContacts;
 import android.support.annotation.VisibleForTesting;
+import android.support.v4.content.ContextCompat;
 import android.util.ArrayMap;
 import android.view.inputmethod.EditorInfo;
 import android.widget.EditText;
@@ -113,7 +114,7 @@
       final PackageManager pm = context.getPackageManager();
       return pm.getDrawable(syncAdapterPackageName, iconRes, null);
     } else if (titleRes != -1) {
-      return context.getResources().getDrawable(iconRes);
+      return ContextCompat.getDrawable(context, iconRes);
     } else {
       return null;
     }
diff --git a/java/com/android/contacts/common/model/account/BaseAccountType.java b/java/com/android/contacts/common/model/account/BaseAccountType.java
index 8e9ba73..ccdad36 100644
--- a/java/com/android/contacts/common/model/account/BaseAccountType.java
+++ b/java/com/android/contacts/common/model/account/BaseAccountType.java
@@ -307,7 +307,7 @@
     DataKind kind =
         addKind(
             new DataKind(Phone.CONTENT_ITEM_TYPE, R.string.phoneLabelsGroup, Weight.PHONE, true));
-    kind.iconAltRes = R.drawable.quantum_ic_message_white_24;
+    kind.iconAltRes = R.drawable.quantum_ic_message_vd_theme_24;
     kind.iconAltDescriptionRes = R.string.sms;
     kind.actionHeader = new PhoneActionInflater();
     kind.actionAltHeader = new PhoneActionAltInflater();
@@ -1228,7 +1228,7 @@
               new PhoneActionInflater(),
               new SimpleInflater(Phone.NUMBER));
 
-      kind.iconAltRes = R.drawable.quantum_ic_message_white_24;
+      kind.iconAltRes = R.drawable.quantum_ic_message_vd_theme_24;
       kind.iconAltDescriptionRes = R.string.sms;
       kind.actionAltHeader = new PhoneActionAltInflater();
 
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_ab_search.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_ab_search.png
deleted file mode 100644
index d86b219..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_ab_search.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_arrow_back_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_arrow_back_24dp.png
deleted file mode 100644
index ddbb2c4..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_arrow_back_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_business_white_120dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_business_white_120dp.png
deleted file mode 100644
index d5942dc..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_business_white_120dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_call_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_call_24dp.png
deleted file mode 100644
index 4dc5065..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_call_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_close_dk.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_close_dk.png
deleted file mode 100644
index 9695529..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_close_dk.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_create_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_create_24dp.png
deleted file mode 100644
index 540ab4d..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_create_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_group_white_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_group_white_24dp.png
deleted file mode 100644
index 017e4bb..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_group_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_history_white_drawable_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_history_white_drawable_24dp.png
deleted file mode 100644
index 703d30b..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_history_white_drawable_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_info_outline_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_info_outline_24dp.png
deleted file mode 100644
index c7b1113..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_info_outline_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_back.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_back.png
deleted file mode 100644
index deb3a6d..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_back.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_dk.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_dk.png
deleted file mode 100644
index 06bd18f..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_dk.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_lt.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_lt.png
deleted file mode 100644
index d829d11..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_lt.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_overflow_lt.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_overflow_lt.png
deleted file mode 100644
index 1ba1295..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_overflow_lt.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_dk.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_dk.png
deleted file mode 100644
index 5ff3ac5..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_dk.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_lt.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_lt.png
deleted file mode 100644
index b4ebfc7..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_lt.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_remove_field_holo_light.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_remove_field_holo_light.png
deleted file mode 100644
index 03fd2fb..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_remove_field_holo_light.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_dk.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_dk.png
deleted file mode 100644
index e8cb0f5..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_dk.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_holo_light.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_holo_light.png
deleted file mode 100644
index 4513796..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_holo_light.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_lt.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_lt.png
deleted file mode 100644
index 1c9bb81..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_lt.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_person_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_person_24dp.png
deleted file mode 100644
index 56708b0..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_person_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_rx_videocam.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_rx_videocam.png
deleted file mode 100644
index ccdda67..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_rx_videocam.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_tx_videocam.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_tx_videocam.png
deleted file mode 100644
index 603ddc8..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_tx_videocam.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_videocam.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_videocam.png
deleted file mode 100644
index 97905c9..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_videocam.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_voicemail_avatar.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_voicemail_avatar.png
deleted file mode 100644
index 2121878..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_voicemail_avatar.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_activated_holo.9.png
deleted file mode 100644
index 4ea7afa..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_background_holo.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_background_holo.9.png
deleted file mode 100644
index cddf9be..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_background_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_focused_holo.9.png
deleted file mode 100644
index 86578be..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_longpressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_longpressed_holo_light.9.png
deleted file mode 100644
index e9afcc9..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_longpressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_pressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_pressed_holo_light.9.png
deleted file mode 100644
index 2054530..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_pressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index a0f1756..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_title_holo.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_title_holo.9.png
deleted file mode 100644
index ae93717..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_title_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_focused_holo.9.png
deleted file mode 100644
index 4139942..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index 569d28f..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_title_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_title_holo.9.png
deleted file mode 100644
index 5ec4c96..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_title_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_focused_holo.9.png
deleted file mode 100644
index 4139942..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index 065ff62..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_title_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_title_holo.9.png
deleted file mode 100644
index 013d5e7..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_title_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-hdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-hdpi/list_activated_holo.9.png
deleted file mode 100644
index 947f03c..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-hdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-mdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-mdpi/list_activated_holo.9.png
deleted file mode 100644
index 6d09d72..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-mdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-xhdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-xhdpi/list_activated_holo.9.png
deleted file mode 100644
index 63c7456..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-xhdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_focused_holo.9.png
deleted file mode 100644
index 4139942..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index af58554..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_title_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_title_holo.9.png
deleted file mode 100644
index cb801ac..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_title_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_activated_holo.9.png
deleted file mode 100644
index 3bf8e03..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_focused_holo.9.png
deleted file mode 100644
index 86578be..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_longpressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_longpressed_holo_light.9.png
deleted file mode 100644
index 3226ab7..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_longpressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_pressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_pressed_holo_light.9.png
deleted file mode 100644
index 061904c..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_pressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index 1d9371d..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-sw600dp-hdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-sw600dp-hdpi/list_activated_holo.9.png
deleted file mode 100644
index 046b24a..0000000
--- a/java/com/android/contacts/common/res/drawable-sw600dp-hdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-sw600dp-mdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-sw600dp-mdpi/list_activated_holo.9.png
deleted file mode 100644
index 1ff3373..0000000
--- a/java/com/android/contacts/common/res/drawable-sw600dp-mdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-sw600dp-xhdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-sw600dp-xhdpi/list_activated_holo.9.png
deleted file mode 100644
index 2eb7c7e..0000000
--- a/java/com/android/contacts/common/res/drawable-sw600dp-xhdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_activated_holo.9.png
deleted file mode 100644
index eda10e6..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_focused_holo.9.png
deleted file mode 100644
index 86578be..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_longpressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_longpressed_holo_light.9.png
deleted file mode 100644
index 5532e88..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_longpressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_pressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_pressed_holo_light.9.png
deleted file mode 100644
index f4af926..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_pressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index 8fb0636..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-xxhdpi/list_activated_holo.9.png
deleted file mode 100644
index 52c00dd..0000000
--- a/java/com/android/contacts/common/res/drawable-xxhdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-xxhdpi/list_focused_holo.9.png
deleted file mode 100644
index 3e4ca68..0000000
--- a/java/com/android/contacts/common/res/drawable-xxhdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/list_longpressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-xxhdpi/list_longpressed_holo_light.9.png
deleted file mode 100644
index 230d649..0000000
--- a/java/com/android/contacts/common/res/drawable-xxhdpi/list_longpressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/list_pressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-xxhdpi/list_pressed_holo_light.9.png
deleted file mode 100644
index 1352a17..0000000
--- a/java/com/android/contacts/common/res/drawable-xxhdpi/list_pressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
deleted file mode 100644
index ecf704e..0000000
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ /dev/null
@@ -1,20 +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
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/drawable/ic_call_and_share.xml b/java/com/android/contacts/common/res/drawable/ic_call_and_share.xml
deleted file mode 100644
index be0cdd3..0000000
--- a/java/com/android/contacts/common/res/drawable/ic_call_and_share.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2015 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
-  -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/ic_phone_attach"
-    android:tint="@color/search_video_call_icon_tint"
-    android:background="?attr/selectableItemBackgroundBorderless"/>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/drawable/ic_person_add_tinted_24dp.xml b/java/com/android/contacts/common/res/drawable/ic_person_add_tinted_24dp.xml
deleted file mode 100644
index c2538cf..0000000
--- a/java/com/android/contacts/common/res/drawable/ic_person_add_tinted_24dp.xml
+++ /dev/null
@@ -1,20 +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
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/quantum_ic_person_add_white_24"
-  android:tint="@color/actionbar_icon_color"/>
diff --git a/java/com/android/contacts/common/res/drawable/ic_search_add_contact.xml b/java/com/android/contacts/common/res/drawable/ic_search_add_contact.xml
deleted file mode 100644
index 476212d..0000000
--- a/java/com/android/contacts/common/res/drawable/ic_search_add_contact.xml
+++ /dev/null
@@ -1,20 +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.
--->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/quantum_ic_person_add_white_24"/>
diff --git a/java/com/android/contacts/common/res/drawable/ic_search_video_call.xml b/java/com/android/contacts/common/res/drawable/ic_search_video_call.xml
deleted file mode 100644
index 0fe0367..0000000
--- a/java/com/android/contacts/common/res/drawable/ic_search_video_call.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2015 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
-  -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/quantum_ic_videocam_white_24"
-  android:tint="@color/search_video_call_icon_tint"
-  android:background="?attr/selectableItemBackgroundBorderless"/>
diff --git a/java/com/android/contacts/common/res/drawable/list_selector_background_transition_holo_light.xml b/java/com/android/contacts/common/res/drawable/list_selector_background_transition_holo_light.xml
deleted file mode 100644
index 35fff99..0000000
--- a/java/com/android/contacts/common/res/drawable/list_selector_background_transition_holo_light.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2010 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.
--->
-
-<transition xmlns:android="http://schemas.android.com/apk/res/android">
-  <item android:drawable="@drawable/list_pressed_holo_light"/>
-  <item android:drawable="@drawable/list_longpressed_holo_light"/>
-</transition>
diff --git a/java/com/android/contacts/common/res/layout/dialog_call_subject.xml b/java/com/android/contacts/common/res/layout/dialog_call_subject.xml
index a33b2ac..df8e8d2 100644
--- a/java/com/android/contacts/common/res/layout/dialog_call_subject.xml
+++ b/java/com/android/contacts/common/res/layout/dialog_call_subject.xml
@@ -129,7 +129,7 @@
           android:layout_height="25dp"
           android:layout_alignParentStart="true"
           android:layout_centerVertical="true"
-          android:src="@drawable/quantum_ic_history_white_24"
+          android:src="@drawable/quantum_ic_history_vd_theme_24"
           android:tint="@color/call_subject_history_icon"/>
 
         <TextView
diff --git a/java/com/android/contacts/common/res/layout/search_bar_expanded.xml b/java/com/android/contacts/common/res/layout/search_bar_expanded.xml
index fa16083..7192eb0 100644
--- a/java/com/android/contacts/common/res/layout/search_bar_expanded.xml
+++ b/java/com/android/contacts/common/res/layout/search_bar_expanded.xml
@@ -29,7 +29,7 @@
     android:layout_margin="@dimen/search_box_navigation_icon_margin"
     android:background="?attr/selectableItemBackgroundBorderless"
     android:contentDescription="@string/action_menu_back_from_search"
-    android:src="@drawable/ic_back_arrow"
+    android:src="@drawable/quantum_ic_arrow_back_vd_theme_24"
     android:tint="@color/contactscommon_actionbar_background_color"/>
 
   <EditText
@@ -56,7 +56,7 @@
     android:background="?attr/selectableItemBackgroundBorderless"
     android:clickable="true"
     android:contentDescription="@string/description_clear_search"
-    android:src="@drawable/quantum_ic_close_white_24"
+    android:src="@drawable/quantum_ic_close_vd_theme_24"
     android:tint="@color/searchbox_icon_tint"/>
 
 </LinearLayout>
diff --git a/java/com/android/contacts/common/res/values-af/strings.xml b/java/com/android/contacts/common/res/values-af/strings.xml
index 52e612d..4ca39cf 100644
--- a/java/com/android/contacts/common/res/values-af/strings.xml
+++ b/java/com/android/contacts/common/res/values-af/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Weg"</string>
     <string name="status_busy" msgid="5990832098713248503">"Besig"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakte"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Topvoorgestel"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Ander"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Gids"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Werkgids"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle kontakte"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Voorstelle"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ek"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Soek tans…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Meer as <xliff:g id="COUNT">%d</xliff:g> gevind."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Tik \'n nota om saam met oproep te stuur …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"STUUR EN BEL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>-oortjie"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>-oortjie <xliff:g id="COUNT_3">%2$d</xliff:g> ongelese items. </item>
diff --git a/java/com/android/contacts/common/res/values-am/strings.xml b/java/com/android/contacts/common/res/values-am/strings.xml
index 0283fbb..d216b0b 100644
--- a/java/com/android/contacts/common/res/values-am/strings.xml
+++ b/java/com/android/contacts/common/res/values-am/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ወጣ ብሏል"</string>
     <string name="status_busy" msgid="5990832098713248503">"ተይዟል"</string>
     <string name="contactsList" msgid="8806067891419291513">"እውቅያዎች"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"በብዛት የተጠቆሙ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ሌላ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ማውጫ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"የሥራ ስልክ ማውጫ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ሁሉም እውቅያዎች"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ጥቆማዎች"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"እኔ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"በመፈለግ ላይ…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"ከ<xliff:g id="COUNT">%d</xliff:g> በላይ ተገኝተዋል።"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ከጥሪ ጋር ለመላክ የማስታወሻ ጽሑፍ ይተይቡ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ላክ እና ደውል"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g><xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"የ<xliff:g id="TITLE">%1$s</xliff:g> ትር።"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> የ<xliff:g id="TITLE_2">%1$s</xliff:g> ትር። <xliff:g id="COUNT_3">%2$d</xliff:g> ያልተነበቡ ንጥሎች። </item>
diff --git a/java/com/android/contacts/common/res/values-ar/strings.xml b/java/com/android/contacts/common/res/values-ar/strings.xml
index a3862fe..040b544 100644
--- a/java/com/android/contacts/common/res/values-ar/strings.xml
+++ b/java/com/android/contacts/common/res/values-ar/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"بالخارج"</string>
     <string name="status_busy" msgid="5990832098713248503">"مشغول"</string>
     <string name="contactsList" msgid="8806067891419291513">"جهات الاتصال"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"أهم المقترحات"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"غير ذلك"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"الدليل"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"دليل العمل"</string>
     <string name="local_search_label" msgid="907622822323119235">"جميع جهات الاتصال"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"الاقتراحات"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"أنا"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"جارِ البحث…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"تم العثور على أكثر من <xliff:g id="COUNT">%d</xliff:g> من جهات الاتصال."</string>
@@ -252,7 +254,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"اكتب ملاحظة لإرسالها مع المكالمة ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"إرسال واتصال"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"علامة تبويب <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="zero"> <xliff:g id="TITLE_2">%1$s</xliff:g> علامة تبويب. <xliff:g id="COUNT_3">%2$d</xliff:g> عناصر غير مقروءة. </item>
diff --git a/java/com/android/contacts/common/res/values-az/strings.xml b/java/com/android/contacts/common/res/values-az/strings.xml
index 9433771..13250f7 100644
--- a/java/com/android/contacts/common/res/values-az/strings.xml
+++ b/java/com/android/contacts/common/res/values-az/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Kənar"</string>
     <string name="status_busy" msgid="5990832098713248503">"Məşğul"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktlar"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Ən yaxşı Təkliflər"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Digər"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Kataloq"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"İş kataloqu"</string>
     <string name="local_search_label" msgid="907622822323119235">"Bütün kontaktlar"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Təkliflər"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mən"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Axtarılır..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ədəddən çox tapılıb."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Zəng ilə göndərmək üçün qeyd yazın..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"GÖNDƏRİN VƏ ZƏNG EDİN"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> tabel."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> tabel. <xliff:g id="COUNT_3">%2$d</xliff:g> oxunmamış element. </item>
diff --git a/java/com/android/contacts/common/res/values-b+sr+Latn/strings.xml b/java/com/android/contacts/common/res/values-b+sr+Latn/strings.xml
index fc99567..d3b6b0c 100644
--- a/java/com/android/contacts/common/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/contacts/common/res/values-b+sr+Latn/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Odsutan/na"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zauzet/a"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakti"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najpopularniji predlozi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Drugo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktorijum"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Direktorijum za Work"</string>
     <string name="local_search_label" msgid="907622822323119235">"Svi kontakti"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Predlozi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pretražuje se…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Pronađeno je više od <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Unesite belešku koju ćete poslati uz poziv..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"POŠALJI I POZOVI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Kartica <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Kartica <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nepročitana stavka. </item>
diff --git a/java/com/android/contacts/common/res/values-be/strings.xml b/java/com/android/contacts/common/res/values-be/strings.xml
index a9652a1..ca8f164 100644
--- a/java/com/android/contacts/common/res/values-be/strings.xml
+++ b/java/com/android/contacts/common/res/values-be/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Адсутнічае"</string>
     <string name="status_busy" msgid="5990832098713248503">"Заняты"</string>
     <string name="contactsList" msgid="8806067891419291513">"Кантакты"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Лепшыя прапановы"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Іншае"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Дырэкторыя"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Працоўны каталог"</string>
     <string name="local_search_label" msgid="907622822323119235">"Усе кантакты"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Прапановы"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Я"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Пошук..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Знойдзена вынікаў: больш за <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Увесці нататку для адпраўкі з выклікам…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"АДПРАВІЦЬ І ВЫКЛІКАЦЬ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Укладка <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one">Укладка <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> непрачытаны элемент. </item>
diff --git a/java/com/android/contacts/common/res/values-bg/strings.xml b/java/com/android/contacts/common/res/values-bg/strings.xml
index 0b57eb6..4fdcc8c 100644
--- a/java/com/android/contacts/common/res/values-bg/strings.xml
+++ b/java/com/android/contacts/common/res/values-bg/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Отсъства"</string>
     <string name="status_busy" msgid="5990832098713248503">"Зает/а"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакти"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Водещи предложения"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Други"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Директория"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Служебен указател"</string>
     <string name="local_search_label" msgid="907622822323119235">"Всички контакти"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Предложения"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Аз"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Търси се…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Намерени са повече от <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Напишете придружаваща бележка, която ще се изпрати при извършване на обаждането..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ИЗПРАЩАНЕ И ОБАЖДАНЕ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Раздел „<xliff:g id="TITLE">%1$s</xliff:g>“."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Раздел „<xliff:g id="TITLE_2">%1$s</xliff:g>“. <xliff:g id="COUNT_3">%2$d</xliff:g> непрочетени елемента. </item>
diff --git a/java/com/android/contacts/common/res/values-bn/strings.xml b/java/com/android/contacts/common/res/values-bn/strings.xml
index 8e783d1..debbe58 100644
--- a/java/com/android/contacts/common/res/values-bn/strings.xml
+++ b/java/com/android/contacts/common/res/values-bn/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"অন্যত্র"</string>
     <string name="status_busy" msgid="5990832098713248503">"ব্যস্ত"</string>
     <string name="contactsList" msgid="8806067891419291513">"পরিচিতিগুলি"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"শীর্ষস্থানীয় প্রস্তাবনা"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"অন্যান্য"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ডিরেক্টরি"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"কাজের সংগ্রহ"</string>
     <string name="local_search_label" msgid="907622822323119235">"সকল পরিচিতি"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"প্রস্তাবনাগুলি"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"আমি"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"অনুসন্ধান করছে..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>টির থেকে বেশি খুঁজে পাওয়া গিয়েছে৷"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"কলের সাথে পাঠানোর জন্য একটি নোট লিখুন ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"পাঠান এবং কল করুন"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ট্যাব৷"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ট্যাব৷ <xliff:g id="COUNT_3">%2$d</xliff:g>টি অপঠিত আইটেম৷ </item>
diff --git a/java/com/android/contacts/common/res/values-bs/strings.xml b/java/com/android/contacts/common/res/values-bs/strings.xml
index 278f6a8..c5f85e5 100644
--- a/java/com/android/contacts/common/res/values-bs/strings.xml
+++ b/java/com/android/contacts/common/res/values-bs/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Odsutan"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zauzeto"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakti"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najbolji prijedlozi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Ostalo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Imenik"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Poslovni imenik"</string>
     <string name="local_search_label" msgid="907622822323119235">"Svi kontakti"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Prijedlozi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pretraživanje…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Pronađeno je više od <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Upišite bilješku koja će se poslati uz poziv ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"POŠALJI I POZOVI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Kartica <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Kartica <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nepročitana stavka. </item>
diff --git a/java/com/android/contacts/common/res/values-ca/strings.xml b/java/com/android/contacts/common/res/values-ca/strings.xml
index ad31a01..7e814ff 100644
--- a/java/com/android/contacts/common/res/values-ca/strings.xml
+++ b/java/com/android/contacts/common/res/values-ca/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Absent"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupat"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactes"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Suggeriments principals"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Altres"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directori"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directori de la feina"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tots els contactes"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggeriments"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Jo"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"S\'està cercant…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Se n\'han trobat més de <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escriu una nota per enviar-la juntament amb la trucada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIA I TRUCA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Pestanya <xliff:g id="TITLE">%1$s</xliff:g>"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Pestanya <xliff:g id="TITLE_2">%1$s</xliff:g>: <xliff:g id="COUNT_3">%2$d</xliff:g> elements no llegits </item>
diff --git a/java/com/android/contacts/common/res/values-cs/strings.xml b/java/com/android/contacts/common/res/values-cs/strings.xml
index ab54be9..0bea069 100644
--- a/java/com/android/contacts/common/res/values-cs/strings.xml
+++ b/java/com/android/contacts/common/res/values-cs/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Pryč"</string>
     <string name="status_busy" msgid="5990832098713248503">"Nemám čas"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakty"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Hlavní návrhy"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Ostatní"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Adresář"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Pracovní adresář"</string>
     <string name="local_search_label" msgid="907622822323119235">"Všechny kontakty"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Návrhy"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Já"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Vyhledávání..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Nalezeno více kontaktů než <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Zadejte poznámku, která se odešle pomocí volání…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ODESLAT A ZAVOLAT"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Karta <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="few"> Karta <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nepřečtené položky. </item>
diff --git a/java/com/android/contacts/common/res/values-da/strings.xml b/java/com/android/contacts/common/res/values-da/strings.xml
index 965d04a..c000b2f 100644
--- a/java/com/android/contacts/common/res/values-da/strings.xml
+++ b/java/com/android/contacts/common/res/values-da/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ikke til stede"</string>
     <string name="status_busy" msgid="5990832098713248503">"Optaget"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakter"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populære forslag"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Andre"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Indeks"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Indeks for arbejde"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle kontakter"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Forslag"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mig"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Søger..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Der er fundet mere end <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Indtast en note, som skal sendes ved opkald..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND OG RING"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Fanen <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Fanen <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> ulæst element. </item>
diff --git a/java/com/android/contacts/common/res/values-de/strings.xml b/java/com/android/contacts/common/res/values-de/strings.xml
index 60c5e68..90e1336 100644
--- a/java/com/android/contacts/common/res/values-de/strings.xml
+++ b/java/com/android/contacts/common/res/values-de/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Abwesend"</string>
     <string name="status_busy" msgid="5990832098713248503">"Beschäftigt"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakte"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Top-Vorschläge"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Andere"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Verzeichnis"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Verzeichnis geschäftlicher Kontakte"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle Kontakte"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Vorschläge"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ich"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Suche läuft..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Mehr als <xliff:g id="COUNT">%d</xliff:g> Kontakte gefunden"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Notiz eingeben, die beim Anrufen gesendet wird..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SENDEN UND ANRUFEN"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Tab \"<xliff:g id="TITLE_2">%1$s</xliff:g>\". <xliff:g id="COUNT_3">%2$d</xliff:g> ungelesene Elemente. </item>
diff --git a/java/com/android/contacts/common/res/values-el/strings.xml b/java/com/android/contacts/common/res/values-el/strings.xml
index 9af3bc5..33d2db4 100644
--- a/java/com/android/contacts/common/res/values-el/strings.xml
+++ b/java/com/android/contacts/common/res/values-el/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Μη διαθέσιμος"</string>
     <string name="status_busy" msgid="5990832098713248503">"Απασχολημένος"</string>
     <string name="contactsList" msgid="8806067891419291513">"Επαφές"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Κορυφαίες προτάσεις"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Άλλο"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Κατάλογος"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Κατάλογος εργασίας"</string>
     <string name="local_search_label" msgid="907622822323119235">"Όλες οι επαφές"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Προτάσεις"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Εγώ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Αναζήτηση..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Βρέθηκαν περισσότερα από <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Πληκτρολογήστε μια σημείωση για αποστολή με την κλήση…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ΑΠΟΣΤΟΛΗ ΚΑΙ ΚΛΗΣΗ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Καρτέλα <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Καρτέλα <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> μη αναγνωσμένα στοιχεία. </item>
diff --git a/java/com/android/contacts/common/res/values-en-rAU/strings.xml b/java/com/android/contacts/common/res/values-en-rAU/strings.xml
index 996c6ee..e4e09dc 100644
--- a/java/com/android/contacts/common/res/values-en-rAU/strings.xml
+++ b/java/com/android/contacts/common/res/values-en-rAU/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Away"</string>
     <string name="status_busy" msgid="5990832098713248503">"Busy"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Top suggested"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Other"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Work directory"</string>
     <string name="local_search_label" msgid="907622822323119235">"All contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Me"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Searching…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"More than <xliff:g id="COUNT">%d</xliff:g> found."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Type a note to send with call ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND &amp; CALL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> tab."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-en-rGB/strings.xml b/java/com/android/contacts/common/res/values-en-rGB/strings.xml
index 996c6ee..e4e09dc 100644
--- a/java/com/android/contacts/common/res/values-en-rGB/strings.xml
+++ b/java/com/android/contacts/common/res/values-en-rGB/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Away"</string>
     <string name="status_busy" msgid="5990832098713248503">"Busy"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Top suggested"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Other"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Work directory"</string>
     <string name="local_search_label" msgid="907622822323119235">"All contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Me"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Searching…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"More than <xliff:g id="COUNT">%d</xliff:g> found."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Type a note to send with call ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND &amp; CALL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> tab."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-en-rIN/strings.xml b/java/com/android/contacts/common/res/values-en-rIN/strings.xml
index 996c6ee..e4e09dc 100644
--- a/java/com/android/contacts/common/res/values-en-rIN/strings.xml
+++ b/java/com/android/contacts/common/res/values-en-rIN/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Away"</string>
     <string name="status_busy" msgid="5990832098713248503">"Busy"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Top suggested"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Other"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Work directory"</string>
     <string name="local_search_label" msgid="907622822323119235">"All contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Me"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Searching…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"More than <xliff:g id="COUNT">%d</xliff:g> found."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Type a note to send with call ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND &amp; CALL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> tab."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-es-rUS/strings.xml b/java/com/android/contacts/common/res/values-es-rUS/strings.xml
index acb563c..894c352 100644
--- a/java/com/android/contacts/common/res/values-es-rUS/strings.xml
+++ b/java/com/android/contacts/common/res/values-es-rUS/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principales lugares sugeridos"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Otros"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directorio"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directorio del trabajo"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos los contactos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugerencias"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Yo"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Buscando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Más de <xliff:g id="COUNT">%d</xliff:g> encontrados"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escribe una nota para enviar con la llamada…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR Y LLAMAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Pestaña <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Pestaña <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elementos no leídos. </item>
diff --git a/java/com/android/contacts/common/res/values-es/strings.xml b/java/com/android/contacts/common/res/values-es/strings.xml
index def7a44..39e11d7 100644
--- a/java/com/android/contacts/common/res/values-es/strings.xml
+++ b/java/com/android/contacts/common/res/values-es/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Sugerencias principales"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Otro"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directorio"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directorio de trabajo"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos los contactos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugerencias"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Yo"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Buscando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Se han encontrado más de <xliff:g id="COUNT">%d</xliff:g> contactos."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escribe una nota para enviarla con la llamada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR Y LLAMAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Pestaña <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Pestaña <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elementos no leídos. </item>
diff --git a/java/com/android/contacts/common/res/values-et/strings.xml b/java/com/android/contacts/common/res/values-et/strings.xml
index c80d542..e146038 100644
--- a/java/com/android/contacts/common/res/values-et/strings.xml
+++ b/java/com/android/contacts/common/res/values-et/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Eemal"</string>
     <string name="status_busy" msgid="5990832098713248503">"Hõivatud"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktid"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populaarsed soovitused"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Muu"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Kataloog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Töökontaktide kataloog"</string>
     <string name="local_search_label" msgid="907622822323119235">"Kõik kontaktid"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Soovitused"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mina"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Otsimine ..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Leitud rohkem kui <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Sisestage märkus, mis koos kõnega saata ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SAADA JA HELISTA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Vahekaart <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Vahekaart <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> lugemata üksust. </item>
diff --git a/java/com/android/contacts/common/res/values-eu/strings.xml b/java/com/android/contacts/common/res/values-eu/strings.xml
index 868d668..9caf1f1 100644
--- a/java/com/android/contacts/common/res/values-eu/strings.xml
+++ b/java/com/android/contacts/common/res/values-eu/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Kanpoan"</string>
     <string name="status_busy" msgid="5990832098713248503">"Okupatuta"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktuak"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Iradokizun garrantzitsuenak"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Beste bat"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktorioa"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Laneko kontaktuak"</string>
     <string name="local_search_label" msgid="907622822323119235">"Kontaktu guztiak"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Iradokizunak"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ni"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Bilatzen…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> baino gehiago aurkitu dira."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Idatzi deiarekin batera bidali beharreko oharra…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"BIDALI ETA DEITU"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g>: <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> fitxa."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> fitxa. Irakurri gabeko <xliff:g id="COUNT_3">%2$d</xliff:g> elementu. </item>
diff --git a/java/com/android/contacts/common/res/values-fa/strings.xml b/java/com/android/contacts/common/res/values-fa/strings.xml
index dda1064..c0bc010 100644
--- a/java/com/android/contacts/common/res/values-fa/strings.xml
+++ b/java/com/android/contacts/common/res/values-fa/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"غایب"</string>
     <string name="status_busy" msgid="5990832098713248503">"مشغول"</string>
     <string name="contactsList" msgid="8806067891419291513">"مخاطبین"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"پیشنهادهای برتر"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"سایر موارد"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"فهرست"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"فهرست کار"</string>
     <string name="local_search_label" msgid="907622822323119235">"همه مخاطبین"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"پیشنهادها"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"من"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"در حال جستجو…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"بیش از <xliff:g id="COUNT">%d</xliff:g> مورد یافت شد."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"یادداشتی بنویسید که همراه تماس ارسال شود…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ارسال و تماس"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / ‏<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"برگه «<xliff:g id="TITLE">%1$s</xliff:g>»."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> برگه «<xliff:g id="TITLE_2">%1$s</xliff:g>». <xliff:g id="COUNT_3">%2$d</xliff:g> مورد خوانده‌نشده. </item>
diff --git a/java/com/android/contacts/common/res/values-fi/strings.xml b/java/com/android/contacts/common/res/values-fi/strings.xml
index b8065b2..c124765 100644
--- a/java/com/android/contacts/common/res/values-fi/strings.xml
+++ b/java/com/android/contacts/common/res/values-fi/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Poissa"</string>
     <string name="status_busy" msgid="5990832098713248503">"Varattu"</string>
     <string name="contactsList" msgid="8806067891419291513">"Yhteystiedot"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Kiinnostavimmat ehdotukset"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Muu"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Osoitekirja"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Työhakemisto"</string>
     <string name="local_search_label" msgid="907622822323119235">"Kaikki yhteystiedot"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Ehdotukset"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Minä"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Haetaan…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Löytyi yli <xliff:g id="COUNT">%d</xliff:g> yhteystietoa."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Kirjoita muistiinpano lähetettäväksi puhelun kanssa…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"LÄHETÄ JA SOITA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>-välilehti."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>-välilehti. <xliff:g id="COUNT_3">%2$d</xliff:g> lukematonta kohdetta. </item>
diff --git a/java/com/android/contacts/common/res/values-fr-rCA/strings.xml b/java/com/android/contacts/common/res/values-fr-rCA/strings.xml
index 82f5492..c055408 100644
--- a/java/com/android/contacts/common/res/values-fr-rCA/strings.xml
+++ b/java/com/android/contacts/common/res/values-fr-rCA/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Absent"</string>
     <string name="status_busy" msgid="5990832098713248503">"Occupé(e)"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Meilleures suggestions"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Autre"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Répertoire"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Annuaire professionnel"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tous les contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Moi"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Recherche en cours…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Plus de <xliff:g id="COUNT">%d</xliff:g> contacts ont été trouvés."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Tapez une note à envoyer avec l\'appel..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVOYER ET APPELER"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> : <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Onglet <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Onglet <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> élément non lu. </item>
diff --git a/java/com/android/contacts/common/res/values-fr/strings.xml b/java/com/android/contacts/common/res/values-fr/strings.xml
index 474d721..a47a5a2 100644
--- a/java/com/android/contacts/common/res/values-fr/strings.xml
+++ b/java/com/android/contacts/common/res/values-fr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Absent"</string>
     <string name="status_busy" msgid="5990832098713248503">"Occupé"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principaux dossiers recommandés"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Autre"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Répertoire"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Contacts professionnels"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tous les contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Moi"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Recherche..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Plus de <xliff:g id="COUNT">%d</xliff:g> contacts ont été trouvés."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Saisissez une note pour accompagner l\'appel..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVOYER ET APPELER"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Onglet <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Onglet <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> élément non lu. </item>
diff --git a/java/com/android/contacts/common/res/values-gl/strings.xml b/java/com/android/contacts/common/res/values-gl/strings.xml
index 4a3262a..a90481d 100644
--- a/java/com/android/contacts/common/res/values-gl/strings.xml
+++ b/java/com/android/contacts/common/res/values-gl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Suxestións destacadas"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Outro"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directorio"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directorio de traballo"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos os contactos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suxestións"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Buscando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Encontráronse máis de <xliff:g id="COUNT">%d</xliff:g> contactos."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escribe unha nota para enviala coa chamada…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR E CHAMAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Pestana <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Pestana <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elementos non lidos. </item>
diff --git a/java/com/android/contacts/common/res/values-gu/strings.xml b/java/com/android/contacts/common/res/values-gu/strings.xml
index 536aceb..9b1a6a8 100644
--- a/java/com/android/contacts/common/res/values-gu/strings.xml
+++ b/java/com/android/contacts/common/res/values-gu/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"દૂર"</string>
     <string name="status_busy" msgid="5990832098713248503">"વ્યસ્ત"</string>
     <string name="contactsList" msgid="8806067891419291513">"સંપર્કો"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ટોચના સૂચવેલ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"અન્ય"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"નિર્દેશિકા"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"કાર્ય નિર્દેશિકા"</string>
     <string name="local_search_label" msgid="907622822323119235">"તમામ સંપર્કો"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"સૂચનો"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"હું"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"શોધી રહ્યું છે..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> કરતાં વધુ મળ્યાં."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"કૉલ સાથે મોકલવા માટે એક નોંધ લખો ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"મોકલો અને કૉલ કરો"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ટૅબ."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ટૅબ. <xliff:g id="COUNT_3">%2$d</xliff:g> વાંચ્યા વગરની આઇટમ. </item>
diff --git a/java/com/android/contacts/common/res/values-hi/strings.xml b/java/com/android/contacts/common/res/values-hi/strings.xml
index c61e195..e33f7d2 100644
--- a/java/com/android/contacts/common/res/values-hi/strings.xml
+++ b/java/com/android/contacts/common/res/values-hi/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"दूर"</string>
     <string name="status_busy" msgid="5990832098713248503">"व्यस्त"</string>
     <string name="contactsList" msgid="8806067891419291513">"संपर्क"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"शीर्ष सुझाव"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"अन्य"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"निर्देशिका"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"कार्य निर्देशिका"</string>
     <string name="local_search_label" msgid="907622822323119235">"सभी संपर्क"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"सुझाव"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"मुझे"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"खोज रहा है..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> से अधिक मिले."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"कॉल के साथ भेजने के लिए नोट लिखें ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"भेजें और कॉल करें"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> टैब."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> टैब. <xliff:g id="COUNT_3">%2$d</xliff:g> नहीं पढ़े गए आइटम. </item>
diff --git a/java/com/android/contacts/common/res/values-hr/strings.xml b/java/com/android/contacts/common/res/values-hr/strings.xml
index 66986dd..d6e0b10 100644
--- a/java/com/android/contacts/common/res/values-hr/strings.xml
+++ b/java/com/android/contacts/common/res/values-hr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Odsutan"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zauzet"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakti"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najbolji prijedlozi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Drugo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktorij"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Poslovni direktorij"</string>
     <string name="local_search_label" msgid="907622822323119235">"Svi kontakti"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Prijedlozi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pretraživanje…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Pronađeno je više od <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Napišite bilješku koju ćete poslati uz poziv..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"POŠALJI I NAZOVI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Kartica <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Kartica <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nepročitana stavka. </item>
diff --git a/java/com/android/contacts/common/res/values-hu/strings.xml b/java/com/android/contacts/common/res/values-hu/strings.xml
index 22bf509..44bf9c8 100644
--- a/java/com/android/contacts/common/res/values-hu/strings.xml
+++ b/java/com/android/contacts/common/res/values-hu/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Nincs a gépnél"</string>
     <string name="status_busy" msgid="5990832098713248503">"Elfoglalt"</string>
     <string name="contactsList" msgid="8806067891419291513">"Címtár"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Legjobb javaslatok"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Egyéb"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Címtár"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Munkahelyi névjegyek címtára"</string>
     <string name="local_search_label" msgid="907622822323119235">"Összes névjegy"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Javaslatok"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Én"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Keresés…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Több mint <xliff:g id="COUNT">%d</xliff:g> találat."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Írjon üzenetet, amelyet elküldhetünk a hívással együtt…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"KÜLDÉS ÉS HÍVÁS"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="LIMIT">%2$s</xliff:g>/<xliff:g id="COUNT">%1$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> lap."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> lap. <xliff:g id="COUNT_3">%2$d</xliff:g> olvasatlan elem. </item>
diff --git a/java/com/android/contacts/common/res/values-hy/strings.xml b/java/com/android/contacts/common/res/values-hy/strings.xml
index 85c9023..b1490c7 100644
--- a/java/com/android/contacts/common/res/values-hy/strings.xml
+++ b/java/com/android/contacts/common/res/values-hy/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Տեղում չէ"</string>
     <string name="status_busy" msgid="5990832098713248503">"Զբաղված"</string>
     <string name="contactsList" msgid="8806067891419291513">"Կոնտակտներ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Լավագույն առաջարկներ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Այլ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Գրացուցակ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Աշխատանքային գրացուցակ"</string>
     <string name="local_search_label" msgid="907622822323119235">"Բոլոր կոնտակտները"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Առաջարկներ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ես"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Որոնում..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Գտնվել են <xliff:g id="COUNT">%d</xliff:g>-ից ավելի:"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Մուտքագրեք նշում՝ զանգի հետ ուղարկելու համար ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ՈՒՂԱՐԿԵԼ ԵՎ ԶԱՆԳԵԼ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ներդիր:"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-in/strings.xml b/java/com/android/contacts/common/res/values-in/strings.xml
index d7ee8bf..a54821e 100644
--- a/java/com/android/contacts/common/res/values-in/strings.xml
+++ b/java/com/android/contacts/common/res/values-in/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Keluar"</string>
     <string name="status_busy" msgid="5990832098713248503">"Sibuk"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontak"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Paling Disarankan"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Lainnya"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktori"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Direktori kerja"</string>
     <string name="local_search_label" msgid="907622822323119235">"Semua kontak"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Saran"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Saya"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Menelusuri…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Ditemukan lebih dari <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Ketik catatan untuk dikirim dengan panggilan telepon ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"KIRIM &amp; TELEPON"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Tab <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> item belum dibaca. </item>
diff --git a/java/com/android/contacts/common/res/values-is/strings.xml b/java/com/android/contacts/common/res/values-is/strings.xml
index 26c1aef..803a44b 100644
--- a/java/com/android/contacts/common/res/values-is/strings.xml
+++ b/java/com/android/contacts/common/res/values-is/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Í burtu"</string>
     <string name="status_busy" msgid="5990832098713248503">"Upptekin(n)"</string>
     <string name="contactsList" msgid="8806067891419291513">"Tengiliðir"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Helstu tillögur"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Annað"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Skrá"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Vinnuskrá"</string>
     <string name="local_search_label" msgid="907622822323119235">"Allir tengiliðir"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Tillögur"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ég"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Leitar…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Yfir <xliff:g id="COUNT">%d</xliff:g> fundust."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Sláðu inn texta til að senda með símtalinu..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SENDA OG HRINGJA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Flipinn <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Flipinn <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> ólesið atriði. </item>
diff --git a/java/com/android/contacts/common/res/values-it/strings.xml b/java/com/android/contacts/common/res/values-it/strings.xml
index 8ea5648..1c4c769 100644
--- a/java/com/android/contacts/common/res/values-it/strings.xml
+++ b/java/com/android/contacts/common/res/values-it/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Assente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Occupato"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contatti"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Suggerimenti più popolari"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Altro"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directory di lavoro"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tutti i contatti"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggerimenti"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Io"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Ricerca..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Più di <xliff:g id="COUNT">%d</xliff:g> trovati."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Digita una nota da inviare con la chiamata..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"INVIA E CHIAMA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Scheda <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Scheda <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elementi da leggere. </item>
diff --git a/java/com/android/contacts/common/res/values-iw/strings.xml b/java/com/android/contacts/common/res/values-iw/strings.xml
index 2a6b2c1..9f1fd49 100644
--- a/java/com/android/contacts/common/res/values-iw/strings.xml
+++ b/java/com/android/contacts/common/res/values-iw/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"לא נמצא"</string>
     <string name="status_busy" msgid="5990832098713248503">"לא פנוי"</string>
     <string name="contactsList" msgid="8806067891419291513">"אנשי קשר"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"הצעות מובילות"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"אחר"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ספריה"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ספריית עבודה"</string>
     <string name="local_search_label" msgid="907622822323119235">"כל אנשי הקשר"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"הצעות"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"אני"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"מחפש..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"נמצאו יותר מ-<xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"הקלד הערה לשליחה עם השיחה..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"שלח והתקשר"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"‎<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>‎"</string>
     <string name="tab_title" msgid="3387876802026074288">"הכרטיסייה <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="two">הכרטיסייה <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> פריטים שלא נקראו. </item>
diff --git a/java/com/android/contacts/common/res/values-ja/strings.xml b/java/com/android/contacts/common/res/values-ja/strings.xml
index 3271b46..8dd7768 100644
--- a/java/com/android/contacts/common/res/values-ja/strings.xml
+++ b/java/com/android/contacts/common/res/values-ja/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"不在"</string>
     <string name="status_busy" msgid="5990832098713248503">"取り込み中"</string>
     <string name="contactsList" msgid="8806067891419291513">"連絡先"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"おすすめ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"その他"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ディレクトリ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"仕事用の連絡先リスト"</string>
     <string name="local_search_label" msgid="907622822323119235">"すべての連絡先"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"候補"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"自分"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"検索中..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>件以上見つかりました。"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"発信時に送信するメモを入力..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"送信 / 通話"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g>、<xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> タブ。"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> タブ。<xliff:g id="COUNT_3">%2$d</xliff:g> 件の未読項目。</item>
diff --git a/java/com/android/contacts/common/res/values-ka/strings.xml b/java/com/android/contacts/common/res/values-ka/strings.xml
index ebbee6e..a7f536d 100644
--- a/java/com/android/contacts/common/res/values-ka/strings.xml
+++ b/java/com/android/contacts/common/res/values-ka/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"გასული"</string>
     <string name="status_busy" msgid="5990832098713248503">"დაკავებული"</string>
     <string name="contactsList" msgid="8806067891419291513">"კონტაქტები"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"საუკეთესო შეთავაზებები"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"სხვა"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"კატალოგი"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"სამსახურის კატალოგი"</string>
     <string name="local_search_label" msgid="907622822323119235">"ყველა კონტაქტი"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"შეთავაზებები"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"მე"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ძიება..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"ნაპოვნია <xliff:g id="COUNT">%d</xliff:g>-ზე მეტი."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"აკრიფეთ შენიშვნა ზართან ერთად გასაგზავნად ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"გაგზავნა და დარეკვა"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ცხრ."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ცხრ. <xliff:g id="COUNT_3">%2$d</xliff:g> წაუკითხავი ერთეული. </item>
diff --git a/java/com/android/contacts/common/res/values-kk/strings.xml b/java/com/android/contacts/common/res/values-kk/strings.xml
index 327532a..cf2f5f1 100644
--- a/java/com/android/contacts/common/res/values-kk/strings.xml
+++ b/java/com/android/contacts/common/res/values-kk/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Желіден тыс"</string>
     <string name="status_busy" msgid="5990832098713248503">"Бос емес"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контактілер"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Үздік ұсыныстар"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Басқа"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Анықтама"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Жұмыс каталогы"</string>
     <string name="local_search_label" msgid="907622822323119235">"Барлық контактілер"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Ұсыныстар"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Мен"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Іздеуде…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> көбірек табылды."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Қоңыраумен жіберу үшін ескертпе теріңіз ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ЖІБЕРУ ЖӘНЕ ҚОҢЫРАУ ШАЛУ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> қойындысы."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> қойындысы. <xliff:g id="COUNT_3">%2$d</xliff:g> оқылмаған элемент. </item>
diff --git a/java/com/android/contacts/common/res/values-km/strings.xml b/java/com/android/contacts/common/res/values-km/strings.xml
index 5030167..d22ebb2 100644
--- a/java/com/android/contacts/common/res/values-km/strings.xml
+++ b/java/com/android/contacts/common/res/values-km/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ចាក​ឆ្ងាយ"</string>
     <string name="status_busy" msgid="5990832098713248503">"រវល់"</string>
     <string name="contactsList" msgid="8806067891419291513">"ទំនាក់ទំនង"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"បាន​ណែនាំ​​កម្រិត​ខ្ពស់"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ផ្សេងៗ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ថត"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ថតកន្លែងការងារ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ទំនាក់ទំនង​ទាំងអស់"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ការ​ណែនាំ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ខ្ញុំ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"កំពុង​ស្វែងរក..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"បាន​រក​ឃើញ​ច្រើន​ជាង <xliff:g id="COUNT">%d</xliff:g> ។"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"វាយបញ្ចូលចំណាំដែលត្រូវផ្ញើជាមួយការហៅទូរស័ព្ទ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ផ្ញើ &amp; ហៅ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"ផ្ទាំង <xliff:g id="TITLE">%1$s</xliff:g>។"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">ផ្ទាំង <xliff:g id="TITLE_2">%1$s</xliff:g>។ ធាតុមិនទាន់​អាន <xliff:g id="COUNT_3">%2$d</xliff:g> </item>
diff --git a/java/com/android/contacts/common/res/values-kn/strings.xml b/java/com/android/contacts/common/res/values-kn/strings.xml
index 446e078..6b49a0b 100644
--- a/java/com/android/contacts/common/res/values-kn/strings.xml
+++ b/java/com/android/contacts/common/res/values-kn/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ದೂರ"</string>
     <string name="status_busy" msgid="5990832098713248503">"ಕಾರ್ಯನಿರತ"</string>
     <string name="contactsList" msgid="8806067891419291513">"ಸಂಪರ್ಕಗಳು"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ಉನ್ನತ ಸಲಹೆ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ಇತರೆ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ಡೈರೆಕ್ಟರಿ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ಕೆಲಸದ ಡೈರೆಕ್ಟರಿ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ಎಲ್ಲಾ ಸಂಪರ್ಕಗಳು"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ಸಲಹೆಗಳು"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ನಾನು"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ಹುಡುಕಲಾಗುತ್ತಿದೆ…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ಗಿಂತ ಹೆಚ್ಚಾಗಿ ಕಂಡುಬಂದಿದೆ."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ಕರೆ ಕಳುಹಿಸಲು ಟಿಪ್ಪಣಿಯನ್ನು ಟೈಪ್ ಮಾಡಿ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ಕಳುಹಿಸು ಮತ್ತು ಕರೆಮಾಡು"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ಟ್ಯಾಬ್."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ಟ್ಯಾಬ್. <xliff:g id="COUNT_3">%2$d</xliff:g> ಓದದಿರುವ ಐಟಂಗಳು. </item>
diff --git a/java/com/android/contacts/common/res/values-ko/strings.xml b/java/com/android/contacts/common/res/values-ko/strings.xml
index 4c2bd4f..f186596 100644
--- a/java/com/android/contacts/common/res/values-ko/strings.xml
+++ b/java/com/android/contacts/common/res/values-ko/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"자리 비움"</string>
     <string name="status_busy" msgid="5990832098713248503">"다른 용무 중"</string>
     <string name="contactsList" msgid="8806067891419291513">"주소록"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"인기 추천"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"기타"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"디렉토리"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"직장 디렉토리"</string>
     <string name="local_search_label" msgid="907622822323119235">"모든 연락처"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"추천"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"나"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"검색 중..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>개 이상 찾았습니다."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"통화에 함께 전송할 메모를 입력하세요..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"보내기 및 전화 걸기"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> 탭"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> 탭. 읽지 않은 항목 <xliff:g id="COUNT_3">%2$d</xliff:g>개 </item>
diff --git a/java/com/android/contacts/common/res/values-ky/strings.xml b/java/com/android/contacts/common/res/values-ky/strings.xml
index e5bab45..eaa7dcc 100644
--- a/java/com/android/contacts/common/res/values-ky/strings.xml
+++ b/java/com/android/contacts/common/res/values-ky/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Чыгып кетти"</string>
     <string name="status_busy" msgid="5990832098713248503">"Бош эмес"</string>
     <string name="contactsList" msgid="8806067891419291513">"Байланыштар"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Эң көп сунушталгандар"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Башка"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Директорий"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Жумуш профилиндеги байланыштар китепчеси"</string>
     <string name="local_search_label" msgid="907622822323119235">"Бардык байланыштар"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Сунуштар"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Мен"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Изделүүдө…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ашык табылды."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Чалуу менен жөнөтүлө турган кыска жазууну териңиз …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ЖӨНӨТҮҮ ЖАНА ЧАЛУУ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"\"<xliff:g id="TITLE">%1$s</xliff:g>\" өтмөгү."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> \"<xliff:g id="TITLE_2">%1$s</xliff:g>\" өтмөгү. <xliff:g id="COUNT_3">%2$d</xliff:g> нерсе окула элек. </item>
diff --git a/java/com/android/contacts/common/res/values-lo/strings.xml b/java/com/android/contacts/common/res/values-lo/strings.xml
index c649539..fa6d3c6 100644
--- a/java/com/android/contacts/common/res/values-lo/strings.xml
+++ b/java/com/android/contacts/common/res/values-lo/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ບໍ່ຢູ່"</string>
     <string name="status_busy" msgid="5990832098713248503">"ບໍ່ຫວ່າງ"</string>
     <string name="contactsList" msgid="8806067891419291513">"ລາຍຊື່ຜູ້ຕິດຕໍ່"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ແນະນຳຫຼາຍທີ່ສຸດ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ອື່ນໆ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ໄດເຣັກທໍຣີ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ໄດເຣັກທໍຣີບ່ອນເຮັດວຽກ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ລາຍຊື່ຜູ້ຕິດຕໍ່ທັງໝົດ"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ຄຳແນະນຳ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ຂ້ອຍ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ກຳລັງຊອກຫາ..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"ພົບຫຼາຍກວ່າ <xliff:g id="COUNT">%d</xliff:g> ລາຍການ."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ພິມ​ບັນ​ທຶກ ເພື່ອ​ສົ່ງ​ກັບ​ການ​ໂທ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ສົ່ງ ແລະ ໂທ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"ແຖບ <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">ແຖບ <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> ລາຍການບໍ່ທັນໄດ້ອ່ານ. </item>
diff --git a/java/com/android/contacts/common/res/values-lt/strings.xml b/java/com/android/contacts/common/res/values-lt/strings.xml
index b74bd99..b577260 100644
--- a/java/com/android/contacts/common/res/values-lt/strings.xml
+++ b/java/com/android/contacts/common/res/values-lt/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Pasišalinęs"</string>
     <string name="status_busy" msgid="5990832098713248503">"Užsiėmęs"</string>
     <string name="contactsList" msgid="8806067891419291513">"Adresinė"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populiariausi siūlomi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Kita"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalogas"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Darbo katalogas"</string>
     <string name="local_search_label" msgid="907622822323119235">"Visi kontaktai"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Pasiūlymai"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Aš"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Ieškoma…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Rasta daugiau nei <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Įveskite užrašą, kurį galima išsiųsti skambinant..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SIŲSTI IR SKAMBINTI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Skirtukas „<xliff:g id="TITLE">%1$s</xliff:g>“."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Skirtukas „<xliff:g id="TITLE_2">%1$s</xliff:g>“. <xliff:g id="COUNT_3">%2$d</xliff:g> neskaitytas elementas. </item>
diff --git a/java/com/android/contacts/common/res/values-lv/strings.xml b/java/com/android/contacts/common/res/values-lv/strings.xml
index c09a27f..81551e2 100644
--- a/java/com/android/contacts/common/res/values-lv/strings.xml
+++ b/java/com/android/contacts/common/res/values-lv/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Prombūtnē"</string>
     <string name="status_busy" msgid="5990832098713248503">"Aizņemts"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktpersonas"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populārākie ieteikumi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Cits"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalogs"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Darba katalogs"</string>
     <string name="local_search_label" msgid="907622822323119235">"Visas kontaktpersonas"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Ieteikumi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Es"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Notiek meklēšana…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Atrastas vairāk nekā <xliff:g id="COUNT">%d</xliff:g> kontaktpersonas."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Ierakstiet piezīmi, ko nosūtīt ar zvanu..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SŪTĪT UN ZVANĪT"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> no <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g>: <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Cilne “<xliff:g id="TITLE">%1$s</xliff:g>”"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="zero"> Cilne “<xliff:g id="TITLE_2">%1$s</xliff:g>”. <xliff:g id="COUNT_3">%2$d</xliff:g> nelasīti vienumi. </item>
diff --git a/java/com/android/contacts/common/res/values-mk/strings.xml b/java/com/android/contacts/common/res/values-mk/strings.xml
index da1530f..475ea17 100644
--- a/java/com/android/contacts/common/res/values-mk/strings.xml
+++ b/java/com/android/contacts/common/res/values-mk/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Отсутен"</string>
     <string name="status_busy" msgid="5990832098713248503">"Зафатен"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакти"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Нејдобри предложени"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Друг"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Адресар"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Работен директориум"</string>
     <string name="local_search_label" msgid="907622822323119235">"Сите контакти"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Предлози"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Јас"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Се пребарува..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Повеќе од <xliff:g id="COUNT">%d</xliff:g> се пронајдени."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Напишете белешка да се испрати со повикот..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ИСПРАТИ И ПОВИКАЈ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Картичка <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Картичка <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> непрочитана ставка. </item>
diff --git a/java/com/android/contacts/common/res/values-ml/strings.xml b/java/com/android/contacts/common/res/values-ml/strings.xml
index 7e92749..969a99b 100644
--- a/java/com/android/contacts/common/res/values-ml/strings.xml
+++ b/java/com/android/contacts/common/res/values-ml/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ലഭ്യമല്ല"</string>
     <string name="status_busy" msgid="5990832098713248503">"തിരക്കിലാണ്"</string>
     <string name="contactsList" msgid="8806067891419291513">"കോണ്ടാക്റ്റ്"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"കൂടുതൽ നിർദ്ദേശിച്ചിരിക്കുന്നവ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"മറ്റുള്ളവ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ഡയറക്‌ടറി"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ഔദ്യോഗിക ഡയറക്‌ടറി"</string>
     <string name="local_search_label" msgid="907622822323119235">"എല്ലാ കോൺടാക്റ്റുകളും"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"നിര്‍ദ്ദേശങ്ങള്‍"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ഞാന്‍"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"തിരയുന്നു…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>-ൽ കൂടുതൽ കണ്ടെത്തി."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"കോളിനൊപ്പം അയയ്ക്കുന്നതിന് ഒരു കുറിപ്പ് ടൈപ്പുചെയ്യുക ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"അയയ്‌ക്കുകയും വിളിക്കുകയും ചെയ്യുക"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ടാബ്."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ടാബ്. <xliff:g id="COUNT_3">%2$d</xliff:g> വായിക്കാത്ത ഇനങ്ങൾ. </item>
diff --git a/java/com/android/contacts/common/res/values-mn/strings.xml b/java/com/android/contacts/common/res/values-mn/strings.xml
index f0a8c92..12fba53 100644
--- a/java/com/android/contacts/common/res/values-mn/strings.xml
+++ b/java/com/android/contacts/common/res/values-mn/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Холдсон"</string>
     <string name="status_busy" msgid="5990832098713248503">"Завгүй"</string>
     <string name="contactsList" msgid="8806067891419291513">"Харилцагчид"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Санал болгосон шилдэг"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Бусад"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Директор"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Ажлын лавлагаа"</string>
     <string name="local_search_label" msgid="907622822323119235">"Бүх харилцагчид"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Санал болголт"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Би"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Хайж байна..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>-с олон олдлоо."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Дуудлаганд илгээх тэмдэглэл бичнэ үү..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ИЛГЭЭХ, ДУУДЛАГА"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> таб."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> таб. <xliff:g id="COUNT_3">%2$d</xliff:g> уншаагүй зүйл. </item>
diff --git a/java/com/android/contacts/common/res/values-mr/strings.xml b/java/com/android/contacts/common/res/values-mr/strings.xml
index 96504c7..8770f8b 100644
--- a/java/com/android/contacts/common/res/values-mr/strings.xml
+++ b/java/com/android/contacts/common/res/values-mr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"दूर आहे"</string>
     <string name="status_busy" msgid="5990832098713248503">"व्यस्त"</string>
     <string name="contactsList" msgid="8806067891419291513">"संपर्क"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"सुचविलेले उत्कृष्ट"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"इतर"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"निर्देशिका"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"कार्य निर्देशिका"</string>
     <string name="local_search_label" msgid="907622822323119235">"सर्व संपर्क"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"सूचना"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"मी"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"शोधत आहे..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> पेक्षा जास्त आढळले."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"कॉलसह पाठविण्‍यासाठी एक टीप टाइप करा..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"पाठवा आणि कॉल करा"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> टॅब."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> टॅब. <xliff:g id="COUNT_3">%2$d</xliff:g> न वाचलेला आयटम. </item>
diff --git a/java/com/android/contacts/common/res/values-ms/strings.xml b/java/com/android/contacts/common/res/values-ms/strings.xml
index 60d2b7a..45c297f 100644
--- a/java/com/android/contacts/common/res/values-ms/strings.xml
+++ b/java/com/android/contacts/common/res/values-ms/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Tiada"</string>
     <string name="status_busy" msgid="5990832098713248503">"Sibuk"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kenalan"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Teratas Dicadangkan"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Lain-lain"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktori"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Direktori kerja"</string>
     <string name="local_search_label" msgid="907622822323119235">"Semua kenalan"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Cadangan"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Saya"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Mencari..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"lebih daripada <xliff:g id="COUNT">%d</xliff:g> ditemui"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Taip nota untuk dihantar dengan panggilan…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"HANTAR &amp; PANGGIL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Tab <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> item belum dibaca. </item>
diff --git a/java/com/android/contacts/common/res/values-my/strings.xml b/java/com/android/contacts/common/res/values-my/strings.xml
index d81e895..6fbad16 100644
--- a/java/com/android/contacts/common/res/values-my/strings.xml
+++ b/java/com/android/contacts/common/res/values-my/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"အဝေးရောက်နေပါသည်"</string>
     <string name="status_busy" msgid="5990832098713248503">"အလုပ်များနေသည်"</string>
     <string name="contactsList" msgid="8806067891419291513">"အဆက်အသွယ်များ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ထိပ်တန်း အကြံပြုထားပါသည်"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"တစ်ခြား"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"လမ်းညွှန်"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"အလုပ်လမ်းညွှန်"</string>
     <string name="local_search_label" msgid="907622822323119235">"လိပ်စာများအားလုံး"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"အကြံပြုချက်များ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ကျွန်ုပ်"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ရှာဖွေနေသည်…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ထက်ပိုတွေ့ရှိသည်"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ခေါ်ဆိုမှုဖြင့် ပေးပို့ရန် မှတ်စုတစ်ခု ရိုက်ပါ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ပေးပို့ပြီး ခေါ်ပါ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> တဘ်။"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> တဘ်။ မဖတ်ရသေးသည့် အရာ <xliff:g id="COUNT_3">%2$d</xliff:g> ခု။ </item>
diff --git a/java/com/android/contacts/common/res/values-nb/strings.xml b/java/com/android/contacts/common/res/values-nb/strings.xml
index 7085cb3..8162ee7 100644
--- a/java/com/android/contacts/common/res/values-nb/strings.xml
+++ b/java/com/android/contacts/common/res/values-nb/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Borte"</string>
     <string name="status_busy" msgid="5990832098713248503">"Opptatt"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakter"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Toppforslag"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Annen"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Jobbkatalog"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle kontakter"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Forslag"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Meg"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Søker …"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Fant mer enn <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Skriv et notat du vil sende med anropet …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND OG RING"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>-fanen."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>-fanen. <xliff:g id="COUNT_3">%2$d</xliff:g> uleste elementer. </item>
diff --git a/java/com/android/contacts/common/res/values-ne/strings.xml b/java/com/android/contacts/common/res/values-ne/strings.xml
index 1f54232..0034852 100644
--- a/java/com/android/contacts/common/res/values-ne/strings.xml
+++ b/java/com/android/contacts/common/res/values-ne/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"टाढा"</string>
     <string name="status_busy" msgid="5990832098713248503">"व्यस्त"</string>
     <string name="contactsList" msgid="8806067891419291513">"सम्पर्क"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"सबैभन्दा धेरै सुझाव दिइएको"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"अन्य"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"निर्देशिका"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"कार्यको निर्देशिका"</string>
     <string name="local_search_label" msgid="907622822323119235">"सबै सम्पर्कहरू"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"सुझावहरू"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"म"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"खोजी गर्दै..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>भन्दा बढी पाइयो।"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"यस कलसँग पठाउन एक टिप्पणी  टाइप गर्नुहोस्"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"पठाउनुहोस् र कल गर्नुहोस्"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ट्याब।"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ट्याब। <xliff:g id="COUNT_3">%2$d</xliff:g> नपढिएका वस्तुहरू। </item>
diff --git a/java/com/android/contacts/common/res/values-nl/strings.xml b/java/com/android/contacts/common/res/values-nl/strings.xml
index 9d41899..e8f1b15 100644
--- a/java/com/android/contacts/common/res/values-nl/strings.xml
+++ b/java/com/android/contacts/common/res/values-nl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Niet beschikbaar"</string>
     <string name="status_busy" msgid="5990832098713248503">"Bezet"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacten"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populaire suggesties"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Overig"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Zakelijke contactenlijst"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle contacten"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggesties"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ik"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Zoeken..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Meer dan <xliff:g id="COUNT">%d</xliff:g> gevonden."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Typ een notitie om te verzenden met de oproep..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"VERZENDEN EN BELLEN"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tabblad <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Tabblad <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> ongelezen items. </item>
diff --git a/java/com/android/contacts/common/res/values-no/strings.xml b/java/com/android/contacts/common/res/values-no/strings.xml
index 7085cb3..8162ee7 100644
--- a/java/com/android/contacts/common/res/values-no/strings.xml
+++ b/java/com/android/contacts/common/res/values-no/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Borte"</string>
     <string name="status_busy" msgid="5990832098713248503">"Opptatt"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakter"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Toppforslag"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Annen"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Jobbkatalog"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle kontakter"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Forslag"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Meg"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Søker …"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Fant mer enn <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Skriv et notat du vil sende med anropet …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND OG RING"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>-fanen."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>-fanen. <xliff:g id="COUNT_3">%2$d</xliff:g> uleste elementer. </item>
diff --git a/java/com/android/contacts/common/res/values-pa/strings.xml b/java/com/android/contacts/common/res/values-pa/strings.xml
index c96510c..8a1a134 100644
--- a/java/com/android/contacts/common/res/values-pa/strings.xml
+++ b/java/com/android/contacts/common/res/values-pa/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ਦੂਰ"</string>
     <string name="status_busy" msgid="5990832098713248503">"ਰੁੱਝਾ ਹੋਇਆ ਹੈ"</string>
     <string name="contactsList" msgid="8806067891419291513">"ਸੰਪਰਕ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ਪ੍ਰਮੁੱਖ ਸੁਝਾਏ ਗਏ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ਹੋਰ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ਡਾਇਰੈਕਟਰੀ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ਕੰਮ ਡਾਇਰੈਕਟਰੀ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ਸਾਰੇ ਸੰਪਰਕ"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ਸੁਝਾਅ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ਮੈਂ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ਖੋਜ ਰਿਹਾ ਹੈ..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ਤੋਂ ਵੱਧ ਮਿਲੇ।"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ਕਾਲ ਦੇ ਨਾਲ ਭੇਜਣ ਲਈ ਕੋਈ ਨੋਟ ਟਾਈਪ ਕਰੋ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ਭੇਜੋ ਅਤੇ ਕਾਲ ਕਰੋ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ਟੈਬ।"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ਟੈਬ। <xliff:g id="COUNT_3">%2$d</xliff:g> ਅਣ-ਪੜ੍ਹੀਆਂ ਆਈਟਮਾਂ। </item>
diff --git a/java/com/android/contacts/common/res/values-pl/strings.xml b/java/com/android/contacts/common/res/values-pl/strings.xml
index c4e65f5..37d5b62 100644
--- a/java/com/android/contacts/common/res/values-pl/strings.xml
+++ b/java/com/android/contacts/common/res/values-pl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Nieobecny"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zajęty"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakty"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najlepsze sugestie"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Inny"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Katalog służbowy"</string>
     <string name="local_search_label" msgid="907622822323119235">"Wszystkie kontakty"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestie"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Wyszukiwanie..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Znaleziono więcej niż <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Wpisz notatkę, którą chcesz wysłać razem z połączeniem..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"WYŚLIJ I ZADZWOŃ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Karta <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="few"> Karta <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nieprzeczytane elementy. </item>
diff --git a/java/com/android/contacts/common/res/values-pt-rBR/strings.xml b/java/com/android/contacts/common/res/values-pt-rBR/strings.xml
index ee2b87c..5083c4a 100644
--- a/java/com/android/contacts/common/res/values-pt-rBR/strings.xml
+++ b/java/com/android/contacts/common/res/values-pt-rBR/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contatos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principais sugestões"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Outros"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Diretório"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Diretório de trabalho"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos os contatos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestões"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pesquisando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Mais de <xliff:g id="COUNT">%d</xliff:g> encontrados."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escreva uma nota para enviar com a chamada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR E LIGAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Guia \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one">Guia \"<xliff:g id="TITLE_2">%1$s</xliff:g>\". <xliff:g id="COUNT_3">%2$d</xliff:g> item não lido. </item>
diff --git a/java/com/android/contacts/common/res/values-pt-rPT/strings.xml b/java/com/android/contacts/common/res/values-pt-rPT/strings.xml
index 44bba14..298b7a2 100644
--- a/java/com/android/contacts/common/res/values-pt-rPT/strings.xml
+++ b/java/com/android/contacts/common/res/values-pt-rPT/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado(a)"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principais sugestões"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Outro"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Diretório"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Diretório de trabalho"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos os contactos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestões"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"A pesquisar..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Foram encontrados mais de <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escrever uma nota para enviar com a chamada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR E LIGAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Separador <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-pt/strings.xml b/java/com/android/contacts/common/res/values-pt/strings.xml
index ee2b87c..5083c4a 100644
--- a/java/com/android/contacts/common/res/values-pt/strings.xml
+++ b/java/com/android/contacts/common/res/values-pt/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contatos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principais sugestões"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Outros"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Diretório"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Diretório de trabalho"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos os contatos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestões"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pesquisando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Mais de <xliff:g id="COUNT">%d</xliff:g> encontrados."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escreva uma nota para enviar com a chamada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR E LIGAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Guia \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one">Guia \"<xliff:g id="TITLE_2">%1$s</xliff:g>\". <xliff:g id="COUNT_3">%2$d</xliff:g> item não lido. </item>
diff --git a/java/com/android/contacts/common/res/values-ro/strings.xml b/java/com/android/contacts/common/res/values-ro/strings.xml
index 358e7af..2fd5e5b 100644
--- a/java/com/android/contacts/common/res/values-ro/strings.xml
+++ b/java/com/android/contacts/common/res/values-ro/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Plecat(ă)"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupat(ă)"</string>
     <string name="contactsList" msgid="8806067891419291513">"Agendă"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Cele mai populare sugestii"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Altul"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Director"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directorul de serviciu"</string>
     <string name="local_search_label" msgid="907622822323119235">"Toată agenda"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestii"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Se caută…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"S-au găsit peste <xliff:g id="COUNT">%d</xliff:g> persoane de contact."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Introduceți o notă ca să o trimiteți împreună cu apelul..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"TRIMITEȚI ȘI APELAȚI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Fila <xliff:g id="TITLE">%1$s</xliff:g>"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="few"> Fila <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elemente necitite. </item>
diff --git a/java/com/android/contacts/common/res/values-ru/strings.xml b/java/com/android/contacts/common/res/values-ru/strings.xml
index 3442f2c..530732e 100644
--- a/java/com/android/contacts/common/res/values-ru/strings.xml
+++ b/java/com/android/contacts/common/res/values-ru/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Отсутствует"</string>
     <string name="status_busy" msgid="5990832098713248503">"Не беспокоить"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакты"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Топ рекомендуемых"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Другое"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Каталог"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Каталог контактов из рабочего профиля"</string>
     <string name="local_search_label" msgid="907622822323119235">"Все контакты"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Рекомендуемые"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Вы"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Поиск…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Найдено контактов: более <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Введите текст…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ОТПРАВИТЬ И ПОЗВОНИТЬ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Вкладка \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one">Вкладка <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> непрочитанный элемент. </item>
diff --git a/java/com/android/contacts/common/res/values-si/strings.xml b/java/com/android/contacts/common/res/values-si/strings.xml
index 72ca32d..1bd9063 100644
--- a/java/com/android/contacts/common/res/values-si/strings.xml
+++ b/java/com/android/contacts/common/res/values-si/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ළඟ නැත"</string>
     <string name="status_busy" msgid="5990832098713248503">"කාර්යබහුල"</string>
     <string name="contactsList" msgid="8806067891419291513">"සම්බන්ධතා"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ඉහළින්ම යෝජිත"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"වෙනත්"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"නාමාවලිය"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"කාර්යාල සම්බන්ධතා නාමාවලිය"</string>
     <string name="local_search_label" msgid="907622822323119235">"සියලුම සම්බන්ධතා"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"යෝජනා"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"මම"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"සොයමින්..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ට වඩා සොයාගන්නා ලදී."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ඇමතුම සමග යැවීමට සටහනක් ටයිප් කරන්න ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"යවන්න සහ අමතන්න"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ටැබය."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ටැබය. නොකියවූ අයිතම <xliff:g id="COUNT_3">%2$d</xliff:g>. </item>
diff --git a/java/com/android/contacts/common/res/values-sk/strings.xml b/java/com/android/contacts/common/res/values-sk/strings.xml
index b85f63f..59d666e 100644
--- a/java/com/android/contacts/common/res/values-sk/strings.xml
+++ b/java/com/android/contacts/common/res/values-sk/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Som preč"</string>
     <string name="status_busy" msgid="5990832098713248503">"Nemám čas"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakty"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najviac odporúčané"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Iné"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Adresár"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Pracovný adresár"</string>
     <string name="local_search_label" msgid="907622822323119235">"Všetky kontakty"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Návrhy"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Hľadá sa…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Našlo sa viac ako <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Napíšte poznámku, ktorá sa odošle s hovorom..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ODOSLAŤ A VOLAŤ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Karta <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="few"> Karta <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> neprečítané položky. </item>
diff --git a/java/com/android/contacts/common/res/values-sl/strings.xml b/java/com/android/contacts/common/res/values-sl/strings.xml
index f4c39de..dc6e690 100644
--- a/java/com/android/contacts/common/res/values-sl/strings.xml
+++ b/java/com/android/contacts/common/res/values-sl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Odsoten"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zaseden"</string>
     <string name="contactsList" msgid="8806067891419291513">"Stiki"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najboljši predlogi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Drugo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Imenik"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Delovni imenik"</string>
     <string name="local_search_label" msgid="907622822323119235">"Vsi stiki"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Predlogi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Jaz"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Iskanje ..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Najdenih je bilo več kot toliko stikov: <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Vnesite zapisek, ki ga želite poslati s klicem ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"POŠLJI IN KLIČI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g>: <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Zavihek »<xliff:g id="TITLE">%1$s</xliff:g>«."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Zavihek »<xliff:g id="TITLE_2">%1$s</xliff:g>«. <xliff:g id="COUNT_3">%2$d</xliff:g> neprebran element. </item>
diff --git a/java/com/android/contacts/common/res/values-sq/strings.xml b/java/com/android/contacts/common/res/values-sq/strings.xml
index 553c46d..64b4388 100644
--- a/java/com/android/contacts/common/res/values-sq/strings.xml
+++ b/java/com/android/contacts/common/res/values-sq/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"I larguar"</string>
     <string name="status_busy" msgid="5990832098713248503">"I zënë"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktet"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Sugjerimet kryesore"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Tjetër"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktoria"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Direktoria e punës"</string>
     <string name="local_search_label" msgid="907622822323119235">"Të gjitha kontaktet"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugjerimet"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Unë"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Po kërkon..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"U gjetën më shumë se <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Shkruaj një shënim për të dërguar një telefonatë..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"DËRGO DHE TELEFONO"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Skeda <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Skeda <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> artikuj të palexuar. </item>
diff --git a/java/com/android/contacts/common/res/values-sr/strings.xml b/java/com/android/contacts/common/res/values-sr/strings.xml
index 99997e6..e139662 100644
--- a/java/com/android/contacts/common/res/values-sr/strings.xml
+++ b/java/com/android/contacts/common/res/values-sr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Одсутан/на"</string>
     <string name="status_busy" msgid="5990832098713248503">"Заузет/а"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакти"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Најпопуларнији предлози"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Другo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Директоријум"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Директоријум за Work"</string>
     <string name="local_search_label" msgid="907622822323119235">"Сви контакти"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Предлози"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ја"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Претражује се…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Пронађено је више од <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Унесите белешку коју ћете послати уз позив..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ПОШАЉИ И ПОЗОВИ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Картица <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Картица <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> непрочитана ставка. </item>
diff --git a/java/com/android/contacts/common/res/values-sv/strings.xml b/java/com/android/contacts/common/res/values-sv/strings.xml
index 79e56e5..cd09517 100644
--- a/java/com/android/contacts/common/res/values-sv/strings.xml
+++ b/java/com/android/contacts/common/res/values-sv/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Borta"</string>
     <string name="status_busy" msgid="5990832098713248503">"Upptagen"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakter"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Bästa förslagen"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Övrigt"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Jobbkatalog"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alla kontakter"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Förslag"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Jag"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Söker…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Fler än <xliff:g id="COUNT">%d</xliff:g> hittades."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Gör en anteckning som skickas när du ringer …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SKICKA OCH RING"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Fliken <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Fliken <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> olästa poster. </item>
diff --git a/java/com/android/contacts/common/res/values-sw/strings.xml b/java/com/android/contacts/common/res/values-sw/strings.xml
index 4d30271..5c41d87 100644
--- a/java/com/android/contacts/common/res/values-sw/strings.xml
+++ b/java/com/android/contacts/common/res/values-sw/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Mbali"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ana shughuli"</string>
     <string name="contactsList" msgid="8806067891419291513">"Anwani"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Mapendekezo Maarufu"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Nyingineyo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Saraka"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Anwani za kazi"</string>
     <string name="local_search_label" msgid="907622822323119235">"Anwani zote"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Mapendekezo"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mimi"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Inatafuta…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Zaidi ya <xliff:g id="COUNT">%d</xliff:g> zimepatikana."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Andika dokezo litakaloambatana na simu utakayopiga ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"TUMA na UPIGE SIMU"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Kichupo cha <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Kichupo cha <xliff:g id="TITLE_2">%1$s</xliff:g>. Vipengee <xliff:g id="COUNT_3">%2$d</xliff:g> havijasomwa. </item>
diff --git a/java/com/android/contacts/common/res/values-ta/strings.xml b/java/com/android/contacts/common/res/values-ta/strings.xml
index e041a99..df7ee06 100644
--- a/java/com/android/contacts/common/res/values-ta/strings.xml
+++ b/java/com/android/contacts/common/res/values-ta/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"வெளியே"</string>
     <string name="status_busy" msgid="5990832098713248503">"பணிமிகுதி"</string>
     <string name="contactsList" msgid="8806067891419291513">"தொடர்புகள்"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"அதிகம் பரிந்துரைத்தவை"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"மற்றவை"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"கோப்பகம்"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"பணிக் கோப்பகம்"</string>
     <string name="local_search_label" msgid="907622822323119235">"எல்லா தொடர்புகளும்"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"பரிந்துரைகள்"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"எனக்கு"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"தேடுகிறது..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> க்கும் மேற்பட்டவை கண்டறியப்பட்டன."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"அழைப்புடன் சேர்த்து அனுப்ப, குறிப்பை உள்ளிடவும்..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"அனுப்பி அழை"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> தாவல்."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> தாவல். படிக்காதவை (<xliff:g id="COUNT_3">%2$d</xliff:g>). </item>
diff --git a/java/com/android/contacts/common/res/values-te/strings.xml b/java/com/android/contacts/common/res/values-te/strings.xml
index 6dd0e21..c97cded 100644
--- a/java/com/android/contacts/common/res/values-te/strings.xml
+++ b/java/com/android/contacts/common/res/values-te/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"దూరంగా ఉన్నారు"</string>
     <string name="status_busy" msgid="5990832098713248503">"బిజీగా ఉన్నారు"</string>
     <string name="contactsList" msgid="8806067891419291513">"పరిచయాలు"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ఉత్తమ సూచనలు"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ఇతరం"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"డైరెక్టరీ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"కార్యాలయ డైరెక్టరీ"</string>
     <string name="local_search_label" msgid="907622822323119235">"అన్ని పరిచయాలు"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"సూచనలు"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"నేను"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"శోధిస్తోంది..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> కంటే ఎక్కువ కనుగొనబడ్డాయి."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"కాల్‌తో పాటు పంపడానికి గమనికను టైప్ చేయండి ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"పంపు &amp; కాల్ చేయి"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ట్యాబ్."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ట్యాబ్. <xliff:g id="COUNT_3">%2$d</xliff:g> చదవని అంశాలు. </item>
diff --git a/java/com/android/contacts/common/res/values-th/strings.xml b/java/com/android/contacts/common/res/values-th/strings.xml
index b979e74..aff4a9c 100644
--- a/java/com/android/contacts/common/res/values-th/strings.xml
+++ b/java/com/android/contacts/common/res/values-th/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ไม่อยู่"</string>
     <string name="status_busy" msgid="5990832098713248503">"ไม่ว่าง"</string>
     <string name="contactsList" msgid="8806067891419291513">"รายชื่อติดต่อ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"รายการแนะนำยอดนิยม"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"อื่นๆ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ไดเรกทอรี"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ไดเรกทอรีที่ทำงาน"</string>
     <string name="local_search_label" msgid="907622822323119235">"รายชื่อติดต่อทั้งหมด"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"รายการแนะนำ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ฉัน"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"กำลังค้นหา…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"พบมากกว่า <xliff:g id="COUNT">%d</xliff:g> รายการ"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"พิมพ์โน้ตเพื่อส่งพร้อมการโทร ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ส่งและโทร"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"แท็บ <xliff:g id="TITLE">%1$s</xliff:g>"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> แท็บ <xliff:g id="TITLE_2">%1$s</xliff:g> ยังไม่อ่าน <xliff:g id="COUNT_3">%2$d</xliff:g> รายการ </item>
diff --git a/java/com/android/contacts/common/res/values-tl/strings.xml b/java/com/android/contacts/common/res/values-tl/strings.xml
index 62caef8..edf2caf 100644
--- a/java/com/android/contacts/common/res/values-tl/strings.xml
+++ b/java/com/android/contacts/common/res/values-tl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Wala"</string>
     <string name="status_busy" msgid="5990832098713248503">"Abala"</string>
     <string name="contactsList" msgid="8806067891419291513">"Mga Contact"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Mga Madalas Imungkahi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Iba pa"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktoryo"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directory sa trabaho"</string>
     <string name="local_search_label" msgid="907622822323119235">"Lahat ng mga contact"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Mga Mungkahi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ako"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Naghahanap…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Higit sa <xliff:g id="COUNT">%d</xliff:g> ang nakita."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Mag-type ng isang tala na ipadadala kasama ng tawag ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"IPADALA AT TAWAGAN"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab ng <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Tab ng <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> hindi pa nababasang item. </item>
diff --git a/java/com/android/contacts/common/res/values-tr/strings.xml b/java/com/android/contacts/common/res/values-tr/strings.xml
index ce3c109..9ec983f 100644
--- a/java/com/android/contacts/common/res/values-tr/strings.xml
+++ b/java/com/android/contacts/common/res/values-tr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Dışarıda"</string>
     <string name="status_busy" msgid="5990832098713248503">"Meşgul"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kişiler"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"En Çok Önerilenler"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Diğer"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Dizin"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"İş dizini"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tüm kişiler"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Öneriler"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ben"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Aranıyor..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> kişiden fazla bulundu."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Çağrıyla göndermek için bir not yazın..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"GÖNDER VE ARA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> sekmesi."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> sekmesi. <xliff:g id="COUNT_3">%2$d</xliff:g> okunmamış öğe. </item>
diff --git a/java/com/android/contacts/common/res/values-uk/strings.xml b/java/com/android/contacts/common/res/values-uk/strings.xml
index f6d1e47..6d5d4eb 100644
--- a/java/com/android/contacts/common/res/values-uk/strings.xml
+++ b/java/com/android/contacts/common/res/values-uk/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Не на місці"</string>
     <string name="status_busy" msgid="5990832098713248503">"Не турбувати"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакти"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Найкращі пропозиції"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Інші"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Каталог"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Робочі контакти"</string>
     <string name="local_search_label" msgid="907622822323119235">"Усі контакти"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Пропозиції"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Я"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Пошук…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Знайдено понад <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Введіть нотатку, яку хочете надіслати під час дзвінка…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ЗАТЕЛЕФОНУВАТИ Й НАДІСЛАТИ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> з <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Вкладка \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Вкладка \"<xliff:g id="TITLE_2">%1$s</xliff:g>\". <xliff:g id="COUNT_3">%2$d</xliff:g> непрочитаний елемент. </item>
diff --git a/java/com/android/contacts/common/res/values-ur/strings.xml b/java/com/android/contacts/common/res/values-ur/strings.xml
index b34c78d..79cf833 100644
--- a/java/com/android/contacts/common/res/values-ur/strings.xml
+++ b/java/com/android/contacts/common/res/values-ur/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"دور"</string>
     <string name="status_busy" msgid="5990832098713248503">"مصروف"</string>
     <string name="contactsList" msgid="8806067891419291513">"رابطے"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"سرفہرست تجویز کردہ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"دیگر"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ڈائریکٹری"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"دفتری ڈائرکٹری"</string>
     <string name="local_search_label" msgid="907622822323119235">"سبھی رابطے"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"تجاویز"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"میں"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"تلاش کر رہا ہے…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> سے زیادہ ملے۔"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"کال کے ساتھ بھیجنے کیلئے ایک نوٹ ٹائپ کریں…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"بھیجیں اور کال کریں"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ٹیب۔"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ٹیب۔ <xliff:g id="COUNT_3">%2$d</xliff:g> بغیر پڑھی ہوئی آئٹمز۔ </item>
diff --git a/java/com/android/contacts/common/res/values-uz/strings.xml b/java/com/android/contacts/common/res/values-uz/strings.xml
index 44bfd99..a0fc05f 100644
--- a/java/com/android/contacts/common/res/values-uz/strings.xml
+++ b/java/com/android/contacts/common/res/values-uz/strings.xml
@@ -26,7 +26,7 @@
     <string name="call_fax_work" msgid="5260192771364592922">"Ish faks raqamiga qo‘ng‘iroq qilish"</string>
     <string name="call_fax_home" msgid="5174311195081144124">"Uy faks raqamiga qo‘ng‘iroq qilish"</string>
     <string name="call_pager" msgid="6814149227741274161">"Peyjerga qo‘ng‘iroq qilish"</string>
-    <string name="call_other" msgid="5536385588712587235">"Qo‘ng‘iroq qilish"</string>
+    <string name="call_other" msgid="5536385588712587235">"Chaqiruv"</string>
     <string name="call_callback" msgid="6314019862718112786">"Qayta qo‘ng‘iroq raqamiga qo‘ng‘iroq qilish"</string>
     <string name="call_car" msgid="3197417098027764954">"Mashina telefon raqamiga qo‘ng‘iroq qilish"</string>
     <string name="call_company_main" msgid="2557663310028446397">"Kompaniya asosiy raqamiga qo‘ng‘iroq qilish"</string>
@@ -40,7 +40,7 @@
     <string name="call_work_pager" msgid="3791778749827366574">"Ish peyjeriga qo‘ng‘iroq qilish"</string>
     <string name="call_assistant" msgid="4177478845473789294">"Qo‘ng‘iroq: <xliff:g id="ASSISTANT">%s</xliff:g>"</string>
     <string name="call_mms" msgid="4958811711741872901">"MMS raqamga qo‘ng‘iroq qilish"</string>
-    <string name="call_by_shortcut" msgid="4623082183552111045">"<xliff:g id="CONTACT_NAME">%s</xliff:g> (Qo‘ng‘iroq qilish)"</string>
+    <string name="call_by_shortcut" msgid="4623082183552111045">"<xliff:g id="CONTACT_NAME">%s</xliff:g> (Chaqiruv)"</string>
     <string name="sms_custom" msgid="8785368968605026317">"<xliff:g id="CUSTOM">%s</xliff:g>ga sms jo‘natish"</string>
     <string name="sms_home" msgid="3527719551060295243">"Uy telefoniga sms jo‘natish"</string>
     <string name="sms_mobile" msgid="8883045857887736518">"SMS: mobil"</string>
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Tashqarida"</string>
     <string name="status_busy" msgid="5990832098713248503">"Band"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktlar"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Eng faol"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Boshqa"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktoriya"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Ishchi katalogi"</string>
     <string name="local_search_label" msgid="907622822323119235">"Barcha kontaktlar"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Takliflar"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Men"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Qidirilmoqda…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>dan ko‘proq topildi."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Qo‘ng‘iroqqa qo‘shib yuborish uchun izoh yozing ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"YUBORISH va QO‘NG‘IROQ QILISH"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ichki oynasi."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ichki oynasi. <xliff:g id="COUNT_3">%2$d</xliff:g> ta o‘qilmagan narsa. </item>
diff --git a/java/com/android/contacts/common/res/values-vi/strings.xml b/java/com/android/contacts/common/res/values-vi/strings.xml
index dadb78a..65a1c65 100644
--- a/java/com/android/contacts/common/res/values-vi/strings.xml
+++ b/java/com/android/contacts/common/res/values-vi/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Đã ra ngoài"</string>
     <string name="status_busy" msgid="5990832098713248503">"Bận"</string>
     <string name="contactsList" msgid="8806067891419291513">"Danh bạ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Đề xuất hàng đầu"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Khác"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Thư mục"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Thư mục công việc"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tất cả liên hệ"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Đề xuất"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Tôi"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Đang tìm kiếm…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Đã tìm thấy hơn <xliff:g id="COUNT">%d</xliff:g> người liên hệ."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Nhập ghi chú để gửi kèm cuộc gọi..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"GỬI và GỌI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Tab <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> mục chưa đọc. </item>
diff --git a/java/com/android/contacts/common/res/values-zh-rCN/strings.xml b/java/com/android/contacts/common/res/values-zh-rCN/strings.xml
index 161638e..ee44513 100644
--- a/java/com/android/contacts/common/res/values-zh-rCN/strings.xml
+++ b/java/com/android/contacts/common/res/values-zh-rCN/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"离开"</string>
     <string name="status_busy" msgid="5990832098713248503">"忙碌"</string>
     <string name="contactsList" msgid="8806067891419291513">"通讯录"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"常用联系人推荐"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"其他"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"目录"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"工作目录"</string>
     <string name="local_search_label" msgid="907622822323119235">"所有联系人"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"建议"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"我"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"正在搜索..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"找到超过 <xliff:g id="COUNT">%d</xliff:g> 位联系人。"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"输入要在拨打电话时发送的备注…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"发送并拨打电话"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g>：<xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>标签。"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>标签。<xliff:g id="COUNT_3">%2$d</xliff:g> 项未读内容。</item>
diff --git a/java/com/android/contacts/common/res/values-zh-rHK/strings.xml b/java/com/android/contacts/common/res/values-zh-rHK/strings.xml
index 9952ab6..842ac87 100644
--- a/java/com/android/contacts/common/res/values-zh-rHK/strings.xml
+++ b/java/com/android/contacts/common/res/values-zh-rHK/strings.xml
@@ -64,16 +64,18 @@
     <string name="sms_mms" msgid="5187888900503248542">"傳送短訊至 MMS 電話號碼"</string>
     <string name="sms_by_shortcut" msgid="8005496406639963582">"<xliff:g id="CONTACT_NAME">%s</xliff:g> (訊息)"</string>
     <string name="clearFrequentsConfirmation_title" msgid="7465690215775790243">"清除常用聯絡人？"</string>
-    <string name="clearFrequentsConfirmation" msgid="5750611450893399198">"您將清除「通訊錄」應用程式和「電話」應用程式中的常用聯絡人名單，並強制電子郵件應用程式重新取得您的寄件喜好設定。"</string>
+    <string name="clearFrequentsConfirmation" msgid="5750611450893399198">"您將清除「通訊錄」應用程式和「電話」應用程式中的常用聯絡人名單，並強制電子郵件應用程式重新取得您的寄件偏好設定。"</string>
     <string name="clearFrequentsProgress_title" msgid="2057183487226039454">"正在清除常用聯絡人…"</string>
     <string name="status_available" msgid="2648156525685472626">"在線"</string>
     <string name="status_away" msgid="2298688367552893953">"離開"</string>
     <string name="status_busy" msgid="5990832098713248503">"忙碌"</string>
     <string name="contactsList" msgid="8806067891419291513">"通訊錄"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"熱門建議"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"其他"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"名錄"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"工作目錄"</string>
     <string name="local_search_label" msgid="907622822323119235">"所有聯絡人"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"建議"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"我"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"正在搜尋..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"找到超過 <xliff:g id="COUNT">%d</xliff:g> 位聯絡人。"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"撥號時可以書寫和傳送筆記…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"傳送和撥號"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"「<xliff:g id="TITLE">%1$s</xliff:g>」標籤。"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">「<xliff:g id="TITLE_2">%1$s</xliff:g>」標籤 (<xliff:g id="COUNT_3">%2$d</xliff:g> 個未讀取項目)。</item>
diff --git a/java/com/android/contacts/common/res/values-zh-rTW/strings.xml b/java/com/android/contacts/common/res/values-zh-rTW/strings.xml
index e5ad61f..64b6105 100644
--- a/java/com/android/contacts/common/res/values-zh-rTW/strings.xml
+++ b/java/com/android/contacts/common/res/values-zh-rTW/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"離開"</string>
     <string name="status_busy" msgid="5990832098713248503">"忙碌"</string>
     <string name="contactsList" msgid="8806067891419291513">"聯絡人"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"常用聯絡人建議"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"其他"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"目錄"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Work 聯絡人目錄"</string>
     <string name="local_search_label" msgid="907622822323119235">"所有聯絡人"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"建議"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"我"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"搜尋中…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"找到 <xliff:g id="COUNT">%d</xliff:g> 位以上的聯絡人。"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"輸入可在撥號時傳送的備註..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"傳送並撥打"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>分頁。"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>分頁。<xliff:g id="COUNT_3">%2$d</xliff:g> 個未讀項目。</item>
diff --git a/java/com/android/contacts/common/res/values-zu/strings.xml b/java/com/android/contacts/common/res/values-zu/strings.xml
index adca139..e78a6b3 100644
--- a/java/com/android/contacts/common/res/values-zu/strings.xml
+++ b/java/com/android/contacts/common/res/values-zu/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ngiphumile"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ngimatasa"</string>
     <string name="contactsList" msgid="8806067891419291513">"Othi tana nabo"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Okuphezulu okuphakanyisiwe"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Okunye"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Uhla lwemibhalo"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Uhla lwemibhalo lomsebenzi"</string>
     <string name="local_search_label" msgid="907622822323119235">"Bonke othintana nabo"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Iziphakamiso"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mina"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Iyasesha..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Abangaphezu kuka-<xliff:g id="COUNT">%d</xliff:g> abatholakele."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Thayipha inothi ukuthumela nekholi ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"THUMELA FUTHI YENZA IKHOLI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ithebhu."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"><xliff:g id="TITLE_2">%1$s</xliff:g> ithebhu. <xliff:g id="COUNT_3">%2$d</xliff:g> izinto ezingafundiwe. </item>
diff --git a/java/com/android/contacts/common/res/values/dimens.xml b/java/com/android/contacts/common/res/values/dimens.xml
index 642eb31..26f095f 100644
--- a/java/com/android/contacts/common/res/values/dimens.xml
+++ b/java/com/android/contacts/common/res/values/dimens.xml
@@ -107,7 +107,7 @@
   <dimen name="tab_selected_underline_height">2dp</dimen>
   <!-- Size of text in tabs. -->
   <dimen name="tab_text_size">14sp</dimen>
-  <dimen name="tab_elevation">2dp</dimen>
+  <dimen name="tab_elevation">0dp</dimen>
   <dimen name="tab_unread_count_background_size">16dp</dimen>
   <dimen name="tab_unread_count_background_radius">2dp</dimen>
   <dimen name="tab_unread_count_margin_left">0dp</dimen>
diff --git a/java/com/android/contacts/common/res/values/ids.xml b/java/com/android/contacts/common/res/values/ids.xml
index 871f5a6..65969c4 100644
--- a/java/com/android/contacts/common/res/values/ids.xml
+++ b/java/com/android/contacts/common/res/values/ids.xml
@@ -27,4 +27,5 @@
 
   <item name="contact_tile_image" type="id"/>
   <item name="contact_tile_name" type="id"/>
+  <item name="call_to_action" type="id"/>
 </resources>
diff --git a/java/com/android/contacts/common/res/values/strings.xml b/java/com/android/contacts/common/res/values/strings.xml
index 9ac9fef..85866f7 100644
--- a/java/com/android/contacts/common/res/values/strings.xml
+++ b/java/com/android/contacts/common/res/values/strings.xml
@@ -143,6 +143,9 @@
   <!-- Directory partition name (also exists in contacts) -->
   <string name="contactsList">Contacts</string>
 
+  <!-- Directory partition name for p13n suggestions -->
+  <string name="contact_suggestions">Top Suggested</string>
+
   <!-- The name of the invisible local contact directory -->
   <string name="local_invisible_directory">Other</string>
 
@@ -155,6 +158,9 @@
   <!-- The label in section header in the contact list for a local contacts [CHAR LIMIT=128] -->
   <string name="local_search_label">All contacts</string>
 
+  <!-- The label in section header in the contact list for a local suggested contacts [CHAR LIMIT=128] -->
+  <string name="local_suggestions_search_label">Suggestions</string>
+
   <!-- String describing the text on the header of the profile contact in the contacts list
        This may be programatically capitalized. [CHAR LIMIT=20] -->
   <string msgid="9154761216179882405" name="user_profile_contacts_list_header">Me</string>
@@ -744,9 +750,9 @@
        compared to the character limit.  Example: 2 / 64 -->
   <string name="call_subject_limit"><xliff:g example="4" id="count">%1$s</xliff:g> / <xliff:g example="64" id="limit">%2$s</xliff:g></string>
 
-  <!-- String used to build a phone number bype and phone number string.
-       Example: Mobile • 650-555-1212  -->
-  <string name="call_subject_type_and_number"><xliff:g example="Mobile" id="type">%1$s</xliff:g> • <xliff:g example="(650) 555-1212" id="number">%2$s</xliff:g></string>
+  <!-- String used to build a phone number type and phone number string.
+       Example: Mobile 650-555-1212  -->
+  <string name="call_subject_type_and_number"><xliff:g example="Mobile" id="type">%1$s</xliff:g> <xliff:g example="(650) 555-1212" id="number">%2$s</xliff:g></string>
 
   <!-- String format to describe a tab e.g.call history tab. -->
   <string name="tab_title"><xliff:g id="title">%1$s</xliff:g> tab.</string>
diff --git a/java/com/android/contacts/common/res/values/styles.xml b/java/com/android/contacts/common/res/values/styles.xml
index 07d4a02..bb19afe 100644
--- a/java/com/android/contacts/common/res/values/styles.xml
+++ b/java/com/android/contacts/common/res/values/styles.xml
@@ -43,7 +43,6 @@
     <item name="android:layout_height">wrap_content</item>
     <!-- See comments for @dimen/list_section_divider_min_height -->
     <item name="android:minHeight">@dimen/list_section_divider_min_height</item>
-    <item name="android:background">@drawable/list_section_divider_holo_custom</item>
     <item name="android:textAppearance">@style/DirectoryHeaderStyle</item>
     <item name="android:gravity">center_vertical</item>
     <item name="android:paddingLeft">8dip</item>
diff --git a/java/com/android/contacts/common/util/AccountFilterUtil.java b/java/com/android/contacts/common/util/AccountFilterUtil.java
index 18743c6..25f937c 100644
--- a/java/com/android/contacts/common/util/AccountFilterUtil.java
+++ b/java/com/android/contacts/common/util/AccountFilterUtil.java
@@ -16,35 +16,15 @@
 
 package com.android.contacts.common.util;
 
-import android.app.Activity;
 import android.content.Context;
-import android.content.Intent;
-import android.util.Log;
 import android.view.View;
 import android.widget.TextView;
 import com.android.contacts.common.R;
 import com.android.contacts.common.list.ContactListFilter;
-import com.android.contacts.common.list.ContactListFilterController;
 
 /** Utility class for account filter manipulation. */
 public class AccountFilterUtil {
 
-  public static final String EXTRA_CONTACT_LIST_FILTER = "contactListFilter";
-  private static final String TAG = AccountFilterUtil.class.getSimpleName();
-
-  /**
-   * Find TextView with the id "account_filter_header" and set correct text for the account filter
-   * header.
-   *
-   * @param filterContainer View containing TextView with id "account_filter_header"
-   * @return true when header text is set in the call. You may use this for conditionally showing or
-   *     hiding this entire view.
-   */
-  public static boolean updateAccountFilterTitleForPeople(
-      View filterContainer, ContactListFilter filter, boolean showTitleForAllAccounts) {
-    return updateAccountFilterTitle(filterContainer, filter, showTitleForAllAccounts, false);
-  }
-
   /**
    * Similar to {@link #updateAccountFilterTitleForPeople(View, ContactListFilter, boolean,
    * boolean)}, but for Phone UI.
@@ -78,8 +58,6 @@
         } else if (filter.filterType == ContactListFilter.FILTER_TYPE_CUSTOM) {
           headerTextView.setText(R.string.listCustomView);
           textWasSet = true;
-        } else {
-          Log.w(TAG, "Filter type \"" + filter.filterType + "\" isn't expected.");
         }
       } else {
         if (filter.filterType == ContactListFilter.FILTER_TYPE_ALL_ACCOUNTS) {
@@ -97,29 +75,9 @@
         } else if (filter.filterType == ContactListFilter.FILTER_TYPE_SINGLE_CONTACT) {
           headerTextView.setText(R.string.listSingleContact);
           textWasSet = true;
-        } else {
-          Log.w(TAG, "Filter type \"" + filter.filterType + "\" isn't expected.");
         }
       }
-    } else {
-      Log.w(TAG, "Filter is null.");
     }
     return textWasSet;
   }
-
-  /** This will update filter via a given ContactListFilterController. */
-  public static void handleAccountFilterResult(
-      ContactListFilterController filterController, int resultCode, Intent data) {
-    if (resultCode == Activity.RESULT_OK) {
-      final ContactListFilter filter = data.getParcelableExtra(EXTRA_CONTACT_LIST_FILTER);
-      if (filter == null) {
-        return;
-      }
-      if (filter.filterType == ContactListFilter.FILTER_TYPE_CUSTOM) {
-        filterController.selectCustomFilter();
-      } else {
-        filterController.setContactListFilter(filter, true);
-      }
-    }
-  }
 }
diff --git a/java/com/android/contacts/common/util/BitmapUtil.java b/java/com/android/contacts/common/util/BitmapUtil.java
index 20f916a..51f65f2 100644
--- a/java/com/android/contacts/common/util/BitmapUtil.java
+++ b/java/com/android/contacts/common/util/BitmapUtil.java
@@ -24,8 +24,6 @@
 import android.graphics.PorterDuffXfermode;
 import android.graphics.Rect;
 import android.graphics.RectF;
-import android.graphics.drawable.BitmapDrawable;
-import android.graphics.drawable.Drawable;
 
 /** Provides static functions to decode bitmaps at the optimal size */
 public class BitmapUtil {
@@ -91,30 +89,6 @@
   }
 
   /**
-   * Retrieves a copy of the specified drawable resource, rotated by a specified angle.
-   *
-   * @param resources The current resources.
-   * @param resourceId The resource ID of the drawable to rotate.
-   * @param angle The angle of rotation.
-   * @return Rotated drawable.
-   */
-  public static Drawable getRotatedDrawable(
-      android.content.res.Resources resources, int resourceId, float angle) {
-
-    // Get the original drawable and make a copy which will be rotated.
-    Bitmap original = BitmapFactory.decodeResource(resources, resourceId);
-    Bitmap rotated =
-        Bitmap.createBitmap(original.getWidth(), original.getHeight(), Bitmap.Config.ARGB_8888);
-
-    // Perform the rotation.
-    Canvas tempCanvas = new Canvas(rotated);
-    tempCanvas.rotate(angle, original.getWidth() / 2, original.getHeight() / 2);
-    tempCanvas.drawBitmap(original, 0, 0, null);
-
-    return new BitmapDrawable(resources, rotated);
-  }
-
-  /**
    * Given an input bitmap, scales it to the given width/height and makes it round.
    *
    * @param input {@link Bitmap} to scale and crop
diff --git a/java/com/android/contacts/common/util/ContactDisplayUtils.java b/java/com/android/contacts/common/util/ContactDisplayUtils.java
index 1586784..ff22f28 100644
--- a/java/com/android/contacts/common/util/ContactDisplayUtils.java
+++ b/java/com/android/contacts/common/util/ContactDisplayUtils.java
@@ -16,21 +16,20 @@
 
 package com.android.contacts.common.util;
 
-import static android.provider.ContactsContract.CommonDataKinds.Phone;
-
 import android.content.Context;
 import android.content.res.Resources;
+import android.provider.ContactsContract.CommonDataKinds.Phone;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.text.Spannable;
 import android.text.SpannableString;
 import android.text.TextUtils;
 import android.text.style.TtsSpan;
-import android.util.Log;
 import android.util.Patterns;
 import com.android.contacts.common.R;
 import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.contacts.common.preference.ContactsPreferences;
+import com.android.dialer.common.LogUtil;
 import java.util.Objects;
 
 /** Methods for handling various contact data labels. */
@@ -38,7 +37,6 @@
 
   public static final int INTERACTION_CALL = 1;
   public static final int INTERACTION_SMS = 2;
-  private static final String TAG = ContactDisplayUtils.class.getSimpleName();
 
   /**
    * Checks if the given data type is a custom type.
@@ -74,9 +72,9 @@
       } else {
         resId = getPhoneLabelResourceId(type);
         if (interactionType != INTERACTION_CALL) {
-          Log.e(
-              TAG,
-              "Un-recognized interaction type: "
+          LogUtil.e(
+              "ContactDisplayUtils.getLabelForCallOrSms",
+              "un-recognized interaction type: "
                   + interactionType
                   + ". Defaulting to ContactDisplayUtils.INTERACTION_CALL.");
         }
diff --git a/java/com/android/contacts/common/util/DateUtils.java b/java/com/android/contacts/common/util/DateUtils.java
index 1935d72..09d52bc 100644
--- a/java/com/android/contacts/common/util/DateUtils.java
+++ b/java/com/android/contacts/common/util/DateUtils.java
@@ -16,252 +16,11 @@
 
 package com.android.contacts.common.util;
 
-import android.content.Context;
-import android.text.format.DateFormat;
 import android.text.format.Time;
-import java.text.ParsePosition;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.Locale;
-import java.util.TimeZone;
 
 /** Utility methods for processing dates. */
 public class DateUtils {
 
-  public static final TimeZone UTC_TIMEZONE = TimeZone.getTimeZone("UTC");
-
-  /**
-   * When parsing a date without a year, the system assumes 1970, which wasn't a leap-year. Let's
-   * add a one-off hack for that day of the year
-   */
-  public static final String NO_YEAR_DATE_FEB29TH = "--02-29";
-
-  // Variations of ISO 8601 date format.  Do not change the order - it does affect the
-  // result in ambiguous cases.
-  private static final SimpleDateFormat[] DATE_FORMATS = {
-    CommonDateUtils.FULL_DATE_FORMAT,
-    CommonDateUtils.DATE_AND_TIME_FORMAT,
-    new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'", Locale.US),
-    new SimpleDateFormat("yyyyMMdd", Locale.US),
-    new SimpleDateFormat("yyyyMMdd'T'HHmmssSSS'Z'", Locale.US),
-    new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'", Locale.US),
-    new SimpleDateFormat("yyyyMMdd'T'HHmm'Z'", Locale.US),
-  };
-
-  static {
-    for (SimpleDateFormat format : DATE_FORMATS) {
-      format.setLenient(true);
-      format.setTimeZone(UTC_TIMEZONE);
-    }
-    CommonDateUtils.NO_YEAR_DATE_FORMAT.setTimeZone(UTC_TIMEZONE);
-  }
-
-  /**
-   * Parses the supplied string to see if it looks like a date.
-   *
-   * @param string The string representation of the provided date
-   * @param mustContainYear If true, the string is parsed as a date containing a year. If false, the
-   *     string is parsed into a valid date even if the year field is missing.
-   * @return A Calendar object corresponding to the date if the string is successfully parsed. If
-   *     not, null is returned.
-   */
-  public static Calendar parseDate(String string, boolean mustContainYear) {
-    ParsePosition parsePosition = new ParsePosition(0);
-    Date date;
-    if (!mustContainYear) {
-      final boolean noYearParsed;
-      // Unfortunately, we can't parse Feb 29th correctly, so let's handle this day seperately
-      if (NO_YEAR_DATE_FEB29TH.equals(string)) {
-        return getUtcDate(0, Calendar.FEBRUARY, 29);
-      } else {
-        synchronized (CommonDateUtils.NO_YEAR_DATE_FORMAT) {
-          date = CommonDateUtils.NO_YEAR_DATE_FORMAT.parse(string, parsePosition);
-        }
-        noYearParsed = parsePosition.getIndex() == string.length();
-      }
-
-      if (noYearParsed) {
-        return getUtcDate(date, true);
-      }
-    }
-    for (int i = 0; i < DATE_FORMATS.length; i++) {
-      SimpleDateFormat f = DATE_FORMATS[i];
-      synchronized (f) {
-        parsePosition.setIndex(0);
-        date = f.parse(string, parsePosition);
-        if (parsePosition.getIndex() == string.length()) {
-          return getUtcDate(date, false);
-        }
-      }
-    }
-    return null;
-  }
-
-  private static final Calendar getUtcDate(Date date, boolean noYear) {
-    final Calendar calendar = Calendar.getInstance(UTC_TIMEZONE, Locale.US);
-    calendar.setTime(date);
-    if (noYear) {
-      calendar.set(Calendar.YEAR, 0);
-    }
-    return calendar;
-  }
-
-  private static final Calendar getUtcDate(int year, int month, int dayOfMonth) {
-    final Calendar calendar = Calendar.getInstance(UTC_TIMEZONE, Locale.US);
-    calendar.clear();
-    calendar.set(Calendar.YEAR, year);
-    calendar.set(Calendar.MONTH, month);
-    calendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
-    return calendar;
-  }
-
-  public static boolean isYearSet(Calendar cal) {
-    // use the Calendar.YEAR field to track whether or not the year is set instead of
-    // Calendar.isSet() because doing Calendar.get() causes Calendar.isSet() to become
-    // true irregardless of what the previous value was
-    return cal.get(Calendar.YEAR) > 1;
-  }
-
-  /**
-   * Same as {@link #formatDate(Context context, String string, boolean longForm)}, with longForm
-   * set to {@code true} by default.
-   *
-   * @param context Valid context
-   * @param string String representation of a date to parse
-   * @return Returns the same date in a cleaned up format. If the supplied string does not look like
-   *     a date, return it unchanged.
-   */
-  public static String formatDate(Context context, String string) {
-    return formatDate(context, string, true);
-  }
-
-  /**
-   * Parses the supplied string to see if it looks like a date.
-   *
-   * @param context Valid context
-   * @param string String representation of a date to parse
-   * @param longForm If true, return the date formatted into its long string representation. If
-   *     false, return the date formatted using its short form representation (i.e. 12/11/2012)
-   * @return Returns the same date in a cleaned up format. If the supplied string does not look like
-   *     a date, return it unchanged.
-   */
-  public static String formatDate(Context context, String string, boolean longForm) {
-    if (string == null) {
-      return null;
-    }
-
-    string = string.trim();
-    if (string.length() == 0) {
-      return string;
-    }
-    final Calendar cal = parseDate(string, false);
-
-    // we weren't able to parse the string successfully so just return it unchanged
-    if (cal == null) {
-      return string;
-    }
-
-    final boolean isYearSet = isYearSet(cal);
-    final java.text.DateFormat outFormat;
-    if (!isYearSet) {
-      outFormat = getLocalizedDateFormatWithoutYear(context);
-    } else {
-      outFormat =
-          longForm ? DateFormat.getLongDateFormat(context) : DateFormat.getDateFormat(context);
-    }
-    synchronized (outFormat) {
-      outFormat.setTimeZone(UTC_TIMEZONE);
-      return outFormat.format(cal.getTime());
-    }
-  }
-
-  public static boolean isMonthBeforeDay(Context context) {
-    char[] dateFormatOrder = DateFormat.getDateFormatOrder(context);
-    for (int i = 0; i < dateFormatOrder.length; i++) {
-      if (dateFormatOrder[i] == 'd') {
-        return false;
-      }
-      if (dateFormatOrder[i] == 'M') {
-        return true;
-      }
-    }
-    return false;
-  }
-
-  /**
-   * Returns a SimpleDateFormat object without the year fields by using a regular expression to
-   * eliminate the year in the string pattern. In the rare occurence that the resulting pattern
-   * cannot be reconverted into a SimpleDateFormat, it uses the provided context to determine
-   * whether the month field should be displayed before the day field, and returns either "MMMM dd"
-   * or "dd MMMM" converted into a SimpleDateFormat.
-   */
-  public static java.text.DateFormat getLocalizedDateFormatWithoutYear(Context context) {
-    final String pattern =
-        ((SimpleDateFormat) SimpleDateFormat.getDateInstance(java.text.DateFormat.LONG))
-            .toPattern();
-    // Determine the correct regex pattern for year.
-    // Special case handling for Spanish locale by checking for "de"
-    final String yearPattern =
-        pattern.contains("de") ? "[^Mm]*[Yy]+[^Mm]*" : "[^DdMm]*[Yy]+[^DdMm]*";
-    try {
-      // Eliminate the substring in pattern that matches the format for that of year
-      return new SimpleDateFormat(pattern.replaceAll(yearPattern, ""));
-    } catch (IllegalArgumentException e) {
-      return new SimpleDateFormat(DateUtils.isMonthBeforeDay(context) ? "MMMM dd" : "dd MMMM");
-    }
-  }
-
-  /**
-   * Given a calendar (possibly containing only a day of the year), returns the earliest possible
-   * anniversary of the date that is equal to or after the current point in time if the date does
-   * not contain a year, or the date converted to the local time zone (if the date contains a year.
-   *
-   * @param target The date we wish to convert(in the UTC time zone).
-   * @return If date does not contain a year (year < 1900), returns the next earliest anniversary
-   *     that is after the current point in time (in the local time zone). Otherwise, returns the
-   *     adjusted Date in the local time zone.
-   */
-  public static Date getNextAnnualDate(Calendar target) {
-    final Calendar today = Calendar.getInstance();
-    today.setTime(new Date());
-
-    // Round the current time to the exact start of today so that when we compare
-    // today against the target date, both dates are set to exactly 0000H.
-    today.set(Calendar.HOUR_OF_DAY, 0);
-    today.set(Calendar.MINUTE, 0);
-    today.set(Calendar.SECOND, 0);
-    today.set(Calendar.MILLISECOND, 0);
-
-    final boolean isYearSet = isYearSet(target);
-    final int targetYear = target.get(Calendar.YEAR);
-    final int targetMonth = target.get(Calendar.MONTH);
-    final int targetDay = target.get(Calendar.DAY_OF_MONTH);
-    final boolean isFeb29 = (targetMonth == Calendar.FEBRUARY && targetDay == 29);
-    final GregorianCalendar anniversary = new GregorianCalendar();
-    // Convert from the UTC date to the local date. Set the year to today's year if the
-    // there is no provided year (targetYear < 1900)
-    anniversary.set(!isYearSet ? today.get(Calendar.YEAR) : targetYear, targetMonth, targetDay);
-    // If the anniversary's date is before the start of today and there is no year set,
-    // increment the year by 1 so that the returned date is always equal to or greater than
-    // today. If the day is a leap year, keep going until we get the next leap year anniversary
-    // Otherwise if there is already a year set, simply return the exact date.
-    if (!isYearSet) {
-      int anniversaryYear = today.get(Calendar.YEAR);
-      if (anniversary.before(today) || (isFeb29 && !anniversary.isLeapYear(anniversaryYear))) {
-        // If the target date is not Feb 29, then set the anniversary to the next year.
-        // Otherwise, keep going until we find the next leap year (this is not guaranteed
-        // to be in 4 years time).
-        do {
-          anniversaryYear += 1;
-        } while (isFeb29 && !anniversary.isLeapYear(anniversaryYear));
-        anniversary.set(anniversaryYear, targetMonth, targetDay);
-      }
-    }
-    return anniversary.getTime();
-  }
-
   /**
    * Determine the difference, in days between two dates. Uses similar logic as the {@link
    * android.text.format.DateUtils.getRelativeTimeSpanString} method.
diff --git a/java/com/android/contacts/common/util/MaterialColorMapUtils.java b/java/com/android/contacts/common/util/MaterialColorMapUtils.java
index a2d9847..bd32faa 100644
--- a/java/com/android/contacts/common/util/MaterialColorMapUtils.java
+++ b/java/com/android/contacts/common/util/MaterialColorMapUtils.java
@@ -21,7 +21,6 @@
 import android.os.Parcel;
 import android.os.Parcelable;
 import android.os.Trace;
-import com.android.contacts.common.R;
 
 public class MaterialColorMapUtils {
 
@@ -35,13 +34,6 @@
         resources.obtainTypedArray(com.android.contacts.common.R.array.letter_tile_colors_dark);
   }
 
-  public static MaterialPalette getDefaultPrimaryAndSecondaryColors(Resources resources) {
-    final int primaryColor = resources.getColor(R.color.quickcontact_default_photo_tint_color);
-    final int secondaryColor =
-        resources.getColor(R.color.quickcontact_default_photo_tint_color_dark);
-    return new MaterialPalette(primaryColor, secondaryColor);
-  }
-
   /**
    * Returns the hue component of a color int.
    *
diff --git a/java/com/android/contacts/common/util/NameConverter.java b/java/com/android/contacts/common/util/NameConverter.java
deleted file mode 100644
index ae3275d..0000000
--- a/java/com/android/contacts/common/util/NameConverter.java
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * Copyright (C) 2011 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.contacts.common.util;
-
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.Cursor;
-import android.net.Uri;
-import android.net.Uri.Builder;
-import android.provider.ContactsContract;
-import android.provider.ContactsContract.CommonDataKinds.StructuredName;
-import android.text.TextUtils;
-import com.android.contacts.common.model.dataitem.StructuredNameDataItem;
-import java.util.Map;
-import java.util.TreeMap;
-
-/**
- * Utility class for converting between a display name and structured name (and vice-versa), via
- * calls to the contact provider.
- */
-public class NameConverter {
-
-  /** The array of fields that comprise a structured name. */
-  public static final String[] STRUCTURED_NAME_FIELDS =
-      new String[] {
-        StructuredName.PREFIX,
-        StructuredName.GIVEN_NAME,
-        StructuredName.MIDDLE_NAME,
-        StructuredName.FAMILY_NAME,
-        StructuredName.SUFFIX
-      };
-
-  /**
-   * Converts the given structured name (provided as a map from {@link StructuredName} fields to
-   * corresponding values) into a display name string.
-   *
-   * <p>Note that this operates via a call back to the ContactProvider, but it does not access the
-   * database, so it should be safe to call from the UI thread. See ContactsProvider2.completeName()
-   * for the underlying method call.
-   *
-   * @param context Activity context.
-   * @param structuredName The structured name map to convert.
-   * @return The display name computed from the structured name map.
-   */
-  public static String structuredNameToDisplayName(
-      Context context, Map<String, String> structuredName) {
-    Builder builder = ContactsContract.AUTHORITY_URI.buildUpon().appendPath("complete_name");
-    for (String key : STRUCTURED_NAME_FIELDS) {
-      if (structuredName.containsKey(key)) {
-        appendQueryParameter(builder, key, structuredName.get(key));
-      }
-    }
-    return fetchDisplayName(context, builder.build());
-  }
-
-  /**
-   * Converts the given structured name (provided as ContentValues) into a display name string.
-   *
-   * @param context Activity context.
-   * @param values The content values containing values comprising the structured name.
-   */
-  public static String structuredNameToDisplayName(Context context, ContentValues values) {
-    Builder builder = ContactsContract.AUTHORITY_URI.buildUpon().appendPath("complete_name");
-    for (String key : STRUCTURED_NAME_FIELDS) {
-      if (values.containsKey(key)) {
-        appendQueryParameter(builder, key, values.getAsString(key));
-      }
-    }
-    return fetchDisplayName(context, builder.build());
-  }
-
-  /** Helper method for fetching the display name via the given URI. */
-  private static String fetchDisplayName(Context context, Uri uri) {
-    String displayName = null;
-    Cursor cursor =
-        context
-            .getContentResolver()
-            .query(
-                uri,
-                new String[] {
-                  StructuredName.DISPLAY_NAME,
-                },
-                null,
-                null,
-                null);
-
-    if (cursor != null) {
-      try {
-        if (cursor.moveToFirst()) {
-          displayName = cursor.getString(0);
-        }
-      } finally {
-        cursor.close();
-      }
-    }
-    return displayName;
-  }
-
-  /**
-   * Converts the given display name string into a structured name (as a map from {@link
-   * StructuredName} fields to corresponding values).
-   *
-   * <p>Note that this operates via a call back to the ContactProvider, but it does not access the
-   * database, so it should be safe to call from the UI thread.
-   *
-   * @param context Activity context.
-   * @param displayName The display name to convert.
-   * @return The structured name map computed from the display name.
-   */
-  public static Map<String, String> displayNameToStructuredName(
-      Context context, String displayName) {
-    Map<String, String> structuredName = new TreeMap<String, String>();
-    Builder builder = ContactsContract.AUTHORITY_URI.buildUpon().appendPath("complete_name");
-
-    appendQueryParameter(builder, StructuredName.DISPLAY_NAME, displayName);
-    Cursor cursor =
-        context
-            .getContentResolver()
-            .query(builder.build(), STRUCTURED_NAME_FIELDS, null, null, null);
-
-    if (cursor != null) {
-      try {
-        if (cursor.moveToFirst()) {
-          for (int i = 0; i < STRUCTURED_NAME_FIELDS.length; i++) {
-            structuredName.put(STRUCTURED_NAME_FIELDS[i], cursor.getString(i));
-          }
-        }
-      } finally {
-        cursor.close();
-      }
-    }
-    return structuredName;
-  }
-
-  /**
-   * Converts the given display name string into a structured name (inserting the structured values
-   * into a new or existing ContentValues object).
-   *
-   * <p>Note that this operates via a call back to the ContactProvider, but it does not access the
-   * database, so it should be safe to call from the UI thread.
-   *
-   * @param context Activity context.
-   * @param displayName The display name to convert.
-   * @param contentValues The content values object to place the structured name values into. If
-   *     null, a new one will be created and returned.
-   * @return The ContentValues object containing the structured name fields derived from the display
-   *     name.
-   */
-  public static ContentValues displayNameToStructuredName(
-      Context context, String displayName, ContentValues contentValues) {
-    if (contentValues == null) {
-      contentValues = new ContentValues();
-    }
-    Map<String, String> mapValues = displayNameToStructuredName(context, displayName);
-    for (String key : mapValues.keySet()) {
-      contentValues.put(key, mapValues.get(key));
-    }
-    return contentValues;
-  }
-
-  private static void appendQueryParameter(Builder builder, String field, String value) {
-    if (!TextUtils.isEmpty(value)) {
-      builder.appendQueryParameter(field, value);
-    }
-  }
-
-  /**
-   * Parses phonetic name and returns parsed data (family, middle, given) as ContentValues. Parsed
-   * data should be {@link StructuredName#PHONETIC_FAMILY_NAME}, {@link
-   * StructuredName#PHONETIC_MIDDLE_NAME}, and {@link StructuredName#PHONETIC_GIVEN_NAME}. If this
-   * method cannot parse given phoneticName, null values will be stored.
-   *
-   * @param phoneticName Phonetic name to be parsed
-   * @param values ContentValues to be used for storing data. If null, new instance will be created.
-   * @return ContentValues with parsed data. Those data can be null.
-   */
-  public static StructuredNameDataItem parsePhoneticName(
-      String phoneticName, StructuredNameDataItem item) {
-    String family = null;
-    String middle = null;
-    String given = null;
-
-    if (!TextUtils.isEmpty(phoneticName)) {
-      String[] strings = phoneticName.split(" ", 3);
-      switch (strings.length) {
-        case 1:
-          family = strings[0];
-          break;
-        case 2:
-          family = strings[0];
-          given = strings[1];
-          break;
-        case 3:
-          family = strings[0];
-          middle = strings[1];
-          given = strings[2];
-          break;
-      }
-    }
-
-    if (item == null) {
-      item = new StructuredNameDataItem();
-    }
-    item.setPhoneticFamilyName(family);
-    item.setPhoneticMiddleName(middle);
-    item.setPhoneticGivenName(given);
-    return item;
-  }
-
-  /** Constructs and returns a phonetic full name from given parts. */
-  public static String buildPhoneticName(String family, String middle, String given) {
-    if (!TextUtils.isEmpty(family) || !TextUtils.isEmpty(middle) || !TextUtils.isEmpty(given)) {
-      StringBuilder sb = new StringBuilder();
-      if (!TextUtils.isEmpty(family)) {
-        sb.append(family.trim()).append(' ');
-      }
-      if (!TextUtils.isEmpty(middle)) {
-        sb.append(middle.trim()).append(' ');
-      }
-      if (!TextUtils.isEmpty(given)) {
-        sb.append(given.trim()).append(' ');
-      }
-      sb.setLength(sb.length() - 1); // Yank the last space
-      return sb.toString();
-    } else {
-      return null;
-    }
-  }
-}
diff --git a/java/com/android/contacts/common/util/StopWatch.java b/java/com/android/contacts/common/util/StopWatch.java
index b944b98..7986d10 100644
--- a/java/com/android/contacts/common/util/StopWatch.java
+++ b/java/com/android/contacts/common/util/StopWatch.java
@@ -16,7 +16,7 @@
 
 package com.android.contacts.common.util;
 
-import android.util.Log;
+import com.android.dialer.common.LogUtil;
 import java.util.ArrayList;
 
 /** A {@link StopWatch} records start, laps and stop, and print them to logcat. */
@@ -37,11 +37,6 @@
     return new StopWatch(label);
   }
 
-  /** Return a dummy instance that does no operations. */
-  public static StopWatch getNullStopWatch() {
-    return NullStopWatch.INSTANCE;
-  }
-
   /** Record a lap. */
   public void lap(String lapLabel) {
     mTimes.add(System.currentTimeMillis());
@@ -76,25 +71,6 @@
       sb.append(" ");
       last = current;
     }
-    Log.v(TAG, sb.toString());
-  }
-
-  private static class NullStopWatch extends StopWatch {
-
-    public static final NullStopWatch INSTANCE = new NullStopWatch();
-
-    public NullStopWatch() {
-      super(null);
-    }
-
-    @Override
-    public void lap(String lapLabel) {
-      // noop
-    }
-
-    @Override
-    public void stopAndLog(String TAG, int timeThresholdToLog) {
-      // noop
-    }
+    LogUtil.v(TAG, sb.toString());
   }
 }
diff --git a/java/com/android/contacts/common/util/TelephonyManagerUtils.java b/java/com/android/contacts/common/util/TelephonyManagerUtils.java
index b664268..e4c2c63 100644
--- a/java/com/android/contacts/common/util/TelephonyManagerUtils.java
+++ b/java/com/android/contacts/common/util/TelephonyManagerUtils.java
@@ -33,13 +33,4 @@
     final String voiceMailLabel = telephonyManager.getVoiceMailAlphaTag();
     return voiceMailLabel;
   }
-
-  /**
-   * @param context Current application context.
-   * @return True if there is a subscription which supports video calls. False otherwise.
-   */
-  public static boolean hasVideoCallSubscription(Context context) {
-    // TODO: Check the telephony manager's subscriptions to see if any support video calls.
-    return true;
-  }
 }
diff --git a/java/com/android/contacts/common/util/TrafficStatsTags.java b/java/com/android/contacts/common/util/TrafficStatsTags.java
deleted file mode 100644
index b0e7fb5..0000000
--- a/java/com/android/contacts/common/util/TrafficStatsTags.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Copyright (C) 2015 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.contacts.common.util;
-
-public class TrafficStatsTags {
-
-  public static final int CONTACT_PHOTO_DOWNLOAD_TAG = 0x0001;
-  public static final int TAG_MAX = 0x9999;
-}
diff --git a/java/com/android/dialer/about/AndroidManifest.xml b/java/com/android/dialer/about/AndroidManifest.xml
index e9489ce..85c7508 100644
--- a/java/com/android/dialer/about/AndroidManifest.xml
+++ b/java/com/android/dialer/about/AndroidManifest.xml
@@ -1,6 +1,6 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.about">
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
     <activity
         android:name="com.android.dialer.about.LicenseMenuActivity"
         android:label="@string/licenseActivityLabel"
diff --git a/java/com/android/dialer/about/res/raw/keep.xml b/java/com/android/dialer/about/res/raw/keep.xml
index e41b8b8..9215627 100644
--- a/java/com/android/dialer/about/res/raw/keep.xml
+++ b/java/com/android/dialer/about/res/raw/keep.xml
@@ -16,4 +16,3 @@
   -->
 <resources xmlns:tools="http://schemas.android.com/tools"
     tools:keep="@raw/*"/>
-
diff --git a/java/com/android/dialer/app/AndroidManifest.xml b/java/com/android/dialer/app/AndroidManifest.xml
index de4b48c..4200082 100644
--- a/java/com/android/dialer/app/AndroidManifest.xml
+++ b/java/com/android/dialer/app/AndroidManifest.xml
@@ -39,6 +39,7 @@
   <uses-permission android:name="android.permission.USE_CREDENTIALS"/>
   <uses-permission android:name="android.permission.VIBRATE"/>
   <uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
+  <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
   <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"/>
   <uses-permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"/>
   <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"/>
diff --git a/java/com/android/dialer/app/Bindings.java b/java/com/android/dialer/app/Bindings.java
index 2beb401..c8cf27e 100644
--- a/java/com/android/dialer/app/Bindings.java
+++ b/java/com/android/dialer/app/Bindings.java
@@ -17,9 +17,6 @@
 package com.android.dialer.app;
 
 import android.content.Context;
-import com.android.dialer.app.bindings.DialerBindings;
-import com.android.dialer.app.bindings.DialerBindingsFactory;
-import com.android.dialer.app.bindings.DialerBindingsStub;
 import com.android.dialer.app.legacybindings.DialerLegacyBindings;
 import com.android.dialer.app.legacybindings.DialerLegacyBindingsFactory;
 import com.android.dialer.app.legacybindings.DialerLegacyBindingsStub;
@@ -28,28 +25,10 @@
 /** Accessor for the in call UI bindings. */
 public class Bindings {
 
-  private static DialerBindings instance;
   private static DialerLegacyBindings legacyInstance;
 
   private Bindings() {}
 
-  public static DialerBindings get(Context context) {
-    Objects.requireNonNull(context);
-    if (instance != null) {
-      return instance;
-    }
-
-    Context application = context.getApplicationContext();
-    if (application instanceof DialerBindingsFactory) {
-      instance = ((DialerBindingsFactory) application).newDialerBindings();
-    }
-
-    if (instance == null) {
-      instance = new DialerBindingsStub();
-    }
-    return instance;
-  }
-
   public static DialerLegacyBindings getLegacy(Context context) {
     Objects.requireNonNull(context);
     if (legacyInstance != null) {
@@ -67,11 +46,4 @@
     return legacyInstance;
   }
 
-  public static void setForTesting(DialerBindings testInstance) {
-    instance = testInstance;
-  }
-
-  public static void setLegacyBindingForTesting(DialerLegacyBindings testLegacyInstance) {
-    legacyInstance = testLegacyInstance;
-  }
 }
diff --git a/java/com/android/dialer/app/DialtactsActivity.java b/java/com/android/dialer/app/DialtactsActivity.java
index 6e2c6be..b6025d3 100644
--- a/java/com/android/dialer/app/DialtactsActivity.java
+++ b/java/com/android/dialer/app/DialtactsActivity.java
@@ -71,10 +71,13 @@
 import com.android.dialer.animation.AnimUtils;
 import com.android.dialer.animation.AnimationListenerAdapter;
 import com.android.dialer.app.calllog.CallLogActivity;
+import com.android.dialer.app.calllog.CallLogAdapter;
 import com.android.dialer.app.calllog.CallLogFragment;
 import com.android.dialer.app.calllog.CallLogNotificationsService;
+import com.android.dialer.app.calllog.IntentProvider;
 import com.android.dialer.app.dialpad.DialpadFragment;
 import com.android.dialer.app.list.DialtactsPagerAdapter;
+import com.android.dialer.app.list.DialtactsPagerAdapter.TabIndex;
 import com.android.dialer.app.list.DragDropController;
 import com.android.dialer.app.list.ListsFragment;
 import com.android.dialer.app.list.OldSpeedDialFragment;
@@ -88,10 +91,12 @@
 import com.android.dialer.app.widget.ActionBarController;
 import com.android.dialer.app.widget.SearchEditTextLayout;
 import com.android.dialer.callcomposer.CallComposerActivity;
+import com.android.dialer.calldetails.CallDetailsActivity;
 import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.database.Database;
 import com.android.dialer.database.DialerDatabaseHelper;
 import com.android.dialer.interactions.PhoneNumberInteraction;
@@ -99,20 +104,24 @@
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.main.Main;
+import com.android.dialer.main.MainComponent;
 import com.android.dialer.p13n.inference.P13nRanking;
 import com.android.dialer.p13n.inference.protocol.P13nRanker;
 import com.android.dialer.p13n.inference.protocol.P13nRanker.P13nRefreshCompleteListener;
 import com.android.dialer.p13n.logging.P13nLogger;
 import com.android.dialer.p13n.logging.P13nLogging;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.postcall.PostCall;
 import com.android.dialer.proguard.UsedByReflection;
+import com.android.dialer.searchfragment.list.NewSearchFragment;
 import com.android.dialer.simulator.Simulator;
 import com.android.dialer.simulator.SimulatorComponent;
 import com.android.dialer.smartdial.SmartDialNameMatcher;
 import com.android.dialer.smartdial.SmartDialPrefix;
 import com.android.dialer.telecom.TelecomUtil;
 import com.android.dialer.util.DialerUtils;
-import com.android.dialer.util.IntentUtil;
 import com.android.dialer.util.PermissionsUtil;
 import com.android.dialer.util.TouchPointManager;
 import com.android.dialer.util.TransactionSafeActivity;
@@ -130,6 +139,7 @@
         DialpadFragment.OnDialpadQueryChangedListener,
         OnListFragmentScrolledListener,
         CallLogFragment.HostInterface,
+        CallLogAdapter.OnActionModeStateChangedListener,
         DialpadFragment.HostInterface,
         OldSpeedDialFragment.HostInterface,
         SearchFragment.HostInterface,
@@ -147,6 +157,7 @@
   private static final String ACTION_SHOW_TAB = "ACTION_SHOW_TAB";
   @VisibleForTesting public static final String EXTRA_SHOW_TAB = "EXTRA_SHOW_TAB";
   public static final String EXTRA_CLEAR_NEW_VOICEMAILS = "EXTRA_CLEAR_NEW_VOICEMAILS";
+  private static final String KEY_LAST_TAB = "last_tab";
   private static final String TAG = "DialtactsActivity";
   private static final String KEY_IN_REGULAR_SEARCH_UI = "in_regular_search_ui";
   private static final String KEY_IN_DIALPAD_SEARCH_UI = "in_dialpad_search_ui";
@@ -154,6 +165,7 @@
   private static final String KEY_FIRST_LAUNCH = "first_launch";
   private static final String KEY_WAS_CONFIGURATION_CHANGE = "was_configuration_change";
   private static final String KEY_IS_DIALPAD_SHOWN = "is_dialpad_shown";
+  private static final String TAG_NEW_SEARCH_FRAGMENT = "new_search";
   private static final String TAG_REGULAR_SEARCH_FRAGMENT = "search";
   private static final String TAG_SMARTDIAL_SEARCH_FRAGMENT = "smartdial";
   private static final String TAG_FAVORITES_FRAGMENT = "favorites";
@@ -162,6 +174,8 @@
 
   private static final int ACTIVITY_REQUEST_CODE_VOICE_SEARCH = 1;
   public static final int ACTIVITY_REQUEST_CODE_CALL_COMPOSE = 2;
+  public static final int ACTIVITY_REQUEST_CODE_LIGHTBRINGER = 3;
+  public static final int ACTIVITY_REQUEST_CODE_CALL_DETAILS = 4;
 
   private static final int FAB_SCALE_IN_DELAY_MS = 300;
 
@@ -180,6 +194,9 @@
   /** Fragment for searching phone numbers using the dialpad. */
   private SmartDialSearchFragment mSmartDialSearchFragment;
 
+  /** new Fragment for search phone numbers using the keyboard and the dialpad. */
+  private NewSearchFragment mNewSearchFragment;
+
   /** Animation that slides in. */
   private Animation mSlideIn;
 
@@ -225,6 +242,9 @@
 
   private P13nLogger mP13nLogger;
   private P13nRanker mP13nRanker;
+  public boolean isMultiSelectModeEnabled;
+
+  private boolean isLastTabEnabled;
 
   AnimationListenerAdapter mSlideInListener =
       new AnimationListenerAdapter() {
@@ -256,12 +276,18 @@
             // no need to do anything here.
             return;
           }
+
+          if (count != 0) {
+            PerformanceReport.recordClick(UiAction.Type.TEXT_CHANGE_WITH_INPUT);
+          }
+
           if (DEBUG) {
             LogUtil.v("DialtactsActivity.onTextChanged", "called with new query: " + newText);
             LogUtil.v("DialtactsActivity.onTextChanged", "previous query: " + mSearchQuery);
           }
           mSearchQuery = newText;
 
+          // TODO: show p13n when newText is empty.
           // Show search fragment only when the query string is changed to non-empty text.
           if (!TextUtils.isEmpty(newText)) {
             // Call enterSearchUi only if we are switching search modes, or showing a search
@@ -277,6 +303,8 @@
             mSmartDialSearchFragment.setQueryString(mSearchQuery);
           } else if (mRegularSearchFragment != null && mRegularSearchFragment.isVisible()) {
             mRegularSearchFragment.setQueryString(mSearchQuery);
+          } else if (mNewSearchFragment != null) {
+            mNewSearchFragment.setQuery(mSearchQuery);
           }
         }
 
@@ -289,6 +317,7 @@
         @Override
         public void onClick(View v) {
           if (!isInSearchUi()) {
+            PerformanceReport.recordClick(UiAction.Type.OPEN_SEARCH);
             mActionBarController.onSearchBoxTapped();
             enterSearchUi(
                 false /* smartDialSearch */, mSearchView.getText().toString(), true /* animate */);
@@ -306,9 +335,13 @@
           if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {
             if (TextUtils.isEmpty(mSearchView.getText().toString())) {
               // If the search term is empty, close the search UI.
+              PerformanceReport.recordClick(UiAction.Type.CLOSE_SEARCH_WITH_HIDE_BUTTON);
               maybeExitSearchUi();
             } else {
               // If the search term is not empty, show the dialpad fab.
+              if (!mFloatingActionButtonController.isVisible()) {
+                PerformanceReport.recordClick(UiAction.Type.HIDE_KEYBOARD_IN_SEARCH);
+              }
               showFabInSearchUi();
             }
           }
@@ -355,6 +388,7 @@
     super.onCreate(savedInstanceState);
 
     mFirstLaunch = true;
+    isLastTabEnabled = ConfigProviderBindings.get(this).getBoolean("last_tab_enabled", false);
 
     final Resources resources = getResources();
     mActionBarHeight = resources.getDimensionPixelSize(R.dimen.action_bar_height_large);
@@ -480,6 +514,13 @@
     Trace.beginSection(TAG + " onResume");
     super.onResume();
 
+    // Some calls may not be recorded (eg. from quick contact),
+    // so we should restart recording after these calls. (Recorded call is stopped)
+    PostCall.restartPerformanceRecordingIfARecentCallExist(this);
+    if (!PerformanceReport.isRecording()) {
+      PerformanceReport.startRecording();
+    }
+
     mStateSaved = false;
     if (mFirstLaunch) {
       displayFragment(getIntent());
@@ -542,7 +583,8 @@
       }
 
       if (getIntent().getBooleanExtra(EXTRA_CLEAR_NEW_VOICEMAILS, false)) {
-        CallLogNotificationsService.markNewVoicemailsAsOld(this, null);
+        LogUtil.i("DialtactsActivity.onResume", "clearing all new voicemails");
+        CallLogNotificationsService.markAllNewVoicemailsAsOld(this);
       }
     }
 
@@ -593,6 +635,10 @@
         && !getSystemService(KeyguardManager.class).isKeyguardLocked()) {
       mListsFragment.markMissedCallsAsReadAndRemoveNotifications();
     }
+    DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(this)
+        .edit()
+        .putInt(KEY_LAST_TAB, mListsFragment.getCurrentTabIndex())
+        .apply();
   }
 
   @Override
@@ -630,6 +676,8 @@
     } else if (fragment instanceof ListsFragment) {
       mListsFragment = (ListsFragment) fragment;
       mListsFragment.addOnPageChangeListener(this);
+    } else if (fragment instanceof NewSearchFragment) {
+      mNewSearchFragment = (NewSearchFragment) fragment;
     }
     if (fragment instanceof SearchFragment) {
       final SearchFragment searchFragment = (SearchFragment) fragment;
@@ -664,13 +712,8 @@
   public void onClick(View view) {
     int resId = view.getId();
     if (resId == R.id.floating_action_button) {
-      if (mListsFragment.getCurrentTabIndex() == DialtactsPagerAdapter.TAB_INDEX_ALL_CONTACTS
-          && !mInRegularSearch
-          && !mInDialpadSearch) {
-        DialerUtils.startActivityWithErrorToast(
-            this, IntentUtil.getNewContactIntent(), R.string.add_contact_not_available);
-        Logger.get(this).logImpression(DialerImpression.Type.NEW_CONTACT_FAB);
-      } else if (!mIsDialpadShown) {
+      if (!mIsDialpadShown) {
+        PerformanceReport.recordClick(UiAction.Type.OPEN_DIALPAD);
         mInCallDialpadUp = false;
         showDialpadFragment(true);
         PostCall.closePrompt();
@@ -700,6 +743,7 @@
 
     int resId = item.getItemId();
     if (resId == R.id.menu_history) {
+      PerformanceReport.recordClick(UiAction.Type.OPEN_CALL_HISTORY);
       final Intent intent = new Intent(this, CallLogActivity.class);
       startActivity(intent);
     } else if (resId == R.id.menu_clear_frequents) {
@@ -710,6 +754,9 @@
       handleMenuSettings();
       Logger.get(this).logScreenView(ScreenEvent.Type.SETTINGS, this);
       return true;
+    } else if (resId == R.id.menu_new_ui_launcher_shortcut) {
+      MainComponent.get(this).getMain().createNewUiLauncherShortcut(this);
+      return true;
     }
     return false;
   }
@@ -745,6 +792,19 @@
       } else {
         LogUtil.i("DialtactsActivity.onActivityResult", "returned from call composer, no error");
       }
+    } else if (requestCode == ACTIVITY_REQUEST_CODE_CALL_DETAILS) {
+      if (resultCode == RESULT_OK
+          && data != null
+          && data.getBooleanExtra(CallDetailsActivity.EXTRA_HAS_ENRICHED_CALL_DATA, false)) {
+        String number = data.getStringExtra(CallDetailsActivity.EXTRA_PHONE_NUMBER);
+        int snackbarDurationMillis = 5_000;
+        Snackbar.make(mParentLayout, getString(R.string.ec_data_deleted), snackbarDurationMillis)
+            .setAction(
+                R.string.view_conversation,
+                v -> startActivity(IntentProvider.getSendSmsIntentProvider(number).getIntent(this)))
+            .setActionTextColor(getResources().getColor(R.color.dialer_snackbar_action_text_color))
+            .show();
+      }
     }
     super.onActivityResult(requestCode, resultCode, data);
   }
@@ -785,6 +845,7 @@
 
     if (animate) {
       mFloatingActionButtonController.scaleOut();
+      maybeEnterSearchUi();
     } else {
       mFloatingActionButtonController.setVisible(false);
       maybeEnterSearchUi();
@@ -1007,6 +1068,19 @@
       if (showDialpadChooser && !mDialpadFragment.isVisible()) {
         mInCallDialpadUp = true;
       }
+    } else if (isLastTabEnabled) {
+      @TabIndex
+      int tabIndex =
+          DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(this)
+              .getInt(KEY_LAST_TAB, DialtactsPagerAdapter.TAB_INDEX_SPEED_DIAL);
+      // If voicemail tab is saved and its availability changes, we still move to the voicemail tab
+      // but it is quickly removed and shown the contacts tab.
+      if (mListsFragment != null) {
+        mListsFragment.showTab(tabIndex);
+        PerformanceReport.setStartingTabIndex(tabIndex);
+      } else {
+        PerformanceReport.setStartingTabIndex(DialtactsPagerAdapter.TAB_INDEX_SPEED_DIAL);
+      }
     }
   }
 
@@ -1057,7 +1131,11 @@
     }
 
     final String tag;
-    if (smartDialSearch) {
+    boolean useNewSearch =
+        ConfigProviderBindings.get(this).getBoolean("enable_new_search_fragment", false);
+    if (useNewSearch) {
+      tag = TAG_NEW_SEARCH_FRAGMENT;
+    } else if (smartDialSearch) {
       tag = TAG_SMARTDIAL_SEARCH_FRAGMENT;
     } else {
       tag = TAG_REGULAR_SEARCH_FRAGMENT;
@@ -1067,40 +1145,52 @@
 
     mFloatingActionButtonController.scaleOut();
 
-    SearchFragment fragment = (SearchFragment) getFragmentManager().findFragmentByTag(tag);
     if (animate) {
       transaction.setCustomAnimations(android.R.animator.fade_in, 0);
     } else {
       transaction.setTransition(FragmentTransaction.TRANSIT_NONE);
     }
+
+    Fragment fragment = getFragmentManager().findFragmentByTag(tag);
     if (fragment == null) {
-      if (smartDialSearch) {
+      if (useNewSearch) {
+        fragment = new NewSearchFragment();
+      } else if (smartDialSearch) {
         fragment = new SmartDialSearchFragment();
       } else {
         fragment = Bindings.getLegacy(this).newRegularSearchFragment();
-        fragment.setOnTouchListener(
-            new View.OnTouchListener() {
-              @Override
-              public boolean onTouch(View v, MotionEvent event) {
-                // Show the FAB when the user touches the lists fragment and the soft
-                // keyboard is hidden.
-                hideDialpadFragment(true, false);
-                showFabInSearchUi();
-                v.performClick();
-                return false;
-              }
-            });
+        ((SearchFragment) fragment)
+            .setOnTouchListener(
+                (v, event) -> {
+                  // Show the FAB when the user touches the lists fragment and the soft
+                  // keyboard is hidden.
+                  hideDialpadFragment(true, false);
+                  v.performClick();
+                  return false;
+                });
       }
       transaction.add(R.id.dialtacts_frame, fragment, tag);
     } else {
+      // TODO: if this is a transition from dialpad to searchbar, animate fragment
+      // down, and vice versa. Perhaps just add a coordinator behavior with the search bar.
       transaction.show(fragment);
     }
+
     // DialtactsActivity will provide the options menu
     fragment.setHasOptionsMenu(false);
+
     // Will show empty list if P13nRanker is not enabled. Else, re-ranked list by the ranker.
-    fragment.setShowEmptyListForNullQuery(mP13nRanker.shouldShowEmptyListForNullQuery());
-    if (!smartDialSearch) {
-      fragment.setQueryString(query);
+    if (!useNewSearch) {
+      ((SearchFragment) fragment)
+          .setShowEmptyListForNullQuery(mP13nRanker.shouldShowEmptyListForNullQuery());
+    } else {
+      // TODO: add p13n ranker to new search.
+    }
+
+    if (!smartDialSearch && !useNewSearch) {
+      ((SearchFragment) fragment).setQueryString(query);
+    } else if (useNewSearch) {
+      ((NewSearchFragment) fragment).setQuery(query);
     }
     transaction.commit();
 
@@ -1146,6 +1236,9 @@
     if (mRegularSearchFragment != null) {
       transaction.remove(mRegularSearchFragment);
     }
+    if (mNewSearchFragment != null) {
+      transaction.remove(mNewSearchFragment);
+    }
     transaction.commit();
 
     Assert.isNotNull(mListsFragment.getView()).animate().alpha(1).withLayer();
@@ -1163,6 +1256,8 @@
 
   @Override
   public void onBackPressed() {
+    PerformanceReport.recordClick(UiAction.Type.PRESS_ANDROID_BACK_BUTTON);
+
     if (mStateSaved) {
       return;
     }
@@ -1247,6 +1342,7 @@
     if (mInDialpadSearch
         && mSmartDialSearchFragment != null
         && !mSmartDialSearchFragment.isShowingPermissionRequest()) {
+      PerformanceReport.recordClick(UiAction.Type.CLOSE_DIALPAD);
       hideDialpadFragment(true /* animate */, true /* clearDialpad */);
       return true;
     }
@@ -1255,6 +1351,7 @@
 
   @Override
   public void onListFragmentScrollStateChange(int scrollState) {
+    PerformanceReport.recordScrollStateChange(scrollState);
     if (scrollState == OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) {
       hideDialpadFragment(true, false);
       DialerUtils.hideInputMethod(mParentLayout);
@@ -1381,18 +1478,6 @@
     int tabIndex = mListsFragment.getCurrentTabIndex();
     mPreviouslySelectedTabIndex = tabIndex;
     mFloatingActionButtonController.setVisible(true);
-    if (tabIndex == DialtactsPagerAdapter.TAB_INDEX_ALL_CONTACTS
-        && !mInRegularSearch
-        && !mInDialpadSearch) {
-      mFloatingActionButtonController.changeIcon(
-          getResources().getDrawable(R.drawable.quantum_ic_person_add_white_24, null),
-          getResources().getString(R.string.search_shortcut_create_new_contact));
-    } else {
-      mFloatingActionButtonController.changeIcon(
-          getResources().getDrawable(R.drawable.quantum_ic_dialpad_white_24, null),
-          getResources().getString(R.string.action_menu_dialpad_button));
-    }
-
     timeTabSelected = SystemClock.elapsedRealtime();
   }
 
@@ -1477,6 +1562,17 @@
             Arrays.toString(grantResults)));
   }
 
+  @Override
+  public void onActionModeStateChanged(boolean isEnabled) {
+    isMultiSelectModeEnabled = isEnabled;
+  }
+
+  @Override
+  public boolean isActionModeStateEnabled() {
+    return isMultiSelectModeEnabled;
+  }
+
+  /** Popup menu accessible from the search bar */
   protected class OptionsPopupMenu extends PopupMenu {
 
     public OptionsPopupMenu(Context context, View anchor) {
@@ -1505,6 +1601,10 @@
         simulatorMenuItem.setVisible(false);
       }
 
+      Main dialtacts = MainComponent.get(context).getMain();
+      menu.findItem(R.id.menu_new_ui_launcher_shortcut)
+          .setVisible(dialtacts.isNewUiEnabled(context));
+
       super.show();
     }
   }
diff --git a/java/com/android/dialer/app/SpecialCharSequenceMgr.java b/java/com/android/dialer/app/SpecialCharSequenceMgr.java
index 85c2ea6..20222d6 100644
--- a/java/com/android/dialer/app/SpecialCharSequenceMgr.java
+++ b/java/com/android/dialer/app/SpecialCharSequenceMgr.java
@@ -47,7 +47,6 @@
 import com.android.dialer.calllogutils.PhoneAccountUtils;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.oem.MotorolaUtils;
 import com.android.dialer.telecom.TelecomUtil;
 import java.util.ArrayList;
@@ -299,9 +298,7 @@
               : R.string.meid;
 
       List<String> deviceIds = new ArrayList<String>();
-      if (TelephonyManagerCompat.getPhoneCount(telephonyManager) > 1
-          && CompatUtils.isMethodAvailable(
-              TelephonyManagerCompat.TELEPHONY_MANAGER_CLASS, "getDeviceId", Integer.TYPE)) {
+      if (TelephonyManagerCompat.getPhoneCount(telephonyManager) > 1) {
         for (int slot = 0; slot < telephonyManager.getPhoneCount(); slot++) {
           String deviceId = telephonyManager.getDeviceId(slot);
           if (!TextUtils.isEmpty(deviceId)) {
diff --git a/java/com/android/dialer/app/bindings/DialerBindings.java b/java/com/android/dialer/app/bindings/DialerBindings.java
deleted file mode 100644
index e1f5178..0000000
--- a/java/com/android/dialer/app/bindings/DialerBindings.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright (C) 2016 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.dialer.app.bindings;
-
-import com.android.dialer.common.ConfigProvider;
-
-/** This interface allows the container application to customize the dialer. */
-public interface DialerBindings {
-
-  ConfigProvider getConfigProvider();
-}
diff --git a/java/com/android/dialer/app/bindings/DialerBindingsFactory.java b/java/com/android/dialer/app/bindings/DialerBindingsFactory.java
deleted file mode 100644
index 9f209f9..0000000
--- a/java/com/android/dialer/app/bindings/DialerBindingsFactory.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright (C) 2016 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.dialer.app.bindings;
-
-/**
- * This interface should be implementated by the Application subclass. It allows the dialer module
- * to get references to the DialerBindings.
- */
-public interface DialerBindingsFactory {
-
-  DialerBindings newDialerBindings();
-}
diff --git a/java/com/android/dialer/app/bindings/DialerBindingsStub.java b/java/com/android/dialer/app/bindings/DialerBindingsStub.java
deleted file mode 100644
index f56743f..0000000
--- a/java/com/android/dialer/app/bindings/DialerBindingsStub.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2016 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.dialer.app.bindings;
-
-import com.android.dialer.common.ConfigProvider;
-
-/** Default implementation for dialer bindings. */
-public class DialerBindingsStub implements DialerBindings {
-  private ConfigProvider configProvider;
-
-  @Override
-  public ConfigProvider getConfigProvider() {
-    if (configProvider == null) {
-      configProvider =
-          new ConfigProvider() {
-            @Override
-            public String getString(String key, String defaultValue) {
-              return defaultValue;
-            }
-
-            @Override
-            public long getLong(String key, long defaultValue) {
-              return defaultValue;
-            }
-
-            @Override
-            public boolean getBoolean(String key, boolean defaultValue) {
-              return defaultValue;
-            }
-          };
-    }
-    return configProvider;
-  }
-}
diff --git a/java/com/android/dialer/app/calllog/CallLogActivity.java b/java/com/android/dialer/app/calllog/CallLogActivity.java
index 443171d..35e05bc 100644
--- a/java/com/android/dialer/app/calllog/CallLogActivity.java
+++ b/java/com/android/dialer/app/calllog/CallLogActivity.java
@@ -21,6 +21,7 @@
 import android.os.Bundle;
 import android.provider.CallLog;
 import android.provider.CallLog.Calls;
+import android.support.design.widget.Snackbar;
 import android.support.v13.app.FragmentPagerAdapter;
 import android.support.v4.view.ViewPager;
 import android.support.v7.app.ActionBar;
@@ -31,15 +32,21 @@
 import com.android.contacts.common.list.ViewPagerTabs;
 import com.android.dialer.app.DialtactsActivity;
 import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.ClearCallLogDialog.Listener;
+import com.android.dialer.calldetails.CallDetailsActivity;
 import com.android.dialer.database.CallLogQueryHandler;
+import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
+import com.android.dialer.postcall.PostCall;
 import com.android.dialer.util.TransactionSafeActivity;
 import com.android.dialer.util.ViewUtil;
 
 /** Activity for viewing call history. */
 public class CallLogActivity extends TransactionSafeActivity
-    implements ViewPager.OnPageChangeListener {
+    implements ViewPager.OnPageChangeListener, Listener {
 
   private static final int TAB_INDEX_ALL = 0;
   private static final int TAB_INDEX_MISSED = 1;
@@ -48,7 +55,6 @@
   private ViewPagerTabs mViewPagerTabs;
   private ViewPagerAdapter mViewPagerAdapter;
   private CallLogFragment mAllCallsFragment;
-  private CallLogFragment mMissedCallsFragment;
   private String[] mTabTitles;
   private boolean mIsResumed;
 
@@ -93,9 +99,16 @@
 
   @Override
   protected void onResume() {
+    // Some calls may not be recorded (eg. from quick contact),
+    // so we should restart recording after these calls. (Recorded call is stopped)
+    PostCall.restartPerformanceRecordingIfARecentCallExist(this);
+    if (!PerformanceReport.isRecording()) {
+      PerformanceReport.startRecording();
+    }
+
     mIsResumed = true;
     super.onResume();
-    sendScreenViewForChildFragment(mViewPager.getCurrentItem());
+    sendScreenViewForChildFragment();
   }
 
   @Override
@@ -129,12 +142,13 @@
     }
 
     if (item.getItemId() == android.R.id.home) {
+      PerformanceReport.recordClick(UiAction.Type.CLOSE_CALL_HISTORY_WITH_CANCEL_BUTTON);
       final Intent intent = new Intent(this, DialtactsActivity.class);
       intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
       startActivity(intent);
       return true;
     } else if (item.getItemId() == R.id.delete_all) {
-      ClearCallLogDialog.show(getFragmentManager());
+      ClearCallLogDialog.show(getFragmentManager(), this);
       return true;
     }
     return super.onOptionsItemSelected(item);
@@ -148,7 +162,7 @@
   @Override
   public void onPageSelected(int position) {
     if (mIsResumed) {
-      sendScreenViewForChildFragment(position);
+      sendScreenViewForChildFragment();
     }
     mViewPagerTabs.onPageSelected(position);
   }
@@ -158,7 +172,7 @@
     mViewPagerTabs.onPageScrollStateChanged(state);
   }
 
-  private void sendScreenViewForChildFragment(int position) {
+  private void sendScreenViewForChildFragment() {
     Logger.get(this).logScreenView(ScreenEvent.Type.CALL_LOG_FILTER, this);
   }
 
@@ -169,6 +183,21 @@
     return position;
   }
 
+  @Override
+  public void callHistoryDeleted() {
+    if (EnrichedCallComponent.get(this).getEnrichedCallManager().hasStoredData()) {
+      Snackbar.make(
+              findViewById(R.id.calllog_frame), getString(R.string.multiple_ec_data_deleted), 5_000)
+          .show();
+    }
+  }
+
+  @Override
+  public void onBackPressed() {
+    PerformanceReport.recordClick(UiAction.Type.PRESS_ANDROID_BACK_BUTTON);
+    super.onBackPressed();
+  }
+
   /** Adapter for the view pager. */
   public class ViewPagerAdapter extends FragmentPagerAdapter {
 
@@ -189,20 +218,16 @@
               CallLogQueryHandler.CALL_TYPE_ALL, true /* isCallLogActivity */);
         case TAB_INDEX_MISSED:
           return new CallLogFragment(Calls.MISSED_TYPE, true /* isCallLogActivity */);
+        default:
+          throw new IllegalStateException("No fragment at position " + position);
       }
-      throw new IllegalStateException("No fragment at position " + position);
     }
 
     @Override
     public Object instantiateItem(ViewGroup container, int position) {
       final CallLogFragment fragment = (CallLogFragment) super.instantiateItem(container, position);
-      switch (position) {
-        case TAB_INDEX_ALL:
+      if (position == TAB_INDEX_ALL) {
           mAllCallsFragment = fragment;
-          break;
-        case TAB_INDEX_MISSED:
-          mMissedCallsFragment = fragment;
-          break;
       }
       return fragment;
     }
@@ -217,4 +242,22 @@
       return TAB_INDEX_COUNT;
     }
   }
+
+  @Override
+  protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+    if (requestCode == DialtactsActivity.ACTIVITY_REQUEST_CODE_CALL_DETAILS) {
+      if (resultCode == RESULT_OK
+          && data != null
+          && data.getBooleanExtra(CallDetailsActivity.EXTRA_HAS_ENRICHED_CALL_DATA, false)) {
+        String number = data.getStringExtra(CallDetailsActivity.EXTRA_PHONE_NUMBER);
+        Snackbar.make(findViewById(R.id.calllog_frame), getString(R.string.ec_data_deleted), 5_000)
+            .setAction(
+                R.string.view_conversation,
+                v -> startActivity(IntentProvider.getSendSmsIntentProvider(number).getIntent(this)))
+            .setActionTextColor(getResources().getColor(R.color.dialer_snackbar_action_text_color))
+            .show();
+      }
+    }
+    super.onActivityResult(requestCode, resultCode, data);
+  }
 }
diff --git a/java/com/android/dialer/app/calllog/CallLogAdapter.java b/java/com/android/dialer/app/calllog/CallLogAdapter.java
index 2f8a58c..f4c8c90 100644
--- a/java/com/android/dialer/app/calllog/CallLogAdapter.java
+++ b/java/com/android/dialer/app/calllog/CallLogAdapter.java
@@ -19,6 +19,7 @@
 import android.app.Activity;
 import android.content.ContentUris;
 import android.content.DialogInterface;
+import android.content.DialogInterface.OnCancelListener;
 import android.content.res.Resources;
 import android.database.Cursor;
 import android.net.Uri;
@@ -52,7 +53,6 @@
 import com.android.contacts.common.ContactsUtils;
 import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.contacts.common.preference.ContactsPreferences;
-import com.android.dialer.app.Bindings;
 import com.android.dialer.app.DialtactsActivity;
 import com.android.dialer.app.R;
 import com.android.dialer.app.calllog.CallLogGroupBuilder.GroupCreator;
@@ -63,13 +63,14 @@
 import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
 import com.android.dialer.calldetails.CallDetailsEntries;
 import com.android.dialer.calldetails.CallDetailsEntries.CallDetailsEntry;
+import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.calllogutils.PhoneAccountUtils;
 import com.android.dialer.calllogutils.PhoneCallDetails;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.AsyncTaskExecutor;
 import com.android.dialer.common.concurrent.AsyncTaskExecutors;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.enrichedcall.EnrichedCallCapabilities;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
@@ -80,12 +81,15 @@
 import com.android.dialer.logging.ContactSource;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.phonenumbercache.CallLogQuery;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumbercache.ContactInfoHelper;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
 import com.android.dialer.spam.Spam;
 import com.android.dialer.util.PermissionsUtil;
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
@@ -105,11 +109,12 @@
 
   private static final String KEY_EXPANDED_POSITION = "expanded_position";
   private static final String KEY_EXPANDED_ROW_ID = "expanded_row_id";
+  private static final String KEY_ACTION_MODE = "action_mode_selected_items";
 
   public static final String LOAD_DATA_TASK_IDENTIFIER = "load_data";
 
   public static final String ENABLE_CALL_LOG_MULTI_SELECT = "enable_call_log_multiselect";
-  public static final boolean ENABLE_CALL_LOG_MULTI_SELECT_FLAG = false;
+  public static final boolean ENABLE_CALL_LOG_MULTI_SELECT_FLAG = true;
 
   protected final Activity mActivity;
   protected final VoicemailPlaybackPresenter mVoicemailPlaybackPresenter;
@@ -117,6 +122,8 @@
   protected final CallLogCache mCallLogCache;
 
   private final CallFetcher mCallFetcher;
+  private final OnActionModeStateChangedListener mActionModeStateChangedListener;
+  private final MultiSelectRemoveView mMultiSelectRemoveView;
   @NonNull private final FilteredNumberAsyncQueryHandler mFilteredNumberAsyncQueryHandler;
   private final int mActivityType;
 
@@ -136,6 +143,8 @@
   private final CallLogAlertManager mCallLogAlertManager;
 
   public ActionMode mActionMode = null;
+  public boolean selectAllMode = false;
+  public boolean deselectAllMode = false;
   private final SparseArray<String> selectedItems = new SparseArray<>();
 
   private final ActionMode.Callback mActionModeCallback =
@@ -144,10 +153,17 @@
         // Called when the action mode is created; startActionMode() was called
         @Override
         public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+          if (mActivity != null) {
+            announceforAccessibility(
+                mActivity.getCurrentFocus(),
+                mActivity.getString(R.string.description_entering_bulk_action_mode));
+          }
           mActionMode = mode;
           // Inflate a menu resource providing context menu items
           MenuInflater inflater = mode.getMenuInflater();
           inflater.inflate(R.menu.actionbar_delete, menu);
+          mMultiSelectRemoveView.showMultiSelectRemoveView(true);
+          mActionModeStateChangedListener.onActionModeStateChanged(true);
           return true;
         }
 
@@ -162,10 +178,10 @@
         @Override
         public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
           if (item.getItemId() == R.id.action_bar_delete_menu_item) {
+            Logger.get(mActivity).logImpression(DialerImpression.Type.MULTISELECT_TAP_DELETE_ICON);
             if (selectedItems.size() > 0) {
               showDeleteSelectedItemsDialog();
             }
-            mode.finish();
             return true;
           } else {
             return false;
@@ -175,53 +191,78 @@
         // Called when the user exits the action mode
         @Override
         public void onDestroyActionMode(ActionMode mode) {
+          if (mActivity != null) {
+            announceforAccessibility(
+                mActivity.getCurrentFocus(),
+                mActivity.getString(R.string.description_leaving_bulk_action_mode));
+          }
           selectedItems.clear();
           mActionMode = null;
+          selectAllMode = false;
+          deselectAllMode = false;
+          mMultiSelectRemoveView.showMultiSelectRemoveView(false);
+          mActionModeStateChangedListener.onActionModeStateChanged(false);
           notifyDataSetChanged();
         }
       };
 
-  // Todo (uabdullah): Use plurals http://b/37751831
   private void showDeleteSelectedItemsDialog() {
-    AlertDialog.Builder builder = new AlertDialog.Builder(mActivity);
-    Assert.checkArgument(selectedItems.size() > 0);
-    String voicemailString =
-        selectedItems.size() == 1
-            ? mActivity.getResources().getString(R.string.voicemailMultiSelectVoicemail)
-            : mActivity.getResources().getString(R.string.voicemailMultiSelectVoicemails);
-    String deleteVoicemailTitle =
-        mActivity
-            .getResources()
-            .getString(R.string.voicemailMultiSelectDialogTitle, voicemailString);
     SparseArray<String> voicemailsToDeleteOnConfirmation = selectedItems.clone();
-    builder.setTitle(deleteVoicemailTitle);
-
-    builder.setPositiveButton(
-        mActivity.getResources().getString(R.string.voicemailMultiSelectDeleteConfirm),
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int id) {
-            deleteSelectedItems(voicemailsToDeleteOnConfirmation);
-            dialog.cancel();
-          }
-        });
-
-    builder.setNegativeButton(
-        mActivity.getResources().getString(R.string.voicemailMultiSelectDeleteCancel),
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int id) {
-            dialog.cancel();
-          }
-        });
-
-    AlertDialog dialog = builder.create();
-    dialog.show();
+    new AlertDialog.Builder(mActivity, R.style.AlertDialogCustom)
+        .setCancelable(true)
+        .setTitle(
+            mActivity
+                .getResources()
+                .getQuantityString(
+                    R.plurals.delete_voicemails_confirmation_dialog_title, selectedItems.size()))
+        .setPositiveButton(
+            R.string.voicemailMultiSelectDeleteConfirm,
+            new DialogInterface.OnClickListener() {
+              @Override
+              public void onClick(final DialogInterface dialog, final int button) {
+                LogUtil.i(
+                    "CallLogAdapter.showDeleteSelectedItemsDialog",
+                    "onClick, these items to delete " + voicemailsToDeleteOnConfirmation);
+                deleteSelectedItems(voicemailsToDeleteOnConfirmation);
+                mActionMode.finish();
+                dialog.cancel();
+                Logger.get(mActivity)
+                    .logImpression(
+                        DialerImpression.Type.MULTISELECT_DELETE_ENTRY_VIA_CONFIRMATION_DIALOG);
+              }
+            })
+        .setOnCancelListener(
+            new OnCancelListener() {
+              @Override
+              public void onCancel(DialogInterface dialogInterface) {
+                Logger.get(mActivity)
+                    .logImpression(
+                        DialerImpression.Type
+                            .MULTISELECT_CANCEL_CONFIRMATION_DIALOG_VIA_CANCEL_TOUCH);
+                dialogInterface.cancel();
+              }
+            })
+        .setNegativeButton(
+            R.string.voicemailMultiSelectDeleteCancel,
+            new DialogInterface.OnClickListener() {
+              @Override
+              public void onClick(final DialogInterface dialog, final int button) {
+                Logger.get(mActivity)
+                    .logImpression(
+                        DialerImpression.Type
+                            .MULTISELECT_CANCEL_CONFIRMATION_DIALOG_VIA_CANCEL_BUTTON);
+                dialog.cancel();
+              }
+            })
+        .show();
+    Logger.get(mActivity)
+        .logImpression(DialerImpression.Type.MULTISELECT_DISPLAY_DELETE_CONFIRMATION_DIALOG);
   }
 
   private void deleteSelectedItems(SparseArray<String> voicemailsToDelete) {
     for (int i = 0; i < voicemailsToDelete.size(); i++) {
       String voicemailUri = voicemailsToDelete.get(voicemailsToDelete.keyAt(i));
+      LogUtil.i("CallLogAdapter.deleteSelectedItems", "deleting uri:" + voicemailUri);
       CallLogAsyncTaskUtil.deleteVoicemail(mActivity, Uri.parse(voicemailUri), null);
     }
   }
@@ -235,8 +276,13 @@
               && mVoicemailPlaybackPresenter != null) {
             if (v.getId() == R.id.primary_action_view || v.getId() == R.id.quick_contact_photo) {
               if (mActionMode == null) {
+                Logger.get(mActivity)
+                    .logImpression(
+                        DialerImpression.Type.MULTISELECT_LONG_PRESS_ENTER_MULTI_SELECT_MODE);
                 mActionMode = v.startActionMode(mActionModeCallback);
               }
+              Logger.get(mActivity)
+                  .logImpression(DialerImpression.Type.MULTISELECT_LONG_PRESS_TAP_ENTRY);
               CallLogListItemViewHolder viewHolder = (CallLogListItemViewHolder) v.getTag();
               viewHolder.quickContactView.setVisibility(View.GONE);
               viewHolder.checkBoxView.setVisibility(View.VISIBLE);
@@ -248,32 +294,45 @@
         }
       };
 
+  @VisibleForTesting
+  public View.OnClickListener getExpandCollapseListener() {
+    return mExpandCollapseListener;
+  }
+
   /** The OnClickListener used to expand or collapse the action buttons of a call log entry. */
   private final View.OnClickListener mExpandCollapseListener =
       new View.OnClickListener() {
         @Override
         public void onClick(View v) {
+          PerformanceReport.recordClick(UiAction.Type.CLICK_CALL_LOG_ITEM);
+
           CallLogListItemViewHolder viewHolder = (CallLogListItemViewHolder) v.getTag();
           if (viewHolder == null) {
             return;
           }
           if (mActionMode != null && viewHolder.voicemailUri != null) {
+            selectAllMode = false;
+            deselectAllMode = false;
+            mMultiSelectRemoveView.setSelectAllModeToFalse();
             int id = getVoicemailId(viewHolder.voicemailUri);
             if (selectedItems.get(id) != null) {
-              selectedItems.delete(id);
-              viewHolder.checkBoxView.setVisibility(View.GONE);
-              viewHolder.quickContactView.setVisibility(View.VISIBLE);
+              Logger.get(mActivity)
+                  .logImpression(DialerImpression.Type.MULTISELECT_SINGLE_PRESS_UNSELECT_ENTRY);
+              uncheckMarkCallLogEntry(viewHolder, id);
             } else {
-              viewHolder.quickContactView.setVisibility(View.GONE);
-              viewHolder.checkBoxView.setVisibility(View.VISIBLE);
-              selectedItems.put(getVoicemailId(viewHolder.voicemailUri), viewHolder.voicemailUri);
+              Logger.get(mActivity)
+                  .logImpression(DialerImpression.Type.MULTISELECT_SINGLE_PRESS_SELECT_ENTRY);
+              checkMarkCallLogEntry(viewHolder);
+              // select all check box logic
+              if (getItemCount() == selectedItems.size()) {
+                LogUtil.i(
+                    "mExpandCollapseListener.onClick",
+                    "getitem count %d is equal to items select count %d, check select all box",
+                    getItemCount(),
+                    selectedItems.size());
+                mMultiSelectRemoveView.tapSelectAll();
+              }
             }
-
-            if (selectedItems.size() == 0) {
-              mActionMode.finish();
-              return;
-            }
-            mActionMode.setTitle(Integer.toString(selectedItems.size()));
             return;
           }
 
@@ -308,10 +367,65 @@
               }
             }
             expandViewHolderActions(viewHolder);
+
+            if (viewHolder.videoCallButtonView.getVisibility() == View.VISIBLE
+                && LightbringerComponent.get(mActivity)
+                    .getLightbringer()
+                    .getPackageName()
+                    .equals(
+                        ((IntentProvider) viewHolder.videoCallButtonView.getTag())
+                            .getIntent(mActivity)
+                            .getPackage())) {
+              CallIntentBuilder.increaseLightbringerCallButtonAppearInExpandedCallLogItemCount();
+            }
           }
         }
       };
 
+  private void checkMarkCallLogEntry(CallLogListItemViewHolder viewHolder) {
+    announceforAccessibility(
+        mActivity.getCurrentFocus(),
+        mActivity.getString(
+            R.string.description_selecting_bulk_action_mode, viewHolder.nameOrNumber));
+    viewHolder.quickContactView.setVisibility(View.GONE);
+    viewHolder.checkBoxView.setVisibility(View.VISIBLE);
+    selectedItems.put(getVoicemailId(viewHolder.voicemailUri), viewHolder.voicemailUri);
+    updateActionBar();
+  }
+
+  private void announceforAccessibility(View view, String announcement) {
+    if (view != null) {
+      view.announceForAccessibility(announcement);
+    }
+  }
+
+  private void updateActionBar() {
+    if (mActionMode == null && selectedItems.size() > 0) {
+      Logger.get(mActivity)
+          .logImpression(DialerImpression.Type.MULTISELECT_ROTATE_AND_SHOW_ACTION_MODE);
+      mActivity.startActionMode(mActionModeCallback);
+    }
+    if (mActionMode != null) {
+      mActionMode.setTitle(
+          mActivity
+              .getResources()
+              .getString(
+                  R.string.voicemailMultiSelectActionBarTitle,
+                  Integer.toString(selectedItems.size())));
+    }
+  }
+
+  private void uncheckMarkCallLogEntry(CallLogListItemViewHolder viewHolder, int id) {
+    announceforAccessibility(
+        mActivity.getCurrentFocus(),
+        mActivity.getString(
+            R.string.description_unselecting_bulk_action_mode, viewHolder.nameOrNumber));
+    selectedItems.delete(id);
+    viewHolder.checkBoxView.setVisibility(View.GONE);
+    viewHolder.quickContactView.setVisibility(View.VISIBLE);
+    updateActionBar();
+  }
+
   private static int getVoicemailId(String voicemailUri) {
     Assert.checkArgument(voicemailUri != null);
     Assert.checkArgument(voicemailUri.length() > 0);
@@ -358,6 +472,8 @@
       Activity activity,
       ViewGroup alertContainer,
       CallFetcher callFetcher,
+      MultiSelectRemoveView multiSelectRemoveView,
+      OnActionModeStateChangedListener actionModeStateChangedListener,
       CallLogCache callLogCache,
       ContactInfoCache contactInfoCache,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter,
@@ -367,6 +483,8 @@
 
     mActivity = activity;
     mCallFetcher = callFetcher;
+    mActionModeStateChangedListener = actionModeStateChangedListener;
+    mMultiSelectRemoveView = multiSelectRemoveView;
     mVoicemailPlaybackPresenter = voicemailPlaybackPresenter;
     if (mVoicemailPlaybackPresenter != null) {
       mVoicemailPlaybackPresenter.setOnVoicemailDeletedListener(this);
@@ -426,6 +544,25 @@
   public void onSaveInstanceState(Bundle outState) {
     outState.putInt(KEY_EXPANDED_POSITION, mCurrentlyExpandedPosition);
     outState.putLong(KEY_EXPANDED_ROW_ID, mCurrentlyExpandedRowId);
+
+    ArrayList<String> listOfSelectedItems = new ArrayList<>();
+
+    if (selectedItems.size() > 0) {
+      for (int i = 0; i < selectedItems.size(); i++) {
+        int id = selectedItems.keyAt(i);
+        String voicemailUri = selectedItems.valueAt(i);
+        LogUtil.i(
+            "CallLogAdapter.onSaveInstanceState", "index %d, id=%d, uri=%s ", i, id, voicemailUri);
+        listOfSelectedItems.add(voicemailUri);
+      }
+    }
+    outState.putStringArrayList(KEY_ACTION_MODE, listOfSelectedItems);
+
+    LogUtil.i(
+        "CallLogAdapter.onSaveInstanceState",
+        "saved: %d, selectedItemsSize:%d",
+        listOfSelectedItems.size(),
+        selectedItems.size());
   }
 
   public void onRestoreInstanceState(Bundle savedInstanceState) {
@@ -434,6 +571,33 @@
           savedInstanceState.getInt(KEY_EXPANDED_POSITION, RecyclerView.NO_POSITION);
       mCurrentlyExpandedRowId =
           savedInstanceState.getLong(KEY_EXPANDED_ROW_ID, NO_EXPANDED_LIST_ITEM);
+      // Restoring multi selected entries
+      ArrayList<String> listOfSelectedItems =
+          savedInstanceState.getStringArrayList(KEY_ACTION_MODE);
+      LogUtil.i(
+          "CallLogAdapter.onRestoreInstanceState",
+          "restored selectedItemsList:%d",
+          listOfSelectedItems.size());
+
+      if (!listOfSelectedItems.isEmpty()) {
+        for (int i = 0; i < listOfSelectedItems.size(); i++) {
+          String voicemailUri = listOfSelectedItems.get(i);
+          int id = getVoicemailId(voicemailUri);
+          LogUtil.i(
+              "CallLogAdapter.onRestoreInstanceState",
+              "restoring selected index %d, id=%d, uri=%s ",
+              i,
+              id,
+              voicemailUri);
+          selectedItems.put(id, voicemailUri);
+        }
+
+        LogUtil.i(
+            "CallLogAdapter.onRestoreInstance",
+            "restored selectedItems %s",
+            selectedItems.toString());
+        updateActionBar();
+      }
     }
   }
 
@@ -521,6 +685,7 @@
             mBlockReportSpamListener,
             mExpandCollapseListener,
             mLongPressListener,
+            mActionModeStateChangedListener,
             mCallLogCache,
             mCallLogListItemHelper,
             mVoicemailPlaybackPresenter);
@@ -546,7 +711,7 @@
     Trace.beginSection("onBindViewHolder: " + position);
     switch (getItemViewType(position)) {
       case VIEW_TYPE_ALERT:
-        //Do nothing
+        // Do nothing
         break;
       default:
         bindCallLogListViewHolder(viewHolder, position);
@@ -559,6 +724,8 @@
   public void onViewRecycled(ViewHolder viewHolder) {
     if (viewHolder.getItemViewType() == VIEW_TYPE_CALLLOG) {
       CallLogListItemViewHolder views = (CallLogListItemViewHolder) viewHolder;
+      updateCheckMarkedStatusOfEntry(views);
+
       if (views.asyncTask != null) {
         views.asyncTask.cancel(true);
       }
@@ -591,6 +758,8 @@
       return;
     }
     CallLogListItemViewHolder views = (CallLogListItemViewHolder) viewHolder;
+    updateCheckMarkedStatusOfEntry(views);
+
     views.isLoaded = false;
     int groupSize = getGroupSize(position);
     CallDetailsEntries callDetailsEntries = createCallDetailsEntries(c, groupSize);
@@ -609,6 +778,17 @@
     loadAndRender(views, views.rowId, details, callDetailsEntries);
   }
 
+  private void updateCheckMarkedStatusOfEntry(CallLogListItemViewHolder views) {
+    if (selectedItems.size() > 0 && views.voicemailUri != null) {
+      int id = getVoicemailId(views.voicemailUri);
+      if (selectedItems.get(id) != null) {
+        checkMarkCallLogEntry(views);
+      } else {
+        uncheckMarkCallLogEntry(views, id);
+      }
+    }
+  }
+
   private void loadAndRender(
       final CallLogListItemViewHolder views,
       final long rowId,
@@ -840,8 +1020,7 @@
               details.countryIso,
               details.cachedContactInfo,
               position
-                  < Bindings.get(mActivity)
-                      .getConfigProvider()
+                  < ConfigProviderBindings.get(mActivity)
                       .getLong("number_of_call_to_do_remote_lookup", 5L));
     }
     CharSequence formattedNumber =
@@ -917,6 +1096,12 @@
     views.workIconView.setVisibility(
         details.contactUserType == ContactsUtils.USER_TYPE_WORK ? View.VISIBLE : View.GONE);
 
+    if (selectAllMode && views.voicemailUri != null) {
+      selectedItems.put(getVoicemailId(views.voicemailUri), views.voicemailUri);
+    }
+    if (deselectAllMode && views.voicemailUri != null) {
+      selectedItems.delete(getVoicemailId(views.voicemailUri));
+    }
     if (views.voicemailUri != null
         && selectedItems.get(getVoicemailId(views.voicemailUri)) != null) {
       views.checkBoxView.setVisibility(View.VISIBLE);
@@ -925,7 +1110,6 @@
       views.checkBoxView.setVisibility(View.GONE);
       views.quickContactView.setVisibility(View.VISIBLE);
     }
-
     mCallLogListItemHelper.setPhoneCallDetails(views, details);
     if (mCurrentlyExpandedRowId == views.rowId) {
       // In case ViewHolders were added/removed, update the expanded position if the rowIds
@@ -1192,9 +1376,51 @@
     notifyDataSetChanged();
   }
 
+  public void onAllSelected() {
+    selectAllMode = true;
+    deselectAllMode = false;
+    selectedItems.clear();
+    for (int i = 0; i < getItemCount(); i++) {
+      Cursor c = (Cursor) getItem(i);
+      if (c != null) {
+        Assert.checkArgument(CallLogQuery.VOICEMAIL_URI == c.getColumnIndex("voicemail_uri"));
+        String voicemailUri = c.getString(CallLogQuery.VOICEMAIL_URI);
+        selectedItems.put(getVoicemailId(voicemailUri), voicemailUri);
+      }
+    }
+    updateActionBar();
+    notifyDataSetChanged();
+  }
+
+  public void onAllDeselected() {
+    selectAllMode = false;
+    deselectAllMode = true;
+    selectedItems.clear();
+    updateActionBar();
+    notifyDataSetChanged();
+  }
+
   /** Interface used to initiate a refresh of the content. */
   public interface CallFetcher {
 
     void fetchCalls();
   }
+
+  /** Interface used to allow single tap multi select for contact photos. */
+  public interface OnActionModeStateChangedListener {
+
+    void onActionModeStateChanged(boolean isEnabled);
+
+    boolean isActionModeStateEnabled();
+  }
+
+  /** Interface used to hide the fragments. */
+  public interface MultiSelectRemoveView {
+
+    void showMultiSelectRemoveView(boolean show);
+
+    void setSelectAllModeToFalse();
+
+    void tapSelectAll();
+  }
 }
diff --git a/java/com/android/dialer/app/calllog/CallLogAsyncTaskUtil.java b/java/com/android/dialer/app/calllog/CallLogAsyncTaskUtil.java
index a5553d1..b1ad0d9 100644
--- a/java/com/android/dialer/app/calllog/CallLogAsyncTaskUtil.java
+++ b/java/com/android/dialer/app/calllog/CallLogAsyncTaskUtil.java
@@ -28,6 +28,7 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.text.TextUtils;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.AsyncTaskExecutor;
 import com.android.dialer.common.concurrent.AsyncTaskExecutors;
 import com.android.dialer.util.PermissionsUtil;
@@ -45,6 +46,7 @@
 
   public static void markVoicemailAsRead(
       @NonNull final Context context, @NonNull final Uri voicemailUri) {
+    LogUtil.enterBlock("CallLogAsyncTaskUtil.markVoicemailAsRead, voicemailUri: " + voicemailUri);
     if (sAsyncTaskExecutor == null) {
       initTaskExecutor();
     }
@@ -66,9 +68,7 @@
               uploadVoicemailLocalChangesToServer(context);
             }
 
-            Intent intent = new Intent(context, CallLogNotificationsService.class);
-            intent.setAction(CallLogNotificationsService.ACTION_MARK_NEW_VOICEMAILS_AS_OLD);
-            context.startService(intent);
+            CallLogNotificationsService.markAllNewVoicemailsAsOld(context);
             return null;
           }
         });
@@ -110,7 +110,8 @@
   }
 
   public static void markCallAsRead(@NonNull final Context context, @NonNull final long[] callIds) {
-    if (!PermissionsUtil.hasPhonePermissions(context)) {
+    if (!PermissionsUtil.hasPhonePermissions(context)
+        || !PermissionsUtil.hasCallLogWritePermissions(context)) {
       return;
     }
     if (sAsyncTaskExecutor == null) {
diff --git a/java/com/android/dialer/app/calllog/CallLogFragment.java b/java/com/android/dialer/app/calllog/CallLogFragment.java
index 6e4b23f..aa765d9 100644
--- a/java/com/android/dialer/app/calllog/CallLogFragment.java
+++ b/java/com/android/dialer/app/calllog/CallLogFragment.java
@@ -35,53 +35,68 @@
 import android.support.annotation.CallSuper;
 import android.support.annotation.Nullable;
 import android.support.v13.app.FragmentCompat;
+import android.support.v13.app.FragmentCompat.OnRequestPermissionsResultCallback;
 import android.support.v7.app.AppCompatActivity;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
+import android.view.View.OnClickListener;
 import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.TextView;
 import com.android.dialer.app.Bindings;
 import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.CallLogAdapter.CallFetcher;
+import com.android.dialer.app.calllog.CallLogAdapter.MultiSelectRemoveView;
 import com.android.dialer.app.calllog.calllogcache.CallLogCache;
 import com.android.dialer.app.contactinfo.ContactInfoCache;
 import com.android.dialer.app.contactinfo.ContactInfoCache.OnContactInfoChangedListener;
 import com.android.dialer.app.contactinfo.ExpirableCacheHeadlessFragment;
 import com.android.dialer.app.list.ListsFragment;
 import com.android.dialer.app.voicemail.VoicemailPlaybackPresenter;
-import com.android.dialer.app.widget.EmptyContentView;
-import com.android.dialer.app.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
 import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.database.CallLogQueryHandler;
+import com.android.dialer.database.CallLogQueryHandler.Listener;
 import com.android.dialer.location.GeoUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.dialer.oem.CequintCallerIdManager;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.phonenumbercache.ContactInfoHelper;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import com.android.dialer.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import java.util.Arrays;
 
 /**
  * Displays a list of call log entries. To filter for a particular kind of call (all, missed or
  * voicemails), specify it in the constructor.
  */
 public class CallLogFragment extends Fragment
-    implements CallLogQueryHandler.Listener,
-        CallLogAdapter.CallFetcher,
+    implements Listener,
+        CallFetcher,
+        MultiSelectRemoveView,
         OnEmptyViewActionButtonClickedListener,
-        FragmentCompat.OnRequestPermissionsResultCallback,
-        CallLogModalAlertManager.Listener {
+        OnRequestPermissionsResultCallback,
+        CallLogModalAlertManager.Listener,
+        OnClickListener {
   private static final String KEY_FILTER_TYPE = "filter_type";
   private static final String KEY_LOG_LIMIT = "log_limit";
   private static final String KEY_DATE_LIMIT = "date_limit";
   private static final String KEY_IS_CALL_LOG_ACTIVITY = "is_call_log_activity";
   private static final String KEY_HAS_READ_CALL_LOG_PERMISSION = "has_read_call_log_permission";
   private static final String KEY_REFRESH_DATA_REQUIRED = "refresh_data_required";
+  private static final String KEY_SELECT_ALL_MODE = "select_all_mode_checked";
 
   // No limit specified for the number of logs to show; use the CallLogQueryHandler's default.
   private static final int NO_LOG_LIMIT = -1;
   // No date-based filtering.
   private static final int NO_DATE_LIMIT = 0;
 
-  private static final int READ_CALL_LOG_PERMISSION_REQUEST_CODE = 1;
+  private static final int PHONE_PERMISSIONS_REQUEST_CODE = 1;
 
   private static final int EVENT_UPDATE_DISPLAY = 1;
 
@@ -90,6 +105,9 @@
   // See issue 6363009
   private final ContentObserver mCallLogObserver = new CustomContentObserver();
   private final ContentObserver mContactsObserver = new CustomContentObserver();
+  private View mMultiSelectUnSelectAllViewContent;
+  private TextView mSelectUnselectAllViewText;
+  private ImageView mSelectUnselectAllIcon;
   private RecyclerView mRecyclerView;
   private LinearLayoutManager mLayoutManager;
   private CallLogAdapter mAdapter;
@@ -123,6 +141,7 @@
    * True if this instance of the CallLogFragment shown in the CallLogActivity.
    */
   private boolean mIsCallLogActivity = false;
+  private boolean selectAllMode;
   private final Handler mDisplayUpdateHandler =
       new Handler() {
         @Override
@@ -194,6 +213,7 @@
       mIsCallLogActivity = state.getBoolean(KEY_IS_CALL_LOG_ACTIVITY, mIsCallLogActivity);
       mHasReadCallLogPermission = state.getBoolean(KEY_HAS_READ_CALL_LOG_PERMISSION, false);
       mRefreshDataRequired = state.getBoolean(KEY_REFRESH_DATA_REQUIRED, mRefreshDataRequired);
+      selectAllMode = state.getBoolean(KEY_SELECT_ALL_MODE, false);
     }
 
     final Activity activity = getActivity();
@@ -290,12 +310,20 @@
     mRecyclerView.setHasFixedSize(true);
     mLayoutManager = new LinearLayoutManager(getActivity());
     mRecyclerView.setLayoutManager(mLayoutManager);
+    PerformanceReport.logOnScrollStateChange(mRecyclerView);
     mEmptyListView = (EmptyContentView) view.findViewById(R.id.empty_list_view);
     mEmptyListView.setImage(R.drawable.empty_call_log);
     mEmptyListView.setActionClickedListener(this);
     mModalAlertView = (ViewGroup) view.findViewById(R.id.modal_message_container);
     mModalAlertManager =
         new CallLogModalAlertManager(LayoutInflater.from(getContext()), mModalAlertView, this);
+    mMultiSelectUnSelectAllViewContent =
+        view.findViewById(R.id.multi_select_select_all_view_content);
+    mSelectUnselectAllViewText = (TextView) view.findViewById(R.id.select_all_view_text);
+    mSelectUnselectAllIcon = (ImageView) view.findViewById(R.id.select_all_view_icon);
+    mMultiSelectUnSelectAllViewContent.setOnClickListener(null);
+    mSelectUnselectAllIcon.setOnClickListener(this);
+    mSelectUnselectAllViewText.setOnClickListener(this);
   }
 
   protected void setupData() {
@@ -317,6 +345,10 @@
                 getActivity(),
                 mRecyclerView,
                 this,
+                this,
+                activityType == CallLogAdapter.ACTIVITY_TYPE_DIALTACTS
+                    ? (CallLogAdapter.OnActionModeStateChangedListener) getActivity()
+                    : null,
                 CallLogCache.getCallLogCache(getActivity()),
                 mContactInfoCache,
                 getVoicemailPlaybackPresenter(),
@@ -335,9 +367,18 @@
   public void onActivityCreated(Bundle savedInstanceState) {
     super.onActivityCreated(savedInstanceState);
     setupData();
+    updateSelectAllState(savedInstanceState);
     mAdapter.onRestoreInstanceState(savedInstanceState);
   }
 
+  private void updateSelectAllState(Bundle savedInstanceState) {
+    if (savedInstanceState != null) {
+      if (savedInstanceState.getBoolean(KEY_SELECT_ALL_MODE, false)) {
+        updateSelectAllIcon();
+      }
+    }
+  }
+
   @Override
   public void onViewCreated(View view, Bundle savedInstanceState) {
     super.onViewCreated(view, savedInstanceState);
@@ -380,6 +421,16 @@
   }
 
   @Override
+  public void onStart() {
+    super.onStart();
+    CequintCallerIdManager cequintCallerIdManager = null;
+    if (CequintCallerIdManager.isCequintCallerIdEnabled(getContext())) {
+      cequintCallerIdManager = CequintCallerIdManager.createInstanceForCallLog();
+    }
+    mContactInfoCache.setCequintCallerIdManager(cequintCallerIdManager);
+  }
+
+  @Override
   public void onStop() {
     updateOnTransition();
 
@@ -407,7 +458,7 @@
     outState.putBoolean(KEY_IS_CALL_LOG_ACTIVITY, mIsCallLogActivity);
     outState.putBoolean(KEY_HAS_READ_CALL_LOG_PERMISSION, mHasReadCallLogPermission);
     outState.putBoolean(KEY_REFRESH_DATA_REQUIRED, mRefreshDataRequired);
-
+    outState.putBoolean(KEY_SELECT_ALL_MODE, selectAllMode);
     mAdapter.onSaveInstanceState(outState);
   }
 
@@ -451,6 +502,8 @@
       mEmptyListView.setActionLabel(EmptyContentView.NO_LABEL);
     } else if (filterType == CallLogQueryHandler.CALL_TYPE_ALL) {
       mEmptyListView.setActionLabel(R.string.call_log_all_empty_action);
+    } else {
+      mEmptyListView.setActionLabel(EmptyContentView.NO_LABEL);
     }
   }
 
@@ -503,7 +556,8 @@
     if (mKeyguardManager != null
         && !mKeyguardManager.inKeyguardRestrictedInputMode()
         && mCallTypeFilter == Calls.VOICEMAIL_TYPE) {
-      CallLogNotificationsService.markNewVoicemailsAsOld(getActivity(), null);
+      LogUtil.i("CallLogFragment.updateOnTransition", "clearing all new voicemails");
+      CallLogNotificationsService.markAllNewVoicemailsAsOld(getActivity());
     }
   }
 
@@ -514,9 +568,14 @@
       return;
     }
 
-    if (!PermissionsUtil.hasPermission(activity, READ_CALL_LOG)) {
-      FragmentCompat.requestPermissions(
-          this, new String[] {READ_CALL_LOG}, READ_CALL_LOG_PERMISSION_REQUEST_CODE);
+    String[] deniedPermissions =
+        PermissionsUtil.getPermissionsCurrentlyDenied(
+            getContext(), PermissionsUtil.allPhoneGroupPermissionsUsedInDialer);
+    if (deniedPermissions.length > 0) {
+      LogUtil.i(
+          "CallLogFragment.onEmptyViewActionButtonClicked",
+          "Requesting permissions: " + Arrays.toString(deniedPermissions));
+      FragmentCompat.requestPermissions(this, deniedPermissions, PHONE_PERMISSIONS_REQUEST_CODE);
     } else if (!mIsCallLogActivity) {
       // Show dialpad if we are not in the call log activity.
       ((HostInterface) activity).showDialpad();
@@ -526,7 +585,7 @@
   @Override
   public void onRequestPermissionsResult(
       int requestCode, String[] permissions, int[] grantResults) {
-    if (requestCode == READ_CALL_LOG_PERMISSION_REQUEST_CODE) {
+    if (requestCode == PHONE_PERMISSIONS_REQUEST_CODE) {
       if (grantResults.length >= 1 && PackageManager.PERMISSION_GRANTED == grantResults[0]) {
         // Force a refresh of the data since we were missing the permission before this.
         mRefreshDataRequired = true;
@@ -589,6 +648,51 @@
     }
   }
 
+  @Override
+  public void showMultiSelectRemoveView(boolean show) {
+    mMultiSelectUnSelectAllViewContent.setVisibility(show ? View.VISIBLE : View.GONE);
+    mMultiSelectUnSelectAllViewContent.setAlpha(show ? 0 : 1);
+    mMultiSelectUnSelectAllViewContent.animate().alpha(show ? 1 : 0).start();
+    ((ListsFragment) getParentFragment()).showMultiSelectRemoveView(show);
+  }
+
+  @Override
+  public void setSelectAllModeToFalse() {
+    selectAllMode = false;
+    mSelectUnselectAllIcon.setImageDrawable(
+        getContext().getDrawable(R.drawable.ic_empty_check_mark_white_24dp));
+  }
+
+  @Override
+  public void tapSelectAll() {
+    LogUtil.i("CallLogFragment.tapSelectAll", "imitating select all");
+    selectAllMode = true;
+    updateSelectAllIcon();
+  }
+
+  @Override
+  public void onClick(View v) {
+    selectAllMode = !selectAllMode;
+    if (selectAllMode) {
+      Logger.get(v.getContext()).logImpression(DialerImpression.Type.MULTISELECT_SELECT_ALL);
+    } else {
+      Logger.get(v.getContext()).logImpression(DialerImpression.Type.MULTISELECT_UNSELECT_ALL);
+    }
+    updateSelectAllIcon();
+  }
+
+  private void updateSelectAllIcon() {
+    if (selectAllMode) {
+      mSelectUnselectAllIcon.setImageDrawable(
+          getContext().getDrawable(R.drawable.ic_check_mark_blue_24dp));
+      getAdapter().onAllSelected();
+    } else {
+      mSelectUnselectAllIcon.setImageDrawable(
+          getContext().getDrawable(R.drawable.ic_empty_check_mark_white_24dp));
+      getAdapter().onAllDeselected();
+    }
+  }
+
   public interface HostInterface {
 
     void showDialpad();
diff --git a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java
index 1daccd1..27aa825 100644
--- a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java
+++ b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java
@@ -17,6 +17,7 @@
 package com.android.dialer.app.calllog;
 
 import android.app.Activity;
+import android.content.ActivityNotFoundException;
 import android.content.Context;
 import android.content.Intent;
 import android.content.res.Resources;
@@ -25,32 +26,39 @@
 import android.provider.CallLog;
 import android.provider.CallLog.Calls;
 import android.provider.ContactsContract.CommonDataKinds.Phone;
+import android.support.annotation.IntDef;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import android.support.v7.widget.CardView;
 import android.support.v7.widget.RecyclerView;
+import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
+import android.telecom.VideoProfile;
 import android.telephony.PhoneNumberUtils;
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
 import android.view.ContextMenu;
+import android.view.LayoutInflater;
 import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewStub;
 import android.widget.ImageButton;
 import android.widget.ImageView;
-import android.widget.QuickContactBadge;
 import android.widget.TextView;
+import android.widget.Toast;
 import com.android.contacts.common.ClipboardUtils;
 import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.contacts.common.dialog.CallSubjectDialog;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
+import com.android.contacts.common.lettertiles.LetterTileDrawable.ContactType;
 import com.android.contacts.common.util.UriUtils;
 import com.android.dialer.app.DialtactsActivity;
 import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.CallLogAdapter.OnActionModeStateChangedListener;
 import com.android.dialer.app.calllog.calllogcache.CallLogCache;
 import com.android.dialer.app.voicemail.VoicemailPlaybackLayout;
 import com.android.dialer.app.voicemail.VoicemailPlaybackPresenter;
@@ -58,23 +66,33 @@
 import com.android.dialer.blocking.FilteredNumberCompat;
 import com.android.dialer.blocking.FilteredNumbersUtil;
 import com.android.dialer.callcomposer.CallComposerActivity;
-import com.android.dialer.callcomposer.CallComposerContact;
+import com.android.dialer.calldetails.CallDetailsActivity;
 import com.android.dialer.calldetails.CallDetailsEntries;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+import com.android.dialer.dialercontact.DialerContact;
+import com.android.dialer.dialercontact.SimDetails;
 import com.android.dialer.lightbringer.Lightbringer;
 import com.android.dialer.lightbringer.LightbringerComponent;
 import com.android.dialer.logging.ContactSource;
 import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.InteractionEvent;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.phonenumbercache.CachedNumberLookupService;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumbercache.PhoneNumberCache;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
+import com.android.dialer.telecom.TelecomUtil;
 import com.android.dialer.util.CallUtil;
 import com.android.dialer.util.DialerUtils;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
 
 /**
  * This is an object containing references to views contained by the call log list item. This
@@ -90,7 +108,7 @@
   /** The root view of the call log list item */
   public final View rootView;
   /** The quick contact badge for the contact. */
-  public final QuickContactBadge quickContactView;
+  public final DialerQuickContactBadge quickContactView;
   /** The primary action view of the entry. */
   public final View primaryActionView;
   /** The details of the phone call. */
@@ -103,11 +121,13 @@
   public final ImageView primaryActionButtonView;
 
   private final Context mContext;
+  @Nullable private final PhoneAccountHandle mDefaultPhoneAccountHandle;
   private final CallLogCache mCallLogCache;
   private final CallLogListItemHelper mCallLogListItemHelper;
   private final CachedNumberLookupService mCachedNumberLookupService;
   private final VoicemailPlaybackPresenter mVoicemailPlaybackPresenter;
   private final OnClickListener mBlockReportListener;
+  @HostUi private final int hostUi;
   /** Whether the data fields are populated by the worker thread, ready to be shown. */
   public boolean isLoaded;
   /** The view containing call log item actions. Null until the ViewStub is inflated. */
@@ -201,6 +221,7 @@
   public boolean lightbringerReady;
 
   private View.OnClickListener mExpandCollapseListener;
+  private final OnActionModeStateChangedListener onActionModeStateChangedListener;
   private final View.OnLongClickListener longPressListener;
   private boolean mVoicemailPrimaryActionButtonClicked;
 
@@ -216,11 +237,12 @@
       OnClickListener blockReportListener,
       View.OnClickListener expandCollapseListener,
       View.OnLongClickListener longClickListener,
+      CallLogAdapter.OnActionModeStateChangedListener actionModeStateChangedListener,
       CallLogCache callLogCache,
       CallLogListItemHelper callLogListItemHelper,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter,
       View rootView,
-      QuickContactBadge quickContactView,
+      DialerQuickContactBadge dialerQuickContactView,
       View primaryActionView,
       PhoneCallDetailsViews phoneCallDetailsViews,
       CardView callLogEntryView,
@@ -230,6 +252,7 @@
 
     mContext = context;
     mExpandCollapseListener = expandCollapseListener;
+    onActionModeStateChangedListener = actionModeStateChangedListener;
     longPressListener = longClickListener;
     mCallLogCache = callLogCache;
     mCallLogListItemHelper = callLogListItemHelper;
@@ -237,8 +260,12 @@
     mBlockReportListener = blockReportListener;
     mCachedNumberLookupService = PhoneNumberCache.get(mContext).getCachedNumberLookupService();
 
+    // Cache this to avoid having to look it up each time we bind to a call log entry
+    mDefaultPhoneAccountHandle =
+        TelecomUtil.getDefaultOutgoingPhoneAccount(context, PhoneAccount.SCHEME_TEL);
+
     this.rootView = rootView;
-    this.quickContactView = quickContactView;
+    this.quickContactView = dialerQuickContactView;
     this.primaryActionView = primaryActionView;
     this.phoneCallDetailsViews = phoneCallDetailsViews;
     this.callLogEntryView = callLogEntryView;
@@ -251,6 +278,23 @@
     phoneCallDetailsViews.nameView.setElegantTextHeight(false);
     phoneCallDetailsViews.callLocationAndDate.setElegantTextHeight(false);
 
+    if (mContext instanceof CallLogActivity) {
+      hostUi = HostUi.CALL_HISTORY;
+      Logger.get(mContext)
+          .logQuickContactOnTouch(
+              quickContactView, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CALL_HISTORY, true);
+    } else if (mVoicemailPlaybackPresenter == null) {
+      hostUi = HostUi.CALL_LOG;
+      Logger.get(mContext)
+          .logQuickContactOnTouch(
+              quickContactView, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CALL_LOG, true);
+    } else {
+      hostUi = HostUi.VOICEMAIL;
+      Logger.get(mContext)
+          .logQuickContactOnTouch(
+              quickContactView, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_VOICEMAIL, false);
+    }
+
     quickContactView.setOverlay(null);
     if (CompatUtils.hasPrioritizedMimeType()) {
       quickContactView.setPrioritizedMimeType(Phone.CONTENT_ITEM_TYPE);
@@ -264,6 +308,8 @@
                 CallLogAdapter.ENABLE_CALL_LOG_MULTI_SELECT_FLAG)) {
       primaryActionView.setOnLongClickListener(longPressListener);
       quickContactView.setOnLongClickListener(longPressListener);
+      quickContactView.setMulitSelectListeners(
+          mExpandCollapseListener, onActionModeStateChangedListener);
     } else {
       primaryActionView.setOnCreateContextMenuListener(this);
     }
@@ -275,6 +321,7 @@
       OnClickListener blockReportListener,
       View.OnClickListener expandCollapseListener,
       View.OnLongClickListener longClickListener,
+      CallLogAdapter.OnActionModeStateChangedListener actionModeStateChangeListener,
       CallLogCache callLogCache,
       CallLogListItemHelper callLogListItemHelper,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter) {
@@ -284,11 +331,12 @@
         blockReportListener,
         expandCollapseListener,
         longClickListener,
+        actionModeStateChangeListener,
         callLogCache,
         callLogListItemHelper,
         voicemailPlaybackPresenter,
         view,
-        (QuickContactBadge) view.findViewById(R.id.quick_contact_photo),
+        (DialerQuickContactBadge) view.findViewById(R.id.quick_contact_photo),
         view.findViewById(R.id.primary_action_view),
         PhoneCallDetailsViews.fromView(view),
         (CardView) view.findViewById(R.id.call_log_row),
@@ -297,6 +345,13 @@
   }
 
   public static CallLogListItemViewHolder createForTest(Context context) {
+    return createForTest(context, null, null);
+  }
+
+  public static CallLogListItemViewHolder createForTest(
+      Context context,
+      View.OnClickListener expandCollapseListener,
+      VoicemailPlaybackPresenter voicemailPlaybackPresenter) {
     Resources resources = context.getResources();
     CallLogCache callLogCache = CallLogCache.getCallLogCache(context);
     PhoneCallDetailsHelper phoneCallDetailsHelper =
@@ -306,13 +361,14 @@
         new CallLogListItemViewHolder(
             context,
             null,
-            null /* expandCollapseListener */,
+            expandCollapseListener /* expandCollapseListener */,
+            null,
             null,
             callLogCache,
             new CallLogListItemHelper(phoneCallDetailsHelper, resources, callLogCache),
-            null /* voicemailPlaybackPresenter */,
-            new View(context),
-            new QuickContactBadge(context),
+            voicemailPlaybackPresenter,
+            LayoutInflater.from(context).inflate(R.layout.call_log_list_item, null),
+            new DialerQuickContactBadge(context),
             new View(context),
             PhoneCallDetailsViews.createForTest(context),
             new CardView(context),
@@ -456,6 +512,18 @@
       // Treat as normal list item; show call button, if possible.
       if (PhoneNumberHelper.canPlaceCallsTo(number, numberPresentation)) {
         boolean isVoicemailNumber = mCallLogCache.isVoicemailNumber(accountHandle, number);
+
+        if (!isVoicemailNumber && showLightbringerPrimaryButton()) {
+          CallIntentBuilder.increaseLightbringerCallButtonAppearInCollapsedCallLogItemCount();
+          primaryActionButtonView.setTag(IntentProvider.getLightbringerIntentProvider(number));
+          primaryActionButtonView.setContentDescription(
+              TextUtils.expandTemplate(
+                  mContext.getString(R.string.description_video_call_action), validNameOrNumber));
+          primaryActionButtonView.setImageResource(R.drawable.quantum_ic_videocam_vd_theme_24);
+          primaryActionButtonView.setVisibility(View.VISIBLE);
+          return;
+        }
+
         if (isVoicemailNumber) {
           // Call to generic voicemail number, in case there are multiple accounts.
           primaryActionButtonView.setTag(IntentProvider.getReturnVoicemailCallIntentProvider());
@@ -467,7 +535,7 @@
         primaryActionButtonView.setContentDescription(
             TextUtils.expandTemplate(
                 mContext.getString(R.string.description_call_action), validNameOrNumber));
-        primaryActionButtonView.setImageResource(R.drawable.quantum_ic_call_white_24);
+        primaryActionButtonView.setImageResource(R.drawable.quantum_ic_call_vd_theme_24);
         primaryActionButtonView.setVisibility(View.VISIBLE);
       } else {
         primaryActionButtonView.setTag(null);
@@ -513,8 +581,15 @@
       return;
     }
 
-    if (!TextUtils.isEmpty(voicemailUri) && canPlaceCallToNumber) {
+    if (canPlaceCallToNumber) {
+      // Set up the call button but hide it by default (the primary action is to call so it is
+      // redundant). We then set it to be visible when appropriate below. This saves us having to
+      // remember to set it to GONE in multiple places.
       callButtonView.setTag(IntentProvider.getReturnCallIntentProvider(number));
+      callButtonView.setVisibility(View.GONE);
+    }
+
+    if (!TextUtils.isEmpty(voicemailUri) && canPlaceCallToNumber) {
       ((TextView) callButtonView.findViewById(R.id.call_action_text))
           .setText(
               TextUtils.expandTemplate(
@@ -529,13 +604,15 @@
         callTypeOrLocationView.setVisibility(View.GONE);
       }
       callButtonView.setVisibility(View.VISIBLE);
-    } else {
-      callButtonView.setVisibility(View.GONE);
     }
 
-    if (hasPlacedCarrierVideoCall() || canSupportCarrierVideoCall()) {
+    if (CallUtil.isVideoEnabled(mContext)
+        && (hasPlacedCarrierVideoCall() || canSupportCarrierVideoCall())) {
       videoCallButtonView.setTag(IntentProvider.getReturnVideoCallIntentProvider(number));
       videoCallButtonView.setVisibility(View.VISIBLE);
+    } else if (showLightbringerPrimaryButton()) {
+      callButtonView.setVisibility(View.VISIBLE);
+      videoCallButtonView.setVisibility(View.GONE);
     } else if (lightbringerReady) {
       videoCallButtonView.setTag(IntentProvider.getLightbringerIntentProvider(number));
       videoCallButtonView.setVisibility(View.VISIBLE);
@@ -567,8 +644,12 @@
       detailsButtonView.setVisibility(View.GONE);
     } else {
       detailsButtonView.setVisibility(View.VISIBLE);
+      boolean canReportCallerId =
+          mCachedNumberLookupService != null
+              && mCachedNumberLookupService.canReportAsInvalid(info.sourceType, info.objectId);
       detailsButtonView.setTag(
-          IntentProvider.getCallDetailIntentProvider(callDetailsEntries, buildContact()));
+          IntentProvider.getCallDetailIntentProvider(
+              callDetailsEntries, buildContact(), canReportCallerId));
     }
 
     boolean isBlockedOrSpam = blockId != null || (isSpamFeatureEnabled && isSpam);
@@ -616,6 +697,12 @@
     return false;
   }
 
+  private boolean showLightbringerPrimaryButton() {
+    return accountHandle != null
+        && accountHandle.getComponentName().equals(getLightbringer().getPhoneAccountComponentName())
+        && lightbringerReady;
+  }
+
   private static boolean hasDialableChar(CharSequence number) {
     if (TextUtils.isEmpty(number)) {
       return false;
@@ -635,12 +722,10 @@
     if (accountHandle == null) {
       return false;
     }
-    if (accountHandle
-        .getComponentName()
-        .equals(getLightbringer().getPhoneAccountComponentName(mContext))) {
+    if (mDefaultPhoneAccountHandle == null) {
       return false;
     }
-    return true;
+    return accountHandle.getComponentName().equals(mDefaultPhoneAccountHandle.getComponentName());
   }
 
   private boolean canSupportCarrierVideoCall() {
@@ -717,19 +802,14 @@
             getContactType());
   }
 
-  private int getContactType() {
-    int contactType = ContactPhotoManager.TYPE_DEFAULT;
-    if (mCallLogCache.isVoicemailNumber(accountHandle, number)) {
-      contactType = ContactPhotoManager.TYPE_VOICEMAIL;
-    } else if (isSpam) {
-      contactType = ContactPhotoManager.TYPE_SPAM;
-    } else if (mCachedNumberLookupService != null
-        && mCachedNumberLookupService.isBusiness(info.sourceType)) {
-      contactType = ContactPhotoManager.TYPE_BUSINESS;
-    } else if (numberPresentation == TelecomManager.PRESENTATION_RESTRICTED) {
-      contactType = ContactPhotoManager.TYPE_GENERIC_AVATAR;
-    }
-    return contactType;
+  private @ContactType int getContactType() {
+    return LetterTileDrawable.getContactTypeFromPrimitives(
+        mCallLogCache.isVoicemailNumber(accountHandle, number),
+        isSpam,
+        mCachedNumberLookupService != null
+            && mCachedNumberLookupService.isBusiness(info.sourceType),
+        numberPresentation,
+        false);
   }
 
   @Override
@@ -795,19 +875,52 @@
       mVoicemailPlaybackPresenter.shareVoicemail();
     } else {
       logCallLogAction(view.getId());
+
       final IntentProvider intentProvider = (IntentProvider) view.getTag();
-      if (intentProvider != null) {
-        final Intent intent = intentProvider.getIntent(mContext);
-        // See IntentProvider.getCallDetailIntentProvider() for why this may be null.
-        if (intent != null) {
-          DialerUtils.startActivityWithErrorToast(mContext, intent);
+      if (intentProvider == null) {
+        return;
+      }
+
+      final Intent intent = intentProvider.getIntent(mContext);
+      // See IntentProvider.getCallDetailIntentProvider() for why this may be null.
+      if (intent == null) {
+        return;
+      }
+
+      // We check to see if we are starting a Lightbringer intent. The reason is Lightbringer
+      // intents need to be started using startActivityForResult instead of the usual startActivity
+      String packageName = intent.getPackage();
+      if (packageName != null && packageName.equals(getLightbringer().getPackageName())) {
+        Logger.get(mContext)
+            .logImpression(DialerImpression.Type.LIGHTBRINGER_VIDEO_REQUESTED_FROM_CALL_LOG);
+        startLightbringerActivity(intent);
+      } else if (CallDetailsActivity.isLaunchIntent(intent)) {
+        PerformanceReport.recordClick(UiAction.Type.OPEN_CALL_DETAIL);
+        ((Activity) mContext)
+            .startActivityForResult(intent, DialtactsActivity.ACTIVITY_REQUEST_CODE_CALL_DETAILS);
+      } else {
+        if (Intent.ACTION_CALL.equals(intent.getAction())
+            && intent.getIntExtra(TelecomManager.EXTRA_START_CALL_WITH_VIDEO_STATE, -1)
+                == VideoProfile.STATE_BIDIRECTIONAL) {
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.IMS_VIDEO_REQUESTED_FROM_CALL_LOG);
         }
+        DialerUtils.startActivityWithErrorToast(mContext, intent);
       }
     }
   }
 
-  private CallComposerContact buildContact() {
-    CallComposerContact.Builder contact = CallComposerContact.newBuilder();
+  private void startLightbringerActivity(Intent intent) {
+    try {
+      Activity activity = (Activity) mContext;
+      activity.startActivityForResult(intent, DialtactsActivity.ACTIVITY_REQUEST_CODE_LIGHTBRINGER);
+    } catch (ActivityNotFoundException e) {
+      Toast.makeText(mContext, R.string.activity_not_available, Toast.LENGTH_SHORT).show();
+    }
+  }
+
+  private DialerContact buildContact() {
+    DialerContact.Builder contact = DialerContact.newBuilder();
     contact.setPhotoId(info.photoId);
     if (info.photoUri != null) {
       contact.setPhotoUri(info.photoUri.toString());
@@ -826,6 +939,19 @@
     }
     /* phone number type (e.g. mobile) in second line of contact view */
     contact.setNumberLabel(numberType);
+
+    /* third line of contact view. */
+    String accountLabel = mCallLogCache.getAccountLabel(accountHandle);
+    if (!TextUtils.isEmpty(accountLabel)) {
+      SimDetails.Builder simDetails = SimDetails.newBuilder().setNetwork(accountLabel);
+      int color = mCallLogCache.getAccountColor(accountHandle);
+      if (color == PhoneAccount.NO_HIGHLIGHT_COLOR) {
+        simDetails.setColor(R.color.secondary_text_color);
+      } else {
+        simDetails.setColor(color);
+      }
+      contact.setSimDetails(simDetails.build());
+    }
     return contact.build();
   }
 
@@ -834,8 +960,38 @@
       Logger.get(mContext).logImpression(DialerImpression.Type.CALL_LOG_SEND_MESSAGE);
     } else if (id == R.id.add_to_existing_contact_action) {
       Logger.get(mContext).logImpression(DialerImpression.Type.CALL_LOG_ADD_TO_CONTACT);
+      switch (hostUi) {
+        case HostUi.CALL_HISTORY:
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.ADD_TO_A_CONTACT_FROM_CALL_HISTORY);
+          break;
+        case HostUi.CALL_LOG:
+          Logger.get(mContext).logImpression(DialerImpression.Type.ADD_TO_A_CONTACT_FROM_CALL_LOG);
+          break;
+        case HostUi.VOICEMAIL:
+          Logger.get(mContext).logImpression(DialerImpression.Type.ADD_TO_A_CONTACT_FROM_VOICEMAIL);
+          break;
+        default:
+          throw Assert.createIllegalStateFailException();
+      }
     } else if (id == R.id.create_new_contact_action) {
       Logger.get(mContext).logImpression(DialerImpression.Type.CALL_LOG_CREATE_NEW_CONTACT);
+      switch (hostUi) {
+        case HostUi.CALL_HISTORY:
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.CREATE_NEW_CONTACT_FROM_CALL_HISTORY);
+          break;
+        case HostUi.CALL_LOG:
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.CREATE_NEW_CONTACT_FROM_CALL_LOG);
+          break;
+        case HostUi.VOICEMAIL:
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.CREATE_NEW_CONTACT_FROM_VOICEMAIL);
+          break;
+        default:
+          throw Assert.createIllegalStateFailException();
+      }
     }
   }
 
@@ -987,6 +1143,15 @@
     Logger.get(mContext).logScreenView(ScreenEvent.Type.CALL_LOG_CONTEXT_MENU, (Activity) mContext);
   }
 
+  /** Specifies where the view holder belongs. */
+  @IntDef({HostUi.CALL_LOG, HostUi.CALL_HISTORY, HostUi.VOICEMAIL})
+  @Retention(RetentionPolicy.SOURCE)
+  private @interface HostUi {
+    int CALL_LOG = 0;
+    int CALL_HISTORY = 1;
+    int VOICEMAIL = 2;
+  }
+
   public interface OnClickListener {
 
     void onBlockReportSpam(
diff --git a/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java b/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java
index e169b8d..43e03e9 100644
--- a/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java
+++ b/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java
@@ -18,7 +18,6 @@
 
 import android.Manifest;
 import android.annotation.TargetApi;
-import android.app.NotificationManager;
 import android.content.ContentResolver;
 import android.content.ContentUris;
 import android.content.ContentValues;
@@ -27,6 +26,7 @@
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
 import android.provider.CallLog.Calls;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.WorkerThread;
 import android.support.v4.os.UserManagerCompat;
@@ -36,7 +36,6 @@
 import com.android.dialer.calllogutils.PhoneNumberDisplayUtil;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.location.GeoUtil;
-import com.android.dialer.notification.GroupedNotificationUtil;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumbercache.ContactInfoHelper;
 import com.android.dialer.util.PermissionsUtil;
@@ -46,7 +45,6 @@
 /** Helper class operating on call log notifications. */
 public class CallLogNotificationsQueryHelper {
 
-  private static final String TAG = "CallLogNotifHelper";
   private final Context mContext;
   private final NewCallsQuery mNewCallsQuery;
   private final ContactInfoHelper mContactInfoHelper;
@@ -74,44 +72,58 @@
         countryIso);
   }
 
+  public static void markAllMissedCallsInCallLogAsRead(@NonNull Context context) {
+    markMissedCallsInCallLogAsRead(context, null);
+  }
+
+  public static void markSingleMissedCallInCallLogAsRead(
+      @NonNull Context context, @Nullable Uri callUri) {
+    if (callUri == null) {
+      LogUtil.e(
+          "CallLogNotificationsQueryHelper.markSingleMissedCallInCallLogAsRead",
+          "call URI is null, unable to mark call as read");
+    } else {
+      markMissedCallsInCallLogAsRead(context, callUri);
+    }
+  }
+
   /**
-   * Removes the missed call notifications and marks calls as read. If a callUri is provided, only
-   * that call is marked as read.
+   * If callUri is null then calls with a matching callUri are marked as read, otherwise all calls
+   * are marked as read.
    */
   @WorkerThread
-  public static void removeMissedCallNotifications(Context context, @Nullable Uri callUri) {
-    // Call log is only accessible when unlocked. If that's the case, clear the list of
-    // new missed calls from the call log.
-    if (UserManagerCompat.isUserUnlocked(context) && PermissionsUtil.hasPhonePermissions(context)) {
-      ContentValues values = new ContentValues();
-      values.put(Calls.NEW, 0);
-      values.put(Calls.IS_READ, 1);
-      StringBuilder where = new StringBuilder();
-      where.append(Calls.NEW);
-      where.append(" = 1 AND ");
-      where.append(Calls.TYPE);
-      where.append(" = ?");
-      try {
-        context
-            .getContentResolver()
-            .update(
-                callUri == null ? Calls.CONTENT_URI : callUri,
-                values,
-                where.toString(),
-                new String[] {Integer.toString(Calls.MISSED_TYPE)});
-      } catch (IllegalArgumentException e) {
-        LogUtil.e(
-            "CallLogNotificationsQueryHelper.removeMissedCallNotifications",
-            "contacts provider update command failed",
-            e);
-      }
+  private static void markMissedCallsInCallLogAsRead(Context context, @Nullable Uri callUri) {
+    if (!UserManagerCompat.isUserUnlocked(context)) {
+      LogUtil.e("CallLogNotificationsQueryHelper.markMissedCallsInCallLogAsRead", "locked");
+      return;
+    }
+    if (!PermissionsUtil.hasPhonePermissions(context)) {
+      LogUtil.e("CallLogNotificationsQueryHelper.markMissedCallsInCallLogAsRead", "no permission");
+      return;
     }
 
-    GroupedNotificationUtil.removeNotification(
-        context.getSystemService(NotificationManager.class),
-        callUri != null ? callUri.toString() : null,
-        R.id.notification_missed_call,
-        MissedCallNotifier.NOTIFICATION_TAG);
+    ContentValues values = new ContentValues();
+    values.put(Calls.NEW, 0);
+    values.put(Calls.IS_READ, 1);
+    StringBuilder where = new StringBuilder();
+    where.append(Calls.NEW);
+    where.append(" = 1 AND ");
+    where.append(Calls.TYPE);
+    where.append(" = ?");
+    try {
+      context
+          .getContentResolver()
+          .update(
+              callUri == null ? Calls.CONTENT_URI : callUri,
+              values,
+              where.toString(),
+              new String[] {Integer.toString(Calls.MISSED_TYPE)});
+    } catch (IllegalArgumentException e) {
+      LogUtil.e(
+          "CallLogNotificationsQueryHelper.markMissedCallsInCallLogAsRead",
+          "contacts provider update command failed",
+          e);
+    }
   }
 
   /** Create a new instance of {@link NewCallsQuery}. */
@@ -281,7 +293,9 @@
     @TargetApi(VERSION_CODES.M)
     public List<NewCall> query(int type) {
       if (!PermissionsUtil.hasPermission(mContext, Manifest.permission.READ_CALL_LOG)) {
-        LogUtil.w(TAG, "No READ_CALL_LOG permission, returning null for calls lookup.");
+        LogUtil.w(
+            "CallLogNotificationsQueryHelper.DefaultNewCallsQuery.query",
+            "no READ_CALL_LOG permission, returning null for calls lookup.");
         return null;
       }
       final String selection = String.format("%s = 1 AND %s = ?", Calls.NEW, Calls.TYPE);
@@ -302,7 +316,9 @@
         }
         return newCalls;
       } catch (RuntimeException e) {
-        LogUtil.w(TAG, "Exception when querying Contacts Provider for calls lookup");
+        LogUtil.w(
+            "CallLogNotificationsQueryHelper.DefaultNewCallsQuery.query",
+            "exception when querying Contacts Provider for calls lookup");
         return null;
       }
     }
diff --git a/java/com/android/dialer/app/calllog/CallLogNotificationsService.java b/java/com/android/dialer/app/calllog/CallLogNotificationsService.java
index 7dfd2cb..be1ebfb 100644
--- a/java/com/android/dialer/app/calllog/CallLogNotificationsService.java
+++ b/java/com/android/dialer/app/calllog/CallLogNotificationsService.java
@@ -17,12 +17,13 @@
 package com.android.dialer.app.calllog;
 
 import android.app.IntentService;
+import android.app.PendingIntent;
 import android.content.Context;
 import android.content.Intent;
 import android.net.Uri;
-import android.os.Handler;
-import android.os.Looper;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.telecom.TelecomUtil;
 import com.android.dialer.util.PermissionsUtil;
@@ -43,16 +44,20 @@
  */
 public class CallLogNotificationsService extends IntentService {
 
-  /** Action to mark all the new voicemails as old. */
-  public static final String ACTION_MARK_NEW_VOICEMAILS_AS_OLD =
-      "com.android.dialer.calllog.ACTION_MARK_NEW_VOICEMAILS_AS_OLD";
+  private static final String ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD =
+      "com.android.dialer.calllog.ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD";
 
-  /** Action to mark all the new missed calls as old. */
-  public static final String ACTION_MARK_NEW_MISSED_CALLS_AS_OLD =
-      "com.android.dialer.calllog.ACTION_MARK_NEW_MISSED_CALLS_AS_OLD";
+  private static final String ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD =
+      "com.android.dialer.calllog.ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD ";
 
-  /** Action to update missed call notifications with a post call note. */
-  public static final String ACTION_INCOMING_POST_CALL =
+  @VisibleForTesting
+  static final String ACTION_CANCEL_ALL_MISSED_CALLS =
+      "com.android.dialer.calllog.ACTION_CANCEL_ALL_MISSED_CALLS";
+
+  private static final String ACTION_CANCEL_SINGLE_MISSED_CALL =
+      "com.android.dialer.calllog.ACTION_CANCEL_SINGLE_MISSED_CALL";
+
+  private static final String ACTION_INCOMING_POST_CALL =
       "com.android.dialer.calllog.INCOMING_POST_CALL";
 
   /** Action to call back a missed call. */
@@ -64,7 +69,7 @@
    *
    * <p>It must be a {@link String}
    */
-  public static final String EXTRA_POST_CALL_NOTE = "POST_CALL_NOTE";
+  private static final String EXTRA_POST_CALL_NOTE = "POST_CALL_NOTE";
 
   /**
    * Extra to be included with {@link #ACTION_INCOMING_POST_CALL} to represent the phone number the
@@ -72,10 +77,9 @@
    *
    * <p>It must be a {@link String}
    */
-  public static final String EXTRA_POST_CALL_NUMBER = "POST_CALL_NUMBER";
+  private static final String EXTRA_POST_CALL_NUMBER = "POST_CALL_NUMBER";
 
   public static final int UNKNOWN_MISSED_CALL_COUNT = -1;
-  private VoicemailQueryHandler mVoicemailQueryHandler;
 
   public CallLogNotificationsService() {
     super("CallLogNotificationsService");
@@ -89,52 +93,95 @@
     context.startService(serviceIntent);
   }
 
-  public static void markNewVoicemailsAsOld(Context context, @Nullable Uri voicemailUri) {
+  public static void markAllNewVoicemailsAsOld(Context context) {
+    LogUtil.enterBlock("CallLogNotificationsService.markAllNewVoicemailsAsOld");
     Intent serviceIntent = new Intent(context, CallLogNotificationsService.class);
-    serviceIntent.setAction(CallLogNotificationsService.ACTION_MARK_NEW_VOICEMAILS_AS_OLD);
+    serviceIntent.setAction(CallLogNotificationsService.ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD);
+    context.startService(serviceIntent);
+  }
+
+  public static void markSingleNewVoicemailAsOld(Context context, @Nullable Uri voicemailUri) {
+    LogUtil.enterBlock("CallLogNotificationsService.markSingleNewVoicemailAsOld");
+    Intent serviceIntent = new Intent(context, CallLogNotificationsService.class);
+    serviceIntent.setAction(CallLogNotificationsService.ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD);
     serviceIntent.setData(voicemailUri);
     context.startService(serviceIntent);
   }
 
-  public static void markNewMissedCallsAsOld(Context context, @Nullable Uri callUri) {
+  public static PendingIntent createMarkAllNewVoicemailsAsOldIntent(@NonNull Context context) {
+    Intent intent = new Intent(context, CallLogNotificationsService.class);
+    intent.setAction(CallLogNotificationsService.ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD);
+    return PendingIntent.getService(context, 0, intent, 0);
+  }
+
+  public static PendingIntent createMarkSingleNewVoicemailAsOldIntent(
+      @NonNull Context context, @Nullable Uri voicemailUri) {
+    Intent intent = new Intent(context, CallLogNotificationsService.class);
+    intent.setAction(CallLogNotificationsService.ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD);
+    intent.setData(voicemailUri);
+    return PendingIntent.getService(context, 0, intent, 0);
+  }
+
+  public static void cancelAllMissedCalls(@NonNull Context context) {
+    LogUtil.enterBlock("CallLogNotificationsService.cancelAllMissedCalls");
     Intent serviceIntent = new Intent(context, CallLogNotificationsService.class);
-    serviceIntent.setAction(ACTION_MARK_NEW_MISSED_CALLS_AS_OLD);
-    serviceIntent.setData(callUri);
+    serviceIntent.setAction(ACTION_CANCEL_ALL_MISSED_CALLS);
     context.startService(serviceIntent);
   }
 
+  public static PendingIntent createCancelAllMissedCallsPendingIntent(@NonNull Context context) {
+    Intent intent = new Intent(context, CallLogNotificationsService.class);
+    intent.setAction(ACTION_CANCEL_ALL_MISSED_CALLS);
+    return PendingIntent.getService(context, 0, intent, 0);
+  }
+
+  public static PendingIntent createCancelSingleMissedCallPendingIntent(
+      @NonNull Context context, @Nullable Uri callUri) {
+    Intent intent = new Intent(context, CallLogNotificationsService.class);
+    intent.setAction(ACTION_CANCEL_SINGLE_MISSED_CALL);
+    intent.setData(callUri);
+    return PendingIntent.getService(context, 0, intent, 0);
+  }
+
   @Override
   protected void onHandleIntent(Intent intent) {
     if (intent == null) {
-      LogUtil.d("CallLogNotificationsService.onHandleIntent", "could not handle null intent");
+      LogUtil.e("CallLogNotificationsService.onHandleIntent", "could not handle null intent");
       return;
     }
 
-    if (!PermissionsUtil.hasPermission(this, android.Manifest.permission.READ_CALL_LOG)) {
+    if (!PermissionsUtil.hasPermission(this, android.Manifest.permission.READ_CALL_LOG)
+        || !PermissionsUtil.hasPermission(this, android.Manifest.permission.WRITE_CALL_LOG)) {
+      LogUtil.e("CallLogNotificationsService.onHandleIntent", "no READ_CALL_LOG permission");
       return;
     }
 
     String action = intent.getAction();
+    LogUtil.i("CallLogNotificationsService.onHandleIntent", "action: " + action);
     switch (action) {
-      case ACTION_MARK_NEW_VOICEMAILS_AS_OLD:
-        // VoicemailQueryHandler cannot be created on the IntentService worker thread. The completed
-        // callback might happen when the thread is dead.
-        Handler handler = new Handler(Looper.getMainLooper());
-        handler.post(
-            () -> {
-              if (mVoicemailQueryHandler == null) {
-                mVoicemailQueryHandler = new VoicemailQueryHandler(this, getContentResolver());
-              }
-              mVoicemailQueryHandler.markNewVoicemailsAsOld(intent.getData());
-            });
+      case ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD:
+        VoicemailQueryHandler.markAllNewVoicemailsAsRead(this);
+        VisualVoicemailNotifier.cancelAllVoicemailNotifications(this);
+        break;
+      case ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD:
+        Uri voicemailUri = intent.getData();
+        VoicemailQueryHandler.markSingleNewVoicemailAsRead(this, voicemailUri);
+        VisualVoicemailNotifier.cancelSingleVoicemailNotification(this, voicemailUri);
         break;
       case ACTION_INCOMING_POST_CALL:
         String note = intent.getStringExtra(EXTRA_POST_CALL_NOTE);
         String phoneNumber = intent.getStringExtra(EXTRA_POST_CALL_NUMBER);
         MissedCallNotifier.getIstance(this).insertPostCallNotification(phoneNumber, note);
         break;
-      case ACTION_MARK_NEW_MISSED_CALLS_AS_OLD:
-        CallLogNotificationsQueryHelper.removeMissedCallNotifications(this, intent.getData());
+      case ACTION_CANCEL_ALL_MISSED_CALLS:
+        CallLogNotificationsQueryHelper.markAllMissedCallsInCallLogAsRead(this);
+        MissedCallNotifier.cancelAllMissedCallNotifications(this);
+        TelecomUtil.cancelMissedCallsNotification(this);
+        break;
+      case ACTION_CANCEL_SINGLE_MISSED_CALL:
+        Uri callUri = intent.getData();
+        CallLogNotificationsQueryHelper.markSingleMissedCallInCallLogAsRead(this, callUri);
+        MissedCallNotifier.cancelSingleMissedCallNotification(this, callUri);
         TelecomUtil.cancelMissedCallsNotification(this);
         break;
       case ACTION_CALL_BACK_FROM_MISSED_CALL_NOTIFICATION:
@@ -145,7 +192,7 @@
                 intent.getData());
         break;
       default:
-        LogUtil.d("CallLogNotificationsService.onHandleIntent", "could not handle: " + intent);
+        LogUtil.e("CallLogNotificationsService.onHandleIntent", "no handler for action: " + action);
         break;
     }
   }
diff --git a/java/com/android/dialer/app/calllog/CallLogReceiver.java b/java/com/android/dialer/app/calllog/CallLogReceiver.java
index 172d001..ce3132d 100644
--- a/java/com/android/dialer/app/calllog/CallLogReceiver.java
+++ b/java/com/android/dialer/app/calllog/CallLogReceiver.java
@@ -39,10 +39,10 @@
     if (VoicemailContract.ACTION_NEW_VOICEMAIL.equals(intent.getAction())) {
       checkVoicemailStatus(context);
       PendingResult pendingResult = goAsync();
-      DefaultVoicemailNotifier.updateVoicemailNotifications(context, pendingResult::finish);
+      VisualVoicemailUpdateTask.scheduleTask(context, pendingResult::finish);
     } else if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
       PendingResult pendingResult = goAsync();
-      DefaultVoicemailNotifier.updateVoicemailNotifications(context, pendingResult::finish);
+      VisualVoicemailUpdateTask.scheduleTask(context, pendingResult::finish);
     } else {
       LogUtil.w("CallLogReceiver.onReceive", "could not handle: " + intent);
     }
diff --git a/java/com/android/dialer/app/calllog/ClearCallLogDialog.java b/java/com/android/dialer/app/calllog/ClearCallLogDialog.java
index a01b895..5c3d4d9 100644
--- a/java/com/android/dialer/app/calllog/ClearCallLogDialog.java
+++ b/java/com/android/dialer/app/calllog/ClearCallLogDialog.java
@@ -29,16 +29,21 @@
 import android.os.AsyncTask;
 import android.os.Bundle;
 import android.provider.CallLog.Calls;
+import android.support.annotation.NonNull;
 import com.android.dialer.app.R;
+import com.android.dialer.common.Assert;
 import com.android.dialer.phonenumbercache.CachedNumberLookupService;
 import com.android.dialer.phonenumbercache.PhoneNumberCache;
 
 /** Dialog that clears the call log after confirming with the user */
 public class ClearCallLogDialog extends DialogFragment {
 
+  private Listener listener;
+
   /** Preferred way to show this dialog */
-  public static void show(FragmentManager fragmentManager) {
+  public static void show(FragmentManager fragmentManager, @NonNull Listener listener) {
     ClearCallLogDialog dialog = new ClearCallLogDialog();
+    dialog.listener = Assert.isNotNull(listener);
     dialog.show(fragmentManager, "deleteCallLog");
   }
 
@@ -54,7 +59,7 @@
                 ProgressDialog.show(
                     getActivity(), getString(R.string.clearCallLogProgress_title), "", true, false);
             progressDialog.setOwnerActivity(getActivity());
-            CallLogNotificationsService.markNewMissedCallsAsOld(getContext(), null);
+            CallLogNotificationsService.cancelAllMissedCalls(getContext());
             final AsyncTask<Void, Void, Void> task =
                 new AsyncTask<Void, Void, Void>() {
                   @Override
@@ -76,6 +81,7 @@
                       return;
                     }
 
+                    listener.callHistoryDeleted();
                     if (progressDialog != null && progressDialog.isShowing()) {
                       progressDialog.dismiss();
                     }
@@ -96,4 +102,8 @@
         .setCancelable(true)
         .create();
   }
+
+  interface Listener {
+    void callHistoryDeleted();
+  }
 }
diff --git a/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java b/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java
deleted file mode 100644
index 58fe6fa..0000000
--- a/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java
+++ /dev/null
@@ -1,446 +0,0 @@
-/*
- * Copyright (C) 2011 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.dialer.app.calllog;
-
-import android.annotation.TargetApi;
-import android.app.Notification;
-import android.app.NotificationManager;
-import android.app.PendingIntent;
-import android.content.Context;
-import android.content.Intent;
-import android.content.res.Resources;
-import android.graphics.Bitmap;
-import android.net.Uri;
-import android.os.Build.VERSION;
-import android.os.Build.VERSION_CODES;
-import android.os.PersistableBundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.annotation.VisibleForTesting;
-import android.support.annotation.WorkerThread;
-import android.support.v4.os.BuildCompat;
-import android.support.v4.util.Pair;
-import android.telecom.PhoneAccount;
-import android.telecom.PhoneAccountHandle;
-import android.telecom.TelecomManager;
-import android.telephony.CarrierConfigManager;
-import android.telephony.PhoneNumberUtils;
-import android.telephony.TelephonyManager;
-import android.text.TextUtils;
-import android.util.ArrayMap;
-import com.android.contacts.common.compat.TelephonyManagerCompat;
-import com.android.contacts.common.util.ContactDisplayUtils;
-import com.android.dialer.app.DialtactsActivity;
-import com.android.dialer.app.R;
-import com.android.dialer.app.calllog.CallLogNotificationsQueryHelper.NewCall;
-import com.android.dialer.app.contactinfo.ContactPhotoLoader;
-import com.android.dialer.app.list.DialtactsPagerAdapter;
-import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
-import com.android.dialer.blocking.FilteredNumbersUtil;
-import com.android.dialer.calllogutils.PhoneAccountUtils;
-import com.android.dialer.common.Assert;
-import com.android.dialer.common.LogUtil;
-import com.android.dialer.common.concurrent.DialerExecutor.Worker;
-import com.android.dialer.common.concurrent.DialerExecutors;
-import com.android.dialer.logging.DialerImpression;
-import com.android.dialer.logging.Logger;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
-import com.android.dialer.phonenumbercache.ContactInfo;
-import com.android.dialer.telecom.TelecomUtil;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-/** Shows a voicemail notification in the status bar. */
-public class DefaultVoicemailNotifier implements Worker<Void, Void> {
-
-  public static final String TAG = "VoicemailNotifier";
-
-  /** The tag used to identify notifications from this class. */
-  static final String VISUAL_VOICEMAIL_NOTIFICATION_TAG = "DefaultVoicemailNotifier";
-  /** The identifier of the notification of new voicemails. */
-  private static final int VISUAL_VOICEMAIL_NOTIFICATION_ID = R.id.notification_visual_voicemail;
-
-  private static final int LEGACY_VOICEMAIL_NOTIFICATION_ID = R.id.notification_legacy_voicemail;
-  private static final String LEGACY_VOICEMAIL_NOTIFICATION_TAG = "legacy_voicemail";
-
-  private final Context context;
-  private final CallLogNotificationsQueryHelper queryHelper;
-  private final FilteredNumberAsyncQueryHandler filteredNumberAsyncQueryHandler;
-
-  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
-  DefaultVoicemailNotifier(
-      Context context,
-      CallLogNotificationsQueryHelper queryHelper,
-      FilteredNumberAsyncQueryHandler filteredNumberAsyncQueryHandler) {
-    this.context = context;
-    this.queryHelper = queryHelper;
-    this.filteredNumberAsyncQueryHandler = filteredNumberAsyncQueryHandler;
-  }
-
-  public DefaultVoicemailNotifier(Context context) {
-    this(
-        context,
-        CallLogNotificationsQueryHelper.getInstance(context),
-        new FilteredNumberAsyncQueryHandler(context));
-  }
-
-  @Nullable
-  @Override
-  public Void doInBackground(@Nullable Void input) throws Throwable {
-    updateNotification();
-    return null;
-  }
-
-  /**
-   * Updates the notification and notifies of the call with the given URI.
-   *
-   * <p>Clears the notification if there are no new voicemails, and notifies if the given URI
-   * corresponds to a new voicemail.
-   *
-   * <p>It is not safe to call this method from the main thread.
-   */
-  @VisibleForTesting
-  @WorkerThread
-  void updateNotification() {
-    Assert.isWorkerThread();
-    // Lookup the list of new voicemails to include in the notification.
-    final List<NewCall> newCalls = queryHelper.getNewVoicemails();
-
-    if (newCalls == null) {
-      // Query failed, just return.
-      return;
-    }
-
-    Resources resources = context.getResources();
-
-    // This represents a list of names to include in the notification.
-    String callers = null;
-
-    // Maps each number into a name: if a number is in the map, it has already left a more
-    // recent voicemail.
-    final Map<String, ContactInfo> contactInfos = new ArrayMap<>();
-
-    // Iterate over the new voicemails to determine all the information above.
-    Iterator<NewCall> itr = newCalls.iterator();
-    while (itr.hasNext()) {
-      NewCall newCall = itr.next();
-
-      // Skip notifying for numbers which are blocked.
-      if (!FilteredNumbersUtil.hasRecentEmergencyCall(context)
-          && filteredNumberAsyncQueryHandler.getBlockedIdSynchronous(
-                  newCall.number, newCall.countryIso)
-              != null) {
-        itr.remove();
-
-        if (newCall.voicemailUri != null) {
-          // Delete the voicemail.
-          CallLogAsyncTaskUtil.deleteVoicemailSynchronous(context, newCall.voicemailUri);
-        }
-        continue;
-      }
-
-      // Check if we already know the name associated with this number.
-      ContactInfo contactInfo = contactInfos.get(newCall.number);
-      if (contactInfo == null) {
-        contactInfo =
-            queryHelper.getContactInfo(
-                newCall.number, newCall.numberPresentation, newCall.countryIso);
-        contactInfos.put(newCall.number, contactInfo);
-        // This is a new caller. Add it to the back of the list of callers.
-        if (TextUtils.isEmpty(callers)) {
-          callers = contactInfo.name;
-        } else {
-          callers =
-              resources.getString(
-                  R.string.notification_voicemail_callers_list, callers, contactInfo.name);
-        }
-      }
-    }
-
-    if (newCalls.isEmpty()) {
-      // No voicemails to notify about
-      return;
-    }
-
-    Notification.Builder groupSummary =
-        createNotificationBuilder()
-            .setContentTitle(
-                resources.getQuantityString(
-                    R.plurals.notification_voicemail_title, newCalls.size(), newCalls.size()))
-            .setContentText(callers)
-            .setDeleteIntent(createMarkNewVoicemailsAsOldIntent(null))
-            .setGroupSummary(true)
-            .setContentIntent(newVoicemailIntent(null));
-
-    if (BuildCompat.isAtLeastO()) {
-      groupSummary.setGroupAlertBehavior(Notification.GROUP_ALERT_CHILDREN);
-    }
-
-    NotificationChannelManager.applyChannel(
-        groupSummary,
-        context,
-        Channel.VOICEMAIL,
-        PhoneAccountHandles.getAccount(context, newCalls.get(0)));
-
-    LogUtil.i(TAG, "Creating visual voicemail notification");
-    getNotificationManager()
-        .notify(
-            VISUAL_VOICEMAIL_NOTIFICATION_TAG,
-            VISUAL_VOICEMAIL_NOTIFICATION_ID,
-            groupSummary.build());
-
-    for (NewCall voicemail : newCalls) {
-      getNotificationManager()
-          .notify(
-              voicemail.callsUri.toString(),
-              VISUAL_VOICEMAIL_NOTIFICATION_ID,
-              createNotificationForVoicemail(voicemail, contactInfos));
-    }
-  }
-
-  /**
-   * Replicates how packages/services/Telephony/NotificationMgr.java handles legacy voicemail
-   * notification. The notification will not be stackable because no information is available for
-   * individual voicemails.
-   */
-  @TargetApi(VERSION_CODES.O)
-  public void notifyLegacyVoicemail(
-      @NonNull PhoneAccountHandle phoneAccountHandle,
-      int count,
-      String voicemailNumber,
-      PendingIntent callVoicemailIntent,
-      PendingIntent voicemailSettingIntent) {
-    Assert.isNotNull(phoneAccountHandle);
-    Assert.checkArgument(BuildCompat.isAtLeastO());
-    TelephonyManager telephonyManager =
-        context
-            .getSystemService(TelephonyManager.class)
-            .createForPhoneAccountHandle(phoneAccountHandle);
-    Assert.isNotNull(telephonyManager);
-    LogUtil.i(TAG, "Creating legacy voicemail notification");
-
-    PersistableBundle carrierConfig = telephonyManager.getCarrierConfig();
-
-    String notificationTitle =
-        context
-            .getResources()
-            .getQuantityString(R.plurals.notification_voicemail_title, count, count);
-
-    TelecomManager telecomManager = context.getSystemService(TelecomManager.class);
-    PhoneAccount phoneAccount = telecomManager.getPhoneAccount(phoneAccountHandle);
-
-    String notificationText;
-    PendingIntent pendingIntent;
-
-    if (voicemailSettingIntent != null) {
-      // If the voicemail number if unknown, instead of calling voicemail, take the user
-      // to the voicemail settings.
-      notificationText = context.getString(R.string.notification_voicemail_no_vm_number);
-      pendingIntent = voicemailSettingIntent;
-    } else {
-      if (PhoneAccountUtils.getSubscriptionPhoneAccounts(context).size() > 1) {
-        notificationText = phoneAccount.getShortDescription().toString();
-      } else {
-        notificationText =
-            String.format(
-                context.getString(R.string.notification_voicemail_text_format),
-                PhoneNumberUtils.formatNumber(voicemailNumber));
-      }
-      pendingIntent = callVoicemailIntent;
-    }
-    Notification.Builder builder = new Notification.Builder(context);
-    builder
-        .setSmallIcon(android.R.drawable.stat_notify_voicemail)
-        .setColor(context.getColor(R.color.dialer_theme_color))
-        .setWhen(System.currentTimeMillis())
-        .setContentTitle(notificationTitle)
-        .setContentText(notificationText)
-        .setContentIntent(pendingIntent)
-        .setSound(telephonyManager.getVoicemailRingtoneUri(phoneAccountHandle))
-        .setOngoing(
-            carrierConfig.getBoolean(
-                CarrierConfigManager.KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL));
-
-    if (telephonyManager.isVoicemailVibrationEnabled(phoneAccountHandle)) {
-      builder.setDefaults(Notification.DEFAULT_VIBRATE);
-    }
-
-    NotificationChannelManager.applyChannel(
-        builder, context, Channel.VOICEMAIL, phoneAccountHandle);
-    Notification notification = builder.build();
-    getNotificationManager()
-        .notify(LEGACY_VOICEMAIL_NOTIFICATION_TAG, LEGACY_VOICEMAIL_NOTIFICATION_ID, notification);
-  }
-
-  public void cancelLegacyNotification() {
-    LogUtil.i(TAG, "Clearing legacy voicemail notification");
-    getNotificationManager()
-        .cancel(LEGACY_VOICEMAIL_NOTIFICATION_TAG, LEGACY_VOICEMAIL_NOTIFICATION_ID);
-  }
-
-  /**
-   * Determines which ringtone Uri and Notification defaults to use when updating the notification
-   * for the given call.
-   */
-  private Pair<Uri, Integer> getNotificationInfo(@Nullable NewCall callToNotify) {
-    LogUtil.v(TAG, "getNotificationInfo");
-    if (callToNotify == null) {
-      LogUtil.i(TAG, "callToNotify == null");
-      return new Pair<>(null, 0);
-    }
-    PhoneAccountHandle accountHandle = PhoneAccountHandles.getAccount(context, callToNotify);
-    if (accountHandle == null) {
-      LogUtil.i(TAG, "No default phone account found, using default notification ringtone");
-      return new Pair<>(null, Notification.DEFAULT_ALL);
-    }
-    return new Pair<>(
-        TelephonyManagerCompat.getVoicemailRingtoneUri(getTelephonyManager(), accountHandle),
-        getNotificationDefaults(accountHandle));
-  }
-
-  private int getNotificationDefaults(PhoneAccountHandle accountHandle) {
-    if (VERSION.SDK_INT >= VERSION_CODES.N) {
-      return TelephonyManagerCompat.isVoicemailVibrationEnabled(
-              getTelephonyManager(), accountHandle)
-          ? Notification.DEFAULT_VIBRATE
-          : 0;
-    }
-    return Notification.DEFAULT_ALL;
-  }
-
-  /** Creates a pending intent that marks all new voicemails as old. */
-  private PendingIntent createMarkNewVoicemailsAsOldIntent(@Nullable Uri voicemailUri) {
-    Intent intent = new Intent(context, CallLogNotificationsService.class);
-    intent.setAction(CallLogNotificationsService.ACTION_MARK_NEW_VOICEMAILS_AS_OLD);
-    intent.setData(voicemailUri);
-    return PendingIntent.getService(context, 0, intent, 0);
-  }
-
-  private NotificationManager getNotificationManager() {
-    return (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
-  }
-
-  private TelephonyManager getTelephonyManager() {
-    return (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
-  }
-
-  private Notification createNotificationForVoicemail(
-      @NonNull NewCall voicemail, @NonNull Map<String, ContactInfo> contactInfos) {
-    Pair<Uri, Integer> notificationInfo = getNotificationInfo(voicemail);
-    ContactInfo contactInfo = contactInfos.get(voicemail.number);
-
-    Notification.Builder notificationBuilder =
-        createNotificationBuilder()
-            .setContentTitle(
-                context
-                    .getResources()
-                    .getQuantityString(R.plurals.notification_voicemail_title, 1, 1))
-            .setContentText(
-                ContactDisplayUtils.getTtsSpannedPhoneNumber(
-                    context.getResources(),
-                    R.string.notification_new_voicemail_ticker,
-                    contactInfo.name))
-            .setWhen(voicemail.dateMs)
-            .setSound(notificationInfo.first)
-            .setDefaults(notificationInfo.second);
-
-    if (voicemail.voicemailUri != null) {
-      notificationBuilder.setDeleteIntent(
-          createMarkNewVoicemailsAsOldIntent(voicemail.voicemailUri));
-    }
-
-    NotificationChannelManager.applyChannel(
-        notificationBuilder,
-        context,
-        Channel.VOICEMAIL,
-        PhoneAccountHandles.getAccount(context, voicemail));
-
-    ContactPhotoLoader loader = new ContactPhotoLoader(context, contactInfo);
-    Bitmap photoIcon = loader.loadPhotoIcon();
-    if (photoIcon != null) {
-      notificationBuilder.setLargeIcon(photoIcon);
-    }
-    if (!TextUtils.isEmpty(voicemail.transcription)) {
-      Logger.get(context)
-          .logImpression(DialerImpression.Type.VVM_NOTIFICATION_CREATED_WITH_TRANSCRIPTION);
-      notificationBuilder.setStyle(
-          new Notification.BigTextStyle().bigText(voicemail.transcription));
-    }
-    notificationBuilder.setContentIntent(newVoicemailIntent(voicemail));
-    Logger.get(context).logImpression(DialerImpression.Type.VVM_NOTIFICATION_CREATED);
-    return notificationBuilder.build();
-  }
-
-  private Notification.Builder createNotificationBuilder() {
-    return new Notification.Builder(context)
-        .setSmallIcon(android.R.drawable.stat_notify_voicemail)
-        .setColor(context.getColor(R.color.dialer_theme_color))
-        .setGroup(VISUAL_VOICEMAIL_NOTIFICATION_TAG)
-        .setOnlyAlertOnce(true)
-        .setAutoCancel(true);
-  }
-
-  private PendingIntent newVoicemailIntent(@Nullable NewCall voicemail) {
-    Intent intent =
-        DialtactsActivity.getShowTabIntent(context, DialtactsPagerAdapter.TAB_INDEX_VOICEMAIL);
-    // TODO (b/35486204): scroll to this voicemail
-    if (voicemail != null) {
-      intent.setData(voicemail.voicemailUri);
-    }
-    intent.putExtra(DialtactsActivity.EXTRA_CLEAR_NEW_VOICEMAILS, true);
-    return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
-  }
-
-  /**
-   * Updates the voicemail notifications displayed.
-   *
-   * @param runnable Called when the async update task completes no matter if it succeeds or fails.
-   *     May be null.
-   */
-  static void updateVoicemailNotifications(Context context, Runnable runnable) {
-    if (!TelecomUtil.isDefaultDialer(context)) {
-      LogUtil.i(
-          "DefaultVoicemailNotifier.updateVoicemailNotifications",
-          "not default dialer, not scheduling update to voicemail notifications");
-      return;
-    }
-
-    DialerExecutors.createNonUiTaskBuilder(new DefaultVoicemailNotifier(context))
-        .onSuccess(
-            output -> {
-              LogUtil.i(
-                  "DefaultVoicemailNotifier.updateVoicemailNotifications",
-                  "update voicemail notifications successful");
-              if (runnable != null) {
-                runnable.run();
-              }
-            })
-        .onFailure(
-            throwable -> {
-              LogUtil.i(
-                  "DefaultVoicemailNotifier.updateVoicemailNotifications",
-                  "update voicemail notifications failed");
-              if (runnable != null) {
-                runnable.run();
-              }
-            })
-        .build()
-        .executeParallel(null);
-  }
-}
diff --git a/java/com/android/dialer/app/calllog/DialerQuickContactBadge.java b/java/com/android/dialer/app/calllog/DialerQuickContactBadge.java
new file mode 100644
index 0000000..a3aac41
--- /dev/null
+++ b/java/com/android/dialer/app/calllog/DialerQuickContactBadge.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2017 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.dialer.app.calllog;
+
+import android.content.Context;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.QuickContactBadge;
+import com.android.dialer.app.calllog.CallLogAdapter.OnActionModeStateChangedListener;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+
+/** Allows us to click the contact badge for non multi select mode. */
+class DialerQuickContactBadge extends QuickContactBadge {
+
+  private View.OnClickListener mExtraOnClickListener;
+  private OnActionModeStateChangedListener onActionModeStateChangeListener;
+
+  public DialerQuickContactBadge(Context context) {
+    super(context);
+  }
+
+  public DialerQuickContactBadge(Context context, AttributeSet attrs) {
+    super(context, attrs);
+  }
+
+  public DialerQuickContactBadge(Context context, AttributeSet attrs, int defStyle) {
+    super(context, attrs, defStyle);
+  }
+
+  @Override
+  public void onClick(View v) {
+    if (mExtraOnClickListener != null
+        && onActionModeStateChangeListener.isActionModeStateEnabled()) {
+      Logger.get(v.getContext())
+          .logImpression(DialerImpression.Type.MULTISELECT_SINGLE_PRESS_TAP_VIA_CONTACT_BADGE);
+      mExtraOnClickListener.onClick(v);
+    } else {
+      super.onClick(v);
+    }
+  }
+
+  public void setMulitSelectListeners(
+      View.OnClickListener extraOnClickListener,
+      OnActionModeStateChangedListener actionModeStateChangeListener) {
+    mExtraOnClickListener = extraOnClickListener;
+    onActionModeStateChangeListener = actionModeStateChangeListener;
+  }
+}
diff --git a/java/com/android/dialer/app/calllog/IntentProvider.java b/java/com/android/dialer/app/calllog/IntentProvider.java
index a94c678..55fdbba 100644
--- a/java/com/android/dialer/app/calllog/IntentProvider.java
+++ b/java/com/android/dialer/app/calllog/IntentProvider.java
@@ -24,11 +24,11 @@
 import android.telecom.PhoneAccountHandle;
 import com.android.contacts.common.model.Contact;
 import com.android.contacts.common.model.ContactLoader;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.calldetails.CallDetailsActivity;
 import com.android.dialer.calldetails.CallDetailsEntries;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.lightbringer.LightbringerComponent;
 import com.android.dialer.util.CallUtil;
 import com.android.dialer.util.IntentUtil;
@@ -112,11 +112,12 @@
    * @return The call details intent provider.
    */
   public static IntentProvider getCallDetailIntentProvider(
-      CallDetailsEntries callDetailsEntries, CallComposerContact contact) {
+      CallDetailsEntries callDetailsEntries, DialerContact contact, boolean canReportCallerId) {
     return new IntentProvider() {
       @Override
       public Intent getIntent(Context context) {
-        return CallDetailsActivity.newInstance(context, callDetailsEntries, contact);
+        return CallDetailsActivity.newInstance(
+            context, callDetailsEntries, contact, canReportCallerId);
       }
     };
   }
diff --git a/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java b/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java
new file mode 100644
index 0000000..428c716
--- /dev/null
+++ b/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java
@@ -0,0 +1,156 @@
+/*
+ * Copyright (C) 2017 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.dialer.app.calllog;
+
+import android.annotation.TargetApi;
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.content.Context;
+import android.os.Build.VERSION_CODES;
+import android.support.annotation.NonNull;
+import android.support.v4.os.BuildCompat;
+import android.telecom.PhoneAccount;
+import android.telecom.PhoneAccountHandle;
+import android.telecom.TelecomManager;
+import android.telephony.CarrierConfigManager;
+import android.telephony.PhoneNumberUtils;
+import android.telephony.TelephonyManager;
+import android.text.TextUtils;
+import com.android.dialer.app.R;
+import com.android.dialer.calllogutils.PhoneAccountUtils;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.notification.NotificationChannelManager;
+
+/** Shows a notification in the status bar for legacy vociemail. */
+@TargetApi(VERSION_CODES.O)
+public final class LegacyVoicemailNotifier {
+  private static final String NOTIFICATION_TAG = "LegacyVoicemail";
+  private static final int NOTIFICATION_ID = 1;
+
+  /**
+   * Replicates how packages/services/Telephony/NotificationMgr.java handles legacy voicemail
+   * notification. The notification will not be stackable because no information is available for
+   * individual voicemails.
+   */
+  public static void showNotification(
+      @NonNull Context context,
+      @NonNull PhoneAccountHandle handle,
+      int count,
+      String voicemailNumber,
+      PendingIntent callVoicemailIntent,
+      PendingIntent voicemailSettingsIntent,
+      boolean isRefresh) {
+    LogUtil.enterBlock("LegacyVoicemailNotifier.showNotification");
+    Assert.isNotNull(handle);
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+
+    TelephonyManager pinnedTelephonyManager =
+        context.getSystemService(TelephonyManager.class).createForPhoneAccountHandle(handle);
+    if (pinnedTelephonyManager == null) {
+      LogUtil.e("LegacyVoicemailNotifier.showNotification", "invalid PhoneAccountHandle");
+      return;
+    }
+
+    Notification notification =
+        createNotification(
+            context,
+            pinnedTelephonyManager,
+            handle,
+            count,
+            voicemailNumber,
+            callVoicemailIntent,
+            voicemailSettingsIntent,
+            isRefresh);
+    context
+        .getSystemService(NotificationManager.class)
+        .notify(NOTIFICATION_TAG, NOTIFICATION_ID, notification);
+  }
+
+  @NonNull
+  private static Notification createNotification(
+      @NonNull Context context,
+      @NonNull TelephonyManager pinnedTelephonyManager,
+      @NonNull PhoneAccountHandle handle,
+      int count,
+      String voicemailNumber,
+      PendingIntent callVoicemailIntent,
+      PendingIntent voicemailSettingsIntent,
+      boolean isRefresh) {
+    String notificationTitle =
+        context
+            .getResources()
+            .getQuantityString(R.plurals.notification_voicemail_title, count, count);
+    boolean isOngoing =
+        pinnedTelephonyManager
+            .getCarrierConfig()
+            .getBoolean(CarrierConfigManager.KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL);
+
+    String contentText;
+    PendingIntent contentIntent;
+    if (!TextUtils.isEmpty(voicemailNumber) && callVoicemailIntent != null) {
+      contentText = getNotificationText(context, handle, voicemailNumber);
+      contentIntent = callVoicemailIntent;
+    } else {
+      contentText = context.getString(R.string.notification_voicemail_no_vm_number);
+      contentIntent = voicemailSettingsIntent;
+    }
+
+    Notification.Builder builder =
+        new Notification.Builder(context)
+            .setSmallIcon(android.R.drawable.stat_notify_voicemail)
+            .setColor(context.getColor(R.color.dialer_theme_color))
+            .setWhen(System.currentTimeMillis())
+            .setContentTitle(notificationTitle)
+            .setContentText(contentText)
+            .setContentIntent(contentIntent)
+            .setSound(pinnedTelephonyManager.getVoicemailRingtoneUri(handle))
+            .setOngoing(isOngoing)
+            .setOnlyAlertOnce(isRefresh)
+            .setChannelId(NotificationChannelManager.getVoicemailChannelId(context, handle));
+
+    if (pinnedTelephonyManager.isVoicemailVibrationEnabled(handle)) {
+      builder.setDefaults(Notification.DEFAULT_VIBRATE);
+    }
+
+    return builder.build();
+  }
+
+  @NonNull
+  private static String getNotificationText(
+      @NonNull Context context, PhoneAccountHandle handle, String voicemailNumber) {
+    if (PhoneAccountUtils.getSubscriptionPhoneAccounts(context).size() > 1) {
+      TelecomManager telecomManager = context.getSystemService(TelecomManager.class);
+      PhoneAccount phoneAccount = telecomManager.getPhoneAccount(handle);
+      return phoneAccount.getShortDescription().toString();
+    } else {
+      return String.format(
+          context.getString(R.string.notification_voicemail_text_format),
+          PhoneNumberUtils.formatNumber(voicemailNumber));
+    }
+  }
+
+  public static void cancelNotification(@NonNull Context context) {
+    LogUtil.enterBlock("LegacyVoicemailNotifier.cancelNotification");
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    notificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_ID);
+  }
+
+  private LegacyVoicemailNotifier() {}
+}
diff --git a/java/com/android/dialer/app/calllog/MissedCallNotifier.java b/java/com/android/dialer/app/calllog/MissedCallNotifier.java
index dd13298..e0e3fdf 100644
--- a/java/com/android/dialer/app/calllog/MissedCallNotifier.java
+++ b/java/com/android/dialer/app/calllog/MissedCallNotifier.java
@@ -30,11 +30,13 @@
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import android.support.annotation.WorkerThread;
+import android.support.v4.os.BuildCompat;
 import android.support.v4.os.UserManagerCompat;
 import android.support.v4.util.Pair;
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
+import android.util.ArraySet;
 import com.android.contacts.common.ContactsUtils;
 import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.dialer.app.DialtactsActivity;
@@ -46,23 +48,20 @@
 import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
+import com.android.dialer.notification.NotificationChannelId;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
 /** Creates a notification for calls that the user missed (neither answered nor rejected). */
 public class MissedCallNotifier implements Worker<Pair<Integer, String>, Void> {
 
-  /** The tag used to identify notifications from this class. */
-  static final String NOTIFICATION_TAG = "MissedCallNotifier";
-  /** The identifier of the notification of new missed calls. */
-  private static final int NOTIFICATION_ID = R.id.notification_missed_call;
+  static final String NOTIFICATION_TAG_PREFIX = "MissedCall_";
+  static final String NOTIFICATION_GROUP = "MissedCall";
+  private static final int NOTIFICATION_ID = 1;
 
   private final Context context;
   private final CallLogNotificationsQueryHelper callLogNotificationsQueryHelper;
@@ -104,7 +103,8 @@
 
     if ((newCalls != null && newCalls.isEmpty()) || count == 0) {
       // No calls to notify about: clear the notification.
-      CallLogNotificationsQueryHelper.removeMissedCallNotifications(context, null);
+      CallLogNotificationsQueryHelper.markAllMissedCallsInCallLogAsRead(context);
+      cancelAllMissedCallNotifications(context);
       return;
     }
 
@@ -146,7 +146,7 @@
                   null,
                   System.currentTimeMillis());
 
-      //TODO: look up caller ID that is not in contacts.
+      // TODO: look up caller ID that is not in contacts.
       ContactInfo contactInfo =
           callLogNotificationsQueryHelper.getContactInfo(
               call.number, call.numberPresentation, call.countryIso);
@@ -181,36 +181,39 @@
     publicSummaryBuilder
         .setContentTitle(context.getText(titleResId))
         .setContentIntent(createCallLogPendingIntent())
-        .setDeleteIntent(createClearMissedCallsPendingIntent(null));
+        .setDeleteIntent(
+            CallLogNotificationsService.createCancelAllMissedCallsPendingIntent(context));
 
     // Create the notification summary suitable for display when sensitive information is showing.
     groupSummary
         .setContentTitle(context.getText(titleResId))
         .setContentText(expandedText)
         .setContentIntent(createCallLogPendingIntent())
-        .setDeleteIntent(createClearMissedCallsPendingIntent(null))
+        .setDeleteIntent(
+            CallLogNotificationsService.createCancelAllMissedCallsPendingIntent(context))
         .setGroupSummary(useCallList)
         .setOnlyAlertOnce(useCallList)
         .setPublicVersion(publicSummaryBuilder.build());
-
-    NotificationChannelManager.applyChannel(groupSummary, context, Channel.MISSED_CALL, null);
+    if (BuildCompat.isAtLeastO()) {
+      groupSummary.setChannelId(NotificationChannelId.MISSED_CALL);
+    }
 
     Notification notification = groupSummary.build();
     configureLedOnNotification(notification);
 
     LogUtil.i("MissedCallNotifier.updateMissedCallNotification", "adding missed call notification");
-    getNotificationMgr().notify(NOTIFICATION_TAG, NOTIFICATION_ID, notification);
+    getNotificationMgr().notify(getNotificationTagForGroupSummary(), NOTIFICATION_ID, notification);
 
     if (useCallList) {
       // Do not repost active notifications to prevent erasing post call notes.
       NotificationManager manager = getNotificationMgr();
-      Set<String> activeTags = new HashSet<>();
+      Set<String> activeTags = new ArraySet<>();
       for (StatusBarNotification activeNotification : manager.getActiveNotifications()) {
         activeTags.add(activeNotification.getTag());
       }
 
       for (NewCall call : newCalls) {
-        String callTag = call.callsUri.toString();
+        String callTag = getNotificationTagForCall(call);
         if (!activeTags.contains(callTag)) {
           manager.notify(callTag, NOTIFICATION_ID, getNotificationForCall(call, null));
         }
@@ -218,6 +221,59 @@
     }
   }
 
+  public static void cancelAllMissedCallNotifications(@NonNull Context context) {
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
+      String tag = notification.getTag();
+      if (tag != null && tag.startsWith(NOTIFICATION_TAG_PREFIX)) {
+        notificationManager.cancel(tag, notification.getId());
+      }
+    }
+  }
+
+  public static void cancelSingleMissedCallNotification(
+      @NonNull Context context, @Nullable Uri callUri) {
+    if (callUri == null) {
+      LogUtil.e(
+          "MissedCallNotifier.cancelSingleMissedCallNotification",
+          "unable to cancel notification, uri is null");
+      return;
+    }
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    String callTag = getNotificationTagForCallUri(callUri);
+    String summaryTag = getNotificationTagForGroupSummary();
+    int notificationCount = 0;
+
+    for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
+      String currentTag = notification.getTag();
+      if (currentTag == null) {
+        continue;
+      }
+      if (currentTag.equals(callTag)) {
+        notificationManager.cancel(notification.getTag(), notification.getId());
+      } else if (currentTag.startsWith(NOTIFICATION_TAG_PREFIX) && !currentTag.equals(summaryTag)) {
+        notificationCount++;
+      }
+    }
+
+    if (notificationCount == 0) {
+      // There are no more missed call notifications. Remove the summary notification too.
+      notificationManager.cancel(summaryTag, NOTIFICATION_ID);
+    }
+  }
+
+  private static String getNotificationTagForGroupSummary() {
+    return NOTIFICATION_TAG_PREFIX + "GroupSummary";
+  }
+
+  private static String getNotificationTagForCall(@NonNull NewCall call) {
+    return getNotificationTagForCallUri(call.callsUri);
+  }
+
+  private static String getNotificationTagForCallUri(@NonNull Uri callUri) {
+    return NOTIFICATION_TAG_PREFIX + callUri;
+  }
+
   public void insertPostCallNotification(@NonNull String number, @NonNull String note) {
     List<NewCall> newCalls = callLogNotificationsQueryHelper.getNewMissedCalls();
     if (newCalls != null && !newCalls.isEmpty()) {
@@ -226,7 +282,9 @@
           // Update the first notification that matches our post call note sender.
           getNotificationMgr()
               .notify(
-                  call.callsUri.toString(), NOTIFICATION_ID, getNotificationForCall(call, note));
+                  getNotificationTagForCall(call),
+                  NOTIFICATION_ID,
+                  getNotificationForCall(call, note));
           break;
         }
       }
@@ -308,7 +366,7 @@
 
   private Notification.Builder createNotificationBuilder() {
     return new Notification.Builder(context)
-        .setGroup(NOTIFICATION_TAG)
+        .setGroup(NOTIFICATION_GROUP)
         .setSmallIcon(android.R.drawable.stat_notify_missed_call)
         .setColor(context.getResources().getColor(R.color.dialer_theme_color, null))
         .setAutoCancel(true)
@@ -321,10 +379,14 @@
     Builder builder =
         createNotificationBuilder()
             .setWhen(call.dateMs)
-            .setDeleteIntent(createClearMissedCallsPendingIntent(call.callsUri))
+            .setDeleteIntent(
+                CallLogNotificationsService.createCancelSingleMissedCallPendingIntent(
+                    context, call.callsUri))
             .setContentIntent(createCallLogPendingIntent(call.callsUri));
+    if (BuildCompat.isAtLeastO()) {
+      builder.setChannelId(NotificationChannelId.MISSED_CALL);
+    }
 
-    NotificationChannelManager.applyChannel(builder, context, Channel.MISSED_CALL, null);
     return builder;
   }
 
@@ -332,7 +394,8 @@
   @WorkerThread
   public void callBackFromMissedCall(String number, Uri callUri) {
     closeSystemDialogs(context);
-    CallLogNotificationsQueryHelper.removeMissedCallNotifications(context, callUri);
+    CallLogNotificationsQueryHelper.markSingleMissedCallInCallLogAsRead(context, callUri);
+    cancelSingleMissedCallNotification(context, callUri);
     DialerUtils.startActivityWithErrorToast(
         context,
         new CallIntentBuilder(number, CallInitiationType.Type.MISSED_CALL_NOTIFICATION)
@@ -343,7 +406,8 @@
   /** Trigger an intent to send an sms from a missed call number. */
   public void sendSmsFromMissedCall(String number, Uri callUri) {
     closeSystemDialogs(context);
-    CallLogNotificationsQueryHelper.removeMissedCallNotifications(context, callUri);
+    CallLogNotificationsQueryHelper.markSingleMissedCallInCallLogAsRead(context, callUri);
+    cancelSingleMissedCallNotification(context, callUri);
     DialerUtils.startActivityWithErrorToast(
         context, IntentUtil.getSendSmsIntent(number).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
   }
@@ -371,14 +435,6 @@
     return PendingIntent.getActivity(context, 0, contentIntent, PendingIntent.FLAG_UPDATE_CURRENT);
   }
 
-  /** Creates a pending intent that marks all new missed calls as old. */
-  private PendingIntent createClearMissedCallsPendingIntent(@Nullable Uri callUri) {
-    Intent intent = new Intent(context, CallLogNotificationsService.class);
-    intent.setAction(CallLogNotificationsService.ACTION_MARK_NEW_MISSED_CALLS_AS_OLD);
-    intent.setData(callUri);
-    return PendingIntent.getService(context, 0, intent, 0);
-  }
-
   private PendingIntent createCallBackPendingIntent(String number, @NonNull Uri callUri) {
     Intent intent = new Intent(context, CallLogNotificationsService.class);
     intent.setAction(CallLogNotificationsService.ACTION_CALL_BACK_FROM_MISSED_CALL_NOTIFICATION);
diff --git a/java/com/android/dialer/app/calllog/PhoneAccountHandles.java b/java/com/android/dialer/app/calllog/PhoneAccountHandles.java
deleted file mode 100644
index acffffb..0000000
--- a/java/com/android/dialer/app/calllog/PhoneAccountHandles.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2017 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.dialer.app.calllog;
-
-import android.content.ComponentName;
-import android.content.Context;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.telecom.PhoneAccount;
-import android.telecom.PhoneAccountHandle;
-import com.android.dialer.app.calllog.CallLogNotificationsQueryHelper.NewCall;
-import com.android.dialer.common.LogUtil;
-import com.android.dialer.telecom.TelecomUtil;
-import java.util.List;
-
-/** Methods to help extract {@link PhoneAccount} information from database and Telecomm sources. */
-class PhoneAccountHandles {
-
-  @Nullable
-  public static PhoneAccountHandle getAccount(@NonNull Context context, @Nullable NewCall call) {
-    PhoneAccountHandle handle;
-    if (call == null || call.accountComponentName == null || call.accountId == null) {
-      LogUtil.v(
-          "PhoneAccountUtils.getAccount",
-          "accountComponentName == null || callToNotify.accountId == null");
-      handle = TelecomUtil.getDefaultOutgoingPhoneAccount(context, PhoneAccount.SCHEME_TEL);
-      if (handle == null) {
-        List<PhoneAccountHandle> callCapablePhoneAccounts =
-            TelecomUtil.getCallCapablePhoneAccounts(context);
-        if (!callCapablePhoneAccounts.isEmpty()) {
-          return callCapablePhoneAccounts.get(0);
-        }
-        return null;
-      }
-    } else {
-      handle =
-          new PhoneAccountHandle(
-              ComponentName.unflattenFromString(call.accountComponentName), call.accountId);
-    }
-    if (handle.getComponentName() != null) {
-      LogUtil.v(
-          "PhoneAccountUtils.getAccount",
-          "PhoneAccountHandle.ComponentInfo:" + handle.getComponentName());
-    } else {
-      LogUtil.i("PhoneAccountUtils.getAccount", "PhoneAccountHandle.ComponentInfo: null");
-    }
-    return handle;
-  }
-}
diff --git a/java/com/android/dialer/app/calllog/VisualVoicemailNotifier.java b/java/com/android/dialer/app/calllog/VisualVoicemailNotifier.java
new file mode 100644
index 0000000..99fe466
--- /dev/null
+++ b/java/com/android/dialer/app/calllog/VisualVoicemailNotifier.java
@@ -0,0 +1,291 @@
+/*
+ * Copyright (C) 2017 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.dialer.app.calllog;
+
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Bitmap;
+import android.net.Uri;
+import android.os.Build.VERSION;
+import android.os.Build.VERSION_CODES;
+import android.service.notification.StatusBarNotification;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.v4.os.BuildCompat;
+import android.telecom.PhoneAccount;
+import android.telecom.PhoneAccountHandle;
+import android.telephony.TelephonyManager;
+import android.text.TextUtils;
+import com.android.contacts.common.util.ContactDisplayUtils;
+import com.android.dialer.app.DialtactsActivity;
+import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.CallLogNotificationsQueryHelper.NewCall;
+import com.android.dialer.app.contactinfo.ContactPhotoLoader;
+import com.android.dialer.app.list.DialtactsPagerAdapter;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.dialer.notification.NotificationChannelManager;
+import com.android.dialer.phonenumbercache.ContactInfo;
+import com.android.dialer.telecom.TelecomUtil;
+import java.util.List;
+import java.util.Map;
+
+/** Shows a notification in the status bar for visual voicemail. */
+final class VisualVoicemailNotifier {
+  private static final String NOTIFICATION_TAG_PREFIX = "VisualVoicemail_";
+  private static final String NOTIFICATION_GROUP = "VisualVoicemail";
+  private static final int NOTIFICATION_ID = 1;
+
+  public static void showNotifications(
+      @NonNull Context context,
+      @NonNull List<NewCall> newCalls,
+      @NonNull Map<String, ContactInfo> contactInfos,
+      @Nullable String callers) {
+    LogUtil.enterBlock("VisualVoicemailNotifier.showNotifications");
+    PendingIntent deleteIntent =
+        CallLogNotificationsService.createMarkAllNewVoicemailsAsOldIntent(context);
+    String contentTitle =
+        context
+            .getResources()
+            .getQuantityString(
+                R.plurals.notification_voicemail_title, newCalls.size(), newCalls.size());
+    Notification.Builder groupSummary =
+        createNotificationBuilder(context)
+            .setContentTitle(contentTitle)
+            .setContentText(callers)
+            .setDeleteIntent(deleteIntent)
+            .setGroupSummary(true)
+            .setContentIntent(newVoicemailIntent(context, null));
+
+    if (BuildCompat.isAtLeastO()) {
+      groupSummary.setGroupAlertBehavior(Notification.GROUP_ALERT_CHILDREN);
+      PhoneAccountHandle handle = getAccountForCall(context, newCalls.get(0));
+      groupSummary.setChannelId(NotificationChannelManager.getVoicemailChannelId(context, handle));
+    }
+
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    notificationManager.notify(
+        getNotificationTagForGroupSummary(), NOTIFICATION_ID, groupSummary.build());
+
+    for (NewCall voicemail : newCalls) {
+      notificationManager.notify(
+          getNotificationTagForVoicemail(voicemail),
+          NOTIFICATION_ID,
+          createNotificationForVoicemail(context, voicemail, contactInfos));
+    }
+  }
+
+  public static void cancelAllVoicemailNotifications(@NonNull Context context) {
+    LogUtil.enterBlock("VisualVoicemailNotifier.cancelAllVoicemailNotifications");
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
+      String tag = notification.getTag();
+      if (tag != null && tag.startsWith(NOTIFICATION_TAG_PREFIX)) {
+        notificationManager.cancel(tag, notification.getId());
+      }
+    }
+  }
+
+  public static void cancelSingleVoicemailNotification(
+      @NonNull Context context, @Nullable Uri voicemailUri) {
+    LogUtil.enterBlock("VisualVoicemailNotifier.cancelSingleVoicemailNotification");
+    if (voicemailUri == null) {
+      LogUtil.e("VisualVoicemailNotifier.cancelSingleVoicemailNotification", "uri is null");
+      return;
+    }
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    String voicemailTag = getNotificationTagForUri(voicemailUri);
+    String summaryTag = getNotificationTagForGroupSummary();
+    int notificationCount = 0;
+
+    for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
+      String currentTag = notification.getTag();
+      if (currentTag == null) {
+        continue;
+      }
+      if (currentTag.equals(voicemailTag)) {
+        notificationManager.cancel(notification.getTag(), notification.getId());
+      } else if (currentTag.startsWith(NOTIFICATION_TAG_PREFIX) && !currentTag.equals(summaryTag)) {
+        notificationCount++;
+      }
+    }
+
+    if (notificationCount == 0) {
+      // There are no more visual voicemail notifications. Remove the summary notification too.
+      notificationManager.cancel(summaryTag, NOTIFICATION_ID);
+    }
+  }
+
+  private static String getNotificationTagForVoicemail(@NonNull NewCall voicemail) {
+    return getNotificationTagForUri(voicemail.voicemailUri);
+  }
+
+  private static String getNotificationTagForUri(@NonNull Uri voicemailUri) {
+    return NOTIFICATION_TAG_PREFIX + voicemailUri;
+  }
+
+  private static String getNotificationTagForGroupSummary() {
+    return NOTIFICATION_TAG_PREFIX + "GroupSummary";
+  }
+
+  private static Notification.Builder createNotificationBuilder(@NonNull Context context) {
+    return new Notification.Builder(context)
+        .setSmallIcon(android.R.drawable.stat_notify_voicemail)
+        .setColor(context.getColor(R.color.dialer_theme_color))
+        .setGroup(NOTIFICATION_GROUP)
+        .setOnlyAlertOnce(true)
+        .setAutoCancel(true);
+  }
+
+  private static Notification createNotificationForVoicemail(
+      @NonNull Context context,
+      @NonNull NewCall voicemail,
+      @NonNull Map<String, ContactInfo> contactInfos) {
+    PhoneAccountHandle handle = getAccountForCall(context, voicemail);
+    ContactInfo contactInfo = contactInfos.get(voicemail.number);
+
+    Notification.Builder builder =
+        createNotificationBuilder(context)
+            .setContentTitle(
+                context
+                    .getResources()
+                    .getQuantityString(R.plurals.notification_voicemail_title, 1, 1))
+            .setContentText(
+                ContactDisplayUtils.getTtsSpannedPhoneNumber(
+                    context.getResources(),
+                    R.string.notification_new_voicemail_ticker,
+                    contactInfo.name))
+            .setWhen(voicemail.dateMs)
+            .setSound(getVoicemailRingtoneUri(context, handle))
+            .setDefaults(getNotificationDefaultFlags(context, handle));
+
+    if (voicemail.voicemailUri != null) {
+      builder.setDeleteIntent(
+          CallLogNotificationsService.createMarkSingleNewVoicemailAsOldIntent(
+              context, voicemail.voicemailUri));
+    }
+
+    if (BuildCompat.isAtLeastO()) {
+      builder.setChannelId(NotificationChannelManager.getVoicemailChannelId(context, handle));
+    }
+
+    ContactPhotoLoader loader = new ContactPhotoLoader(context, contactInfo);
+    Bitmap photoIcon = loader.loadPhotoIcon();
+    if (photoIcon != null) {
+      builder.setLargeIcon(photoIcon);
+    }
+    if (!TextUtils.isEmpty(voicemail.transcription)) {
+      Logger.get(context)
+          .logImpression(DialerImpression.Type.VVM_NOTIFICATION_CREATED_WITH_TRANSCRIPTION);
+      builder.setStyle(new Notification.BigTextStyle().bigText(voicemail.transcription));
+    }
+    builder.setContentIntent(newVoicemailIntent(context, voicemail));
+    Logger.get(context).logImpression(DialerImpression.Type.VVM_NOTIFICATION_CREATED);
+    return builder.build();
+  }
+
+  @Nullable
+  private static Uri getVoicemailRingtoneUri(
+      @NonNull Context context, @Nullable PhoneAccountHandle handle) {
+    if (VERSION.SDK_INT < VERSION_CODES.N) {
+      return null;
+    }
+    if (handle == null) {
+      LogUtil.i("VisualVoicemailNotifier.getVoicemailRingtoneUri", "null handle, getting fallback");
+      handle = getFallbackAccount(context);
+      if (handle == null) {
+        LogUtil.i(
+            "VisualVoicemailNotifier.getVoicemailRingtoneUri",
+            "no fallback handle, using null (default) ringtone");
+        return null;
+      }
+    }
+    return context.getSystemService(TelephonyManager.class).getVoicemailRingtoneUri(handle);
+  }
+
+  private static int getNotificationDefaultFlags(
+      @NonNull Context context, @Nullable PhoneAccountHandle handle) {
+    if (VERSION.SDK_INT < VERSION_CODES.N) {
+      return Notification.DEFAULT_ALL;
+    }
+    if (handle == null) {
+      LogUtil.i(
+          "VisualVoicemailNotifier.getNotificationDefaultFlags", "null handle, getting fallback");
+      handle = getFallbackAccount(context);
+      if (handle == null) {
+        LogUtil.i(
+            "VisualVoicemailNotifier.getNotificationDefaultFlags",
+            "no fallback handle, using default vibration");
+        return Notification.DEFAULT_ALL;
+      }
+    }
+    if (context.getSystemService(TelephonyManager.class).isVoicemailVibrationEnabled(handle)) {
+      return Notification.DEFAULT_VIBRATE;
+    }
+    return 0;
+  }
+
+  private static PendingIntent newVoicemailIntent(
+      @NonNull Context context, @Nullable NewCall voicemail) {
+    Intent intent =
+        DialtactsActivity.getShowTabIntent(context, DialtactsPagerAdapter.TAB_INDEX_VOICEMAIL);
+    // TODO (b/35486204): scroll to this voicemail
+    if (voicemail != null) {
+      intent.setData(voicemail.voicemailUri);
+    }
+    intent.putExtra(DialtactsActivity.EXTRA_CLEAR_NEW_VOICEMAILS, true);
+    return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
+  }
+
+  /**
+   * Gets a phone account for the given call entry. This could be null if SIM associated with the
+   * entry is no longer in the device or for other reasons (for example, modem reboot).
+   */
+  @Nullable
+  public static PhoneAccountHandle getAccountForCall(
+      @NonNull Context context, @Nullable NewCall call) {
+    if (call == null || call.accountComponentName == null || call.accountId == null) {
+      return null;
+    }
+    return new PhoneAccountHandle(
+        ComponentName.unflattenFromString(call.accountComponentName), call.accountId);
+  }
+
+  /**
+   * Gets any available phone account that can be used to get sound settings for voicemail. This is
+   * only called if the phone account for the voicemail entry can't be found.
+   */
+  @Nullable
+  public static PhoneAccountHandle getFallbackAccount(@NonNull Context context) {
+    PhoneAccountHandle handle =
+        TelecomUtil.getDefaultOutgoingPhoneAccount(context, PhoneAccount.SCHEME_TEL);
+    if (handle == null) {
+      List<PhoneAccountHandle> handles = TelecomUtil.getCallCapablePhoneAccounts(context);
+      if (!handles.isEmpty()) {
+        handle = handles.get(0);
+      }
+    }
+    return handle;
+  }
+
+  private VisualVoicemailNotifier() {}
+}
diff --git a/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java b/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java
new file mode 100644
index 0000000..d6601be
--- /dev/null
+++ b/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java
@@ -0,0 +1,168 @@
+/*
+ * Copyright (C) 2011 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.dialer.app.calllog;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.annotation.WorkerThread;
+import android.text.TextUtils;
+import android.util.ArrayMap;
+import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.CallLogNotificationsQueryHelper.NewCall;
+import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
+import com.android.dialer.blocking.FilteredNumbersUtil;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import com.android.dialer.common.concurrent.DialerExecutors;
+import com.android.dialer.phonenumbercache.ContactInfo;
+import com.android.dialer.telecom.TelecomUtil;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/** Updates voicemail notifications in the background. */
+class VisualVoicemailUpdateTask implements Worker<VisualVoicemailUpdateTask.Input, Void> {
+  @Nullable
+  @Override
+  public Void doInBackground(@NonNull Input input) throws Throwable {
+    updateNotification(input.context, input.queryHelper, input.queryHandler);
+    return null;
+  }
+
+  /**
+   * Updates the notification and notifies of the call with the given URI.
+   *
+   * <p>Clears the notification if there are no new voicemails, and notifies if the given URI
+   * corresponds to a new voicemail.
+   */
+  @WorkerThread
+  private static void updateNotification(
+      Context context,
+      CallLogNotificationsQueryHelper queryHelper,
+      FilteredNumberAsyncQueryHandler queryHandler) {
+    Assert.isWorkerThread();
+
+    List<NewCall> newCalls = queryHelper.getNewVoicemails();
+    if (newCalls == null) {
+      return;
+    }
+    newCalls = filterBlockedNumbers(context, queryHandler, newCalls);
+    if (newCalls.isEmpty()) {
+      return;
+    }
+
+    // This represents a list of names to include in the notification.
+    String callers = null;
+
+    // Maps each number into a name: if a number is in the map, it has already left a more
+    // recent voicemail.
+    Map<String, ContactInfo> contactInfos = new ArrayMap<>();
+    for (NewCall newCall : newCalls) {
+      if (!contactInfos.containsKey(newCall.number)) {
+        ContactInfo contactInfo =
+            queryHelper.getContactInfo(
+                newCall.number, newCall.numberPresentation, newCall.countryIso);
+        contactInfos.put(newCall.number, contactInfo);
+
+        // This is a new caller. Add it to the back of the list of callers.
+        if (TextUtils.isEmpty(callers)) {
+          callers = contactInfo.name;
+        } else {
+          callers =
+              context.getString(
+                  R.string.notification_voicemail_callers_list, callers, contactInfo.name);
+        }
+      }
+    }
+    VisualVoicemailNotifier.showNotifications(context, newCalls, contactInfos, callers);
+  }
+
+  @WorkerThread
+  private static List<NewCall> filterBlockedNumbers(
+      Context context, FilteredNumberAsyncQueryHandler queryHandler, List<NewCall> newCalls) {
+    Assert.isWorkerThread();
+    if (FilteredNumbersUtil.hasRecentEmergencyCall(context)) {
+      LogUtil.i(
+          "VisualVoicemailUpdateTask.filterBlockedNumbers",
+          "not filtering due to recent emergency call");
+      return newCalls;
+    }
+
+    List<NewCall> result = new ArrayList<>();
+    for (NewCall newCall : newCalls) {
+      if (queryHandler.getBlockedIdSynchronous(newCall.number, newCall.countryIso) != null) {
+        LogUtil.i(
+            "VisualVoicemailUpdateTask.filterBlockedNumbers",
+            "found voicemail from blocked number, deleting");
+        if (newCall.voicemailUri != null) {
+          // Delete the voicemail.
+          CallLogAsyncTaskUtil.deleteVoicemailSynchronous(context, newCall.voicemailUri);
+        }
+      } else {
+        result.add(newCall);
+      }
+    }
+    return result;
+  }
+
+  /** Updates the voicemail notifications displayed. */
+  static void scheduleTask(@NonNull Context context, @NonNull Runnable callback) {
+    Assert.isNotNull(context);
+    Assert.isNotNull(callback);
+    if (!TelecomUtil.isDefaultDialer(context)) {
+      LogUtil.i("VisualVoicemailUpdateTask.scheduleTask", "not default dialer, not running");
+      callback.run();
+      return;
+    }
+
+    Input input =
+        new Input(
+            context,
+            CallLogNotificationsQueryHelper.getInstance(context),
+            new FilteredNumberAsyncQueryHandler(context));
+    DialerExecutors.createNonUiTaskBuilder(new VisualVoicemailUpdateTask())
+        .onSuccess(
+            output -> {
+              LogUtil.i("VisualVoicemailUpdateTask.scheduleTask", "update successful");
+              callback.run();
+            })
+        .onFailure(
+            throwable -> {
+              LogUtil.i("VisualVoicemailUpdateTask.scheduleTask", "update failed: " + throwable);
+              callback.run();
+            })
+        .build()
+        .executeParallel(input);
+  }
+
+  static class Input {
+    @NonNull final Context context;
+    @NonNull final CallLogNotificationsQueryHelper queryHelper;
+    @NonNull final FilteredNumberAsyncQueryHandler queryHandler;
+
+    Input(
+        Context context,
+        CallLogNotificationsQueryHelper queryHelper,
+        FilteredNumberAsyncQueryHandler queryHandler) {
+      this.context = context;
+      this.queryHelper = queryHelper;
+      this.queryHandler = queryHandler;
+    }
+  }
+}
diff --git a/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java b/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
index 777f4c7..2fbebdd 100644
--- a/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
+++ b/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
@@ -15,7 +15,6 @@
  */
 package com.android.dialer.app.calllog;
 
-import android.app.NotificationManager;
 import android.content.AsyncQueryHandler;
 import android.content.ContentResolver;
 import android.content.ContentValues;
@@ -23,30 +22,49 @@
 import android.net.Uri;
 import android.provider.CallLog.Calls;
 import android.support.annotation.MainThread;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
-import com.android.dialer.app.R;
+import android.support.annotation.WorkerThread;
 import com.android.dialer.common.Assert;
-import com.android.dialer.notification.GroupedNotificationUtil;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.ThreadUtil;
 
 /** Handles asynchronous queries to the call log for voicemail. */
 public class VoicemailQueryHandler extends AsyncQueryHandler {
 
-  private static final String TAG = "VoicemailQueryHandler";
-
   /** The token for the query to mark all new voicemails as old. */
   private static final int UPDATE_MARK_VOICEMAILS_AS_OLD_TOKEN = 50;
 
-  private Context mContext;
-
   @MainThread
-  public VoicemailQueryHandler(Context context, ContentResolver contentResolver) {
+  private VoicemailQueryHandler(ContentResolver contentResolver) {
     super(contentResolver);
     Assert.isMainThread();
-    mContext = context;
+  }
+
+  @WorkerThread
+  public static void markAllNewVoicemailsAsRead(final @NonNull Context context) {
+    ThreadUtil.postOnUiThread(
+        () -> {
+          new VoicemailQueryHandler(context.getContentResolver()).markNewVoicemailsAsOld(null);
+        });
+  }
+
+  @WorkerThread
+  public static void markSingleNewVoicemailAsRead(
+      final @NonNull Context context, final Uri voicemailUri) {
+    if (voicemailUri == null) {
+      LogUtil.e("VoicemailQueryHandler.markSingleNewVoicemailAsRead", "voicemail URI is null");
+      return;
+    }
+    ThreadUtil.postOnUiThread(
+        () -> {
+          new VoicemailQueryHandler(context.getContentResolver())
+              .markNewVoicemailsAsOld(voicemailUri);
+        });
   }
 
   /** Updates all new voicemails to mark them as old. */
-  public void markNewVoicemailsAsOld(@Nullable Uri voicemailUri) {
+  private void markNewVoicemailsAsOld(@Nullable Uri voicemailUri) {
     // Mark all "new" voicemails as not new anymore.
     StringBuilder where = new StringBuilder();
     where.append(Calls.NEW);
@@ -70,11 +88,5 @@
         voicemailUri == null
             ? new String[] {Integer.toString(Calls.VOICEMAIL_TYPE)}
             : new String[] {Integer.toString(Calls.VOICEMAIL_TYPE), voicemailUri.toString()});
-
-    GroupedNotificationUtil.removeNotification(
-        mContext.getSystemService(NotificationManager.class),
-        voicemailUri != null ? voicemailUri.toString() : null,
-        R.id.notification_visual_voicemail,
-        DefaultVoicemailNotifier.VISUAL_VOICEMAIL_NOTIFICATION_TAG);
   }
 }
diff --git a/java/com/android/dialer/app/calllog/calllogcache/CallLogCache.java b/java/com/android/dialer/app/calllog/calllogcache/CallLogCache.java
index 7645a33..2e7c933 100644
--- a/java/com/android/dialer/app/calllog/calllogcache/CallLogCache.java
+++ b/java/com/android/dialer/app/calllog/calllogcache/CallLogCache.java
@@ -17,9 +17,9 @@
 package com.android.dialer.app.calllog.calllogcache;
 
 import android.content.Context;
+import android.support.annotation.Nullable;
 import android.telecom.PhoneAccountHandle;
 import com.android.dialer.app.calllog.CallLogAdapter;
-import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.util.CallUtil;
 
 /**
@@ -46,10 +46,7 @@
 
   /** Return the most compatible version of the TelecomCallLogCache. */
   public static CallLogCache getCallLogCache(Context context) {
-    if (CompatUtils.isClassAvailable("android.telecom.PhoneAccountHandle")) {
-      return new CallLogCacheLollipopMr1(context);
-    }
-    return new CallLogCacheLollipop(context);
+    return new CallLogCacheLollipopMr1(context);
   }
 
   public void reset() {
@@ -61,20 +58,8 @@
    * Returns true if the given number is the number of the configured voicemail. To be able to
    * mock-out this, it is not a static method.
    */
-  public abstract boolean isVoicemailNumber(PhoneAccountHandle accountHandle, CharSequence number);
-
-  /**
-   * Returns {@code true} when the current sim supports video calls, regardless of the value in a
-   * contact's {@link android.provider.ContactsContract.CommonDataKinds.Phone#CARRIER_PRESENCE}
-   * column.
-   */
-  public boolean isVideoEnabled() {
-    if (!mHasCheckedForVideoAvailability) {
-      mVideoAvailability = CallUtil.getVideoCallingAvailability(mContext);
-      mHasCheckedForVideoAvailability = true;
-    }
-    return (mVideoAvailability & CallUtil.VIDEO_CALLING_ENABLED) != 0;
-  }
+  public abstract boolean isVoicemailNumber(
+      PhoneAccountHandle accountHandle, @Nullable CharSequence number);
 
   /**
    * Returns {@code true} when the current sim supports checking video calling capabilities via the
diff --git a/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipop.java b/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipop.java
deleted file mode 100644
index 78aaa41..0000000
--- a/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipop.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2015 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.dialer.app.calllog.calllogcache;
-
-import android.content.Context;
-import android.telecom.PhoneAccount;
-import android.telecom.PhoneAccountHandle;
-import android.telephony.PhoneNumberUtils;
-import android.text.TextUtils;
-
-/**
- * This is a compatibility class for the CallLogCache for versions of dialer before Lollipop Mr1
- * (the introduction of phone accounts).
- *
- * <p>This class should not be initialized directly and instead be acquired from {@link
- * CallLogCache#getCallLogCache}.
- */
-class CallLogCacheLollipop extends CallLogCache {
-
-  private String mVoicemailNumber;
-
-  /* package */ CallLogCacheLollipop(Context context) {
-    super(context);
-  }
-
-  @Override
-  public boolean isVoicemailNumber(PhoneAccountHandle accountHandle, CharSequence number) {
-    if (TextUtils.isEmpty(number)) {
-      return false;
-    }
-
-    String numberString = number.toString();
-
-    if (!TextUtils.isEmpty(mVoicemailNumber)) {
-      return PhoneNumberUtils.compare(numberString, mVoicemailNumber);
-    }
-
-    if (PhoneNumberUtils.isVoiceMailNumber(numberString)) {
-      mVoicemailNumber = numberString;
-      return true;
-    }
-
-    return false;
-  }
-
-  @Override
-  public String getAccountLabel(PhoneAccountHandle accountHandle) {
-    return null;
-  }
-
-  @Override
-  public int getAccountColor(PhoneAccountHandle accountHandle) {
-    return PhoneAccount.NO_HIGHLIGHT_COLOR;
-  }
-
-  @Override
-  public boolean doesAccountSupportCallSubject(PhoneAccountHandle accountHandle) {
-    return false;
-  }
-}
diff --git a/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipopMr1.java b/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipopMr1.java
index 0399987..2424b6d 100644
--- a/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipopMr1.java
+++ b/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipopMr1.java
@@ -17,15 +17,13 @@
 package com.android.dialer.app.calllog.calllogcache;
 
 import android.content.Context;
-import android.support.annotation.VisibleForTesting;
+import android.support.annotation.Nullable;
 import android.telecom.PhoneAccountHandle;
 import android.text.TextUtils;
 import android.util.ArrayMap;
-import android.util.Pair;
 import com.android.dialer.calllogutils.PhoneAccountUtils;
-import com.android.dialer.phonenumberutil.PhoneNumberHelper;
+import com.android.dialer.telecom.TelecomUtil;
 import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * This is the CallLogCache for versions of dialer Lollipop Mr1 and above with support for multi-SIM
@@ -36,15 +34,6 @@
  */
 class CallLogCacheLollipopMr1 extends CallLogCache {
 
-  /*
-   * Maps from a phone-account/number pair to a boolean because multiple numbers could return true
-   * for the voicemail number if those numbers are not pre-normalized. Access must be synchronzied
-   * as it's used in the background thread in CallLogAdapter. {@see CallLogAdapter#loadData}
-   */
-  @VisibleForTesting
-  final Map<Pair<PhoneAccountHandle, CharSequence>, Boolean> mVoicemailQueryCache =
-      new ConcurrentHashMap<>();
-
   private final Map<PhoneAccountHandle, String> mPhoneAccountLabelCache = new ArrayMap<>();
   private final Map<PhoneAccountHandle, Integer> mPhoneAccountColorCache = new ArrayMap<>();
   private final Map<PhoneAccountHandle, Boolean> mPhoneAccountCallWithNoteCache = new ArrayMap<>();
@@ -55,7 +44,6 @@
 
   @Override
   public void reset() {
-    mVoicemailQueryCache.clear();
     mPhoneAccountLabelCache.clear();
     mPhoneAccountColorCache.clear();
     mPhoneAccountCallWithNoteCache.clear();
@@ -64,20 +52,12 @@
   }
 
   @Override
-  public boolean isVoicemailNumber(PhoneAccountHandle accountHandle, CharSequence number) {
+  public boolean isVoicemailNumber(
+      PhoneAccountHandle accountHandle, @Nullable CharSequence number) {
     if (TextUtils.isEmpty(number)) {
       return false;
     }
-
-    Pair<PhoneAccountHandle, CharSequence> key = new Pair<>(accountHandle, number);
-    Boolean value = mVoicemailQueryCache.get(key);
-    if (value != null) {
-      return value;
-    }
-    boolean isVoicemail =
-        PhoneNumberHelper.isVoicemailNumber(mContext, accountHandle, number.toString());
-    mVoicemailQueryCache.put(key, isVoicemail);
-    return isVoicemail;
+    return TelecomUtil.isVoicemailNumber(mContext, accountHandle, number.toString());
   }
 
   @Override
diff --git a/java/com/android/dialer/app/contactinfo/ContactInfoCache.java b/java/com/android/dialer/app/contactinfo/ContactInfoCache.java
index e561b56..82fc229 100644
--- a/java/com/android/dialer/app/contactinfo/ContactInfoCache.java
+++ b/java/com/android/dialer/app/contactinfo/ContactInfoCache.java
@@ -24,6 +24,7 @@
 import android.text.TextUtils;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.logging.ContactSource.Type;
+import com.android.dialer.oem.CequintCallerIdManager;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumbercache.ContactInfoHelper;
 import com.android.dialer.util.ExpirableCache;
@@ -55,6 +56,7 @@
   private final OnContactInfoChangedListener mOnContactInfoChangedListener;
   private final BlockingQueue<ContactInfoRequest> mUpdateRequests;
   private final Handler mHandler;
+  private CequintCallerIdManager mCequintCallerIdManager;
   private QueryThread mContactInfoQueryThread;
   private volatile boolean mRequestProcessingDisabled = false;
 
@@ -95,6 +97,10 @@
     mHandler = new InnerHandler(new WeakReference<>(this));
   }
 
+  public void setCequintCallerIdManager(CequintCallerIdManager cequintCallerIdManager) {
+    mCequintCallerIdManager = cequintCallerIdManager;
+  }
+
   public ContactInfo getValue(
       String number,
       String countryIso,
@@ -156,11 +162,11 @@
     ContactInfo info;
     if (request.isLocalRequest()) {
       info = mContactInfoHelper.lookupNumber(request.number, request.countryIso);
-      if (!info.contactExists) {
+      if (info != null && !info.contactExists) {
         // TODO: Maybe skip look up if it's already available in cached number lookup
         // service.
         long start = SystemClock.elapsedRealtime();
-        mContactInfoHelper.updateFromCequintCallerId(info, request.number);
+        mContactInfoHelper.updateFromCequintCallerId(mCequintCallerIdManager, info, request.number);
         long time = SystemClock.elapsedRealtime() - start;
         LogUtil.d(
             "ContactInfoCache.queryContactInfo", "Cequint Caller Id look up takes %d ms", time);
diff --git a/java/com/android/dialer/app/dialpad/DialpadFragment.java b/java/com/android/dialer/app/dialpad/DialpadFragment.java
index e9d57b3..3cd3ac2 100644
--- a/java/com/android/dialer/app/dialpad/DialpadFragment.java
+++ b/java/com/android/dialer/app/dialpad/DialpadFragment.java
@@ -29,6 +29,7 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.pm.PackageManager;
+import android.content.res.Resources;
 import android.database.Cursor;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
@@ -84,6 +85,9 @@
 import com.android.dialer.dialpadview.DialpadKeyButton;
 import com.android.dialer.dialpadview.DialpadView;
 import com.android.dialer.location.GeoUtil;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.oem.MotorolaUtils;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.proguard.UsedByReflection;
 import com.android.dialer.telecom.TelecomUtil;
 import com.android.dialer.util.CallUtil;
@@ -626,6 +630,14 @@
     Trace.beginSection(TAG + " onResume");
     super.onResume();
 
+    Resources res = getResources();
+    int iconId = R.drawable.quantum_ic_call_vd_theme_24;
+    if (MotorolaUtils.isWifiCallingAvailable(getContext())) {
+      iconId = R.drawable.ic_wifi_calling;
+    }
+    mFloatingActionButtonController.changeIcon(
+        res.getDrawable(iconId, null), res.getString(R.string.description_dial_button));
+
     final DialtactsActivity activity = (DialtactsActivity) getActivity();
     mDialpadQueryListener = activity;
 
@@ -1005,6 +1017,8 @@
    */
   private void handleDialButtonPressed() {
     if (isDigitsEmpty()) { // No number entered.
+      // No real call made, so treat it as a click
+      PerformanceReport.recordClick(UiAction.Type.PRESS_CALL_BUTTON_WITHOUT_CALLING);
       handleDialButtonClickWithEmptyDigits();
     } else {
       final String number = mDigits.getText().toString();
@@ -1015,6 +1029,7 @@
       if (number != null
           && !TextUtils.isEmpty(mProhibitedPhoneNumberRegexp)
           && number.matches(mProhibitedPhoneNumberRegexp)) {
+        PerformanceReport.recordClick(UiAction.Type.PRESS_CALL_BUTTON_WITHOUT_CALLING);
         LogUtil.i(
             "DialpadFragment.handleDialButtonPressed",
             "The phone number is prohibited explicitly by a rule.");
@@ -1051,6 +1066,10 @@
       startActivity(newFlashIntent());
     } else {
       if (!TextUtils.isEmpty(mLastNumberDialed)) {
+        // Dialpad will be filled with last called number,
+        // but we don't want to record it as user action
+        PerformanceReport.setIgnoreActionOnce(UiAction.Type.TEXT_CHANGE_WITH_INPUT);
+
         // Recall the last number dialed.
         mDigits.setText(mLastNumberDialed);
 
@@ -1166,6 +1185,10 @@
         mDialpadView.setVisibility(View.GONE);
       }
 
+      if (mOverflowPopupMenu != null) {
+        mOverflowPopupMenu.dismiss();
+      }
+
       mFloatingActionButtonController.setVisible(false);
       mDialpadChooser.setVisibility(View.VISIBLE);
 
diff --git a/java/com/android/dialer/app/filterednumber/NumbersAdapter.java b/java/com/android/dialer/app/filterednumber/NumbersAdapter.java
index f71517a..d98395e 100644
--- a/java/com/android/dialer/app/filterednumber/NumbersAdapter.java
+++ b/java/com/android/dialer/app/filterednumber/NumbersAdapter.java
@@ -28,6 +28,7 @@
 import android.widget.TextView;
 import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.ContactPhotoManager.DefaultImageRequest;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.contacts.common.util.UriUtils;
 import com.android.dialer.app.R;
 import com.android.dialer.compat.CompatUtils;
@@ -98,8 +99,8 @@
         info.lookupUri == null ? null : UriUtils.getLookupKeyFromUri(info.lookupUri);
     final int contactType =
         mContactInfoHelper.isBusiness(info.sourceType)
-            ? ContactPhotoManager.TYPE_BUSINESS
-            : ContactPhotoManager.TYPE_DEFAULT;
+            ? LetterTileDrawable.TYPE_BUSINESS
+            : LetterTileDrawable.TYPE_DEFAULT;
     final DefaultImageRequest request =
         new DefaultImageRequest(displayName, lookupKey, contactType, true /* isCircular */);
     badge.assignContactUri(info.lookupUri);
diff --git a/java/com/android/dialer/app/legacybindings/DialerLegacyBindings.java b/java/com/android/dialer/app/legacybindings/DialerLegacyBindings.java
index 1cdeb21..a483af9 100644
--- a/java/com/android/dialer/app/legacybindings/DialerLegacyBindings.java
+++ b/java/com/android/dialer/app/legacybindings/DialerLegacyBindings.java
@@ -40,6 +40,8 @@
       Activity activity,
       ViewGroup alertContainer,
       CallLogAdapter.CallFetcher callFetcher,
+      CallLogAdapter.MultiSelectRemoveView multiSelectRemoveView,
+      CallLogAdapter.OnActionModeStateChangedListener actionModeStateChangedListener,
       CallLogCache callLogCache,
       ContactInfoCache contactInfoCache,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter,
diff --git a/java/com/android/dialer/app/legacybindings/DialerLegacyBindingsStub.java b/java/com/android/dialer/app/legacybindings/DialerLegacyBindingsStub.java
index 6e32843..488fbad 100644
--- a/java/com/android/dialer/app/legacybindings/DialerLegacyBindingsStub.java
+++ b/java/com/android/dialer/app/legacybindings/DialerLegacyBindingsStub.java
@@ -34,6 +34,8 @@
       Activity activity,
       ViewGroup alertContainer,
       CallLogAdapter.CallFetcher callFetcher,
+      CallLogAdapter.MultiSelectRemoveView multiSelectRemoveView,
+      CallLogAdapter.OnActionModeStateChangedListener actionModeStateChangedListener,
       CallLogCache callLogCache,
       ContactInfoCache contactInfoCache,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter,
@@ -43,6 +45,8 @@
         activity,
         alertContainer,
         callFetcher,
+        multiSelectRemoveView,
+        actionModeStateChangedListener,
         callLogCache,
         contactInfoCache,
         voicemailPlaybackPresenter,
diff --git a/java/com/android/dialer/app/list/AllContactsFragment.java b/java/com/android/dialer/app/list/AllContactsFragment.java
index 0460997..32a99e7 100644
--- a/java/com/android/dialer/app/list/AllContactsFragment.java
+++ b/java/com/android/dialer/app/list/AllContactsFragment.java
@@ -38,12 +38,16 @@
 import com.android.contacts.common.list.ContactListFilter;
 import com.android.contacts.common.list.DefaultContactListAdapter;
 import com.android.dialer.app.R;
-import com.android.dialer.app.widget.EmptyContentView;
-import com.android.dialer.app.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import com.android.dialer.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import java.util.Arrays;
 
 /** Fragments to show all contacts with phone numbers. */
 public class AllContactsFragment extends ContactEntryListFragment<ContactEntryListAdapter>
@@ -149,6 +153,8 @@
   public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
     final Uri uri = (Uri) view.getTag();
     if (uri != null) {
+      Logger.get(getContext())
+          .logInteraction(InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_ALL_CONTACTS_GENERAL);
       if (CompatUtils.hasPrioritizedMimeType()) {
         QuickContact.showQuickContact(getContext(), view, uri, null, Phone.CONTENT_ITEM_TYPE);
       } else {
@@ -169,9 +175,15 @@
       return;
     }
 
-    if (!PermissionsUtil.hasPermission(activity, READ_CONTACTS)) {
+    String[] deniedPermissions =
+        PermissionsUtil.getPermissionsCurrentlyDenied(
+            getContext(), PermissionsUtil.allContactsGroupPermissionsUsedInDialer);
+    if (deniedPermissions.length > 0) {
+      LogUtil.i(
+          "AllContactsFragment.onEmptyViewActionButtonClicked",
+          "Requesting permissions: " + Arrays.toString(deniedPermissions));
       FragmentCompat.requestPermissions(
-          this, new String[] {READ_CONTACTS}, READ_CONTACTS_PERMISSION_REQUEST_CODE);
+          this, deniedPermissions, READ_CONTACTS_PERMISSION_REQUEST_CODE);
     } else {
       // Add new contact
       DialerUtils.startActivityWithErrorToast(
diff --git a/java/com/android/dialer/app/list/DialerPhoneNumberListAdapter.java b/java/com/android/dialer/app/list/DialerPhoneNumberListAdapter.java
index 537f488..fc0bd3c 100644
--- a/java/com/android/dialer/app/list/DialerPhoneNumberListAdapter.java
+++ b/java/com/android/dialer/app/list/DialerPhoneNumberListAdapter.java
@@ -19,6 +19,8 @@
 import android.content.Context;
 import android.content.res.Resources;
 import android.database.Cursor;
+import android.graphics.drawable.Drawable;
+import android.support.v4.content.ContextCompat;
 import android.telephony.PhoneNumberUtils;
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
@@ -29,7 +31,6 @@
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.app.R;
 import com.android.dialer.location.GeoUtil;
-import com.android.dialer.util.CallUtil;
 
 /**
  * {@link PhoneNumberListAdapter} with the following added shortcuts, that are displayed as list
@@ -50,7 +51,6 @@
 
   private final boolean[] mShortcutEnabled = new boolean[SHORTCUT_COUNT];
   private final BidiFormatter mBidiFormatter = BidiFormatter.getInstance();
-  private final boolean mVideoCallingEnabled;
   private final String mCountryIso;
 
   private String mFormattedQueryString;
@@ -59,7 +59,6 @@
     super(context);
 
     mCountryIso = GeoUtil.getCurrentCountryIso(context);
-    mVideoCallingEnabled = CallUtil.isVideoEnabled(context);
   }
 
   @Override
@@ -110,8 +109,7 @@
         return convertView;
       } else {
         final ContactListItemView v =
-            new ContactListItemView(
-                getContext(), null, mVideoCallingEnabled, isCallAndShareEnabled());
+            new ContactListItemView(getContext(), null, mIsImsVideoEnabled);
         assignShortcutToView(v, shortcutType);
         return v;
       }
@@ -125,8 +123,7 @@
       Context context, int partition, Cursor cursor, int position, ViewGroup parent) {
     final ContactListItemView view = super.newView(context, partition, cursor, position, parent);
 
-    view.setSupportVideoCallIcon(mVideoCallingEnabled);
-    view.setSupportCallAndShareIcon(isCallAndShareEnabled());
+    view.setSupportVideoCallIcon(mIsImsVideoEnabled);
     return view;
   }
 
@@ -171,7 +168,7 @@
 
   private void assignShortcutToView(ContactListItemView v, int shortcutType) {
     final CharSequence text;
-    final int drawableId;
+    final Drawable drawable;
     final Resources resources = getContext().getResources();
     final String number = getFormattedQueryString();
     switch (shortcutType) {
@@ -181,34 +178,39 @@
                 resources,
                 R.string.search_shortcut_call_number,
                 mBidiFormatter.unicodeWrap(number, TextDirectionHeuristics.LTR));
-        drawableId = R.drawable.ic_search_phone;
+        drawable = ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_call_vd_theme_24);
         break;
       case SHORTCUT_CREATE_NEW_CONTACT:
         text = resources.getString(R.string.search_shortcut_create_new_contact);
-        drawableId = R.drawable.ic_search_add_contact;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_person_add_vd_theme_24);
+        drawable.setAutoMirrored(true);
         break;
       case SHORTCUT_ADD_TO_EXISTING_CONTACT:
         text = resources.getString(R.string.search_shortcut_add_to_contact);
-        drawableId = R.drawable.quantum_ic_person_white_24;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_person_add_vd_theme_24);
         break;
       case SHORTCUT_SEND_SMS_MESSAGE:
         text = resources.getString(R.string.search_shortcut_send_sms_message);
-        drawableId = R.drawable.quantum_ic_message_white_24;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_message_vd_theme_24);
         break;
       case SHORTCUT_MAKE_VIDEO_CALL:
         text = resources.getString(R.string.search_shortcut_make_video_call);
-        drawableId = R.drawable.quantum_ic_videocam_white_24;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_videocam_vd_theme_24);
         break;
       case SHORTCUT_BLOCK_NUMBER:
         text = resources.getString(R.string.search_shortcut_block_number);
-        drawableId = R.drawable.ic_not_interested_googblue_24dp;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.ic_not_interested_googblue_24dp);
         break;
       default:
         throw new IllegalArgumentException("Invalid shortcut type");
     }
-    v.setDrawableResource(drawableId);
+    v.setDrawable(drawable);
     v.setDisplayName(text);
-    v.setPhotoPosition(super.getPhotoPosition());
     v.setAdjustSelectionBoundsEnabled(false);
   }
 
diff --git a/java/com/android/dialer/app/list/DialerViewPager.java b/java/com/android/dialer/app/list/DialerViewPager.java
new file mode 100644
index 0000000..ae99f05
--- /dev/null
+++ b/java/com/android/dialer/app/list/DialerViewPager.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2017 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.dialer.app.list;
+
+import android.content.Context;
+import android.support.v4.view.ViewPager;
+import android.util.AttributeSet;
+import android.view.MotionEvent;
+
+/** Class that handles enabling/disabling swiping between @{ViewPagerTabs}. */
+public class DialerViewPager extends ViewPager {
+
+  private boolean enableSwipingPages;
+
+  public DialerViewPager(Context context, AttributeSet attributeSet) {
+    super(context, attributeSet);
+    enableSwipingPages = true;
+  }
+
+  @Override
+  public boolean onInterceptTouchEvent(MotionEvent event) {
+    if (enableSwipingPages) {
+      return super.onInterceptTouchEvent(event);
+    }
+
+    return false;
+  }
+
+  @Override
+  public boolean onTouchEvent(MotionEvent event) {
+    if (enableSwipingPages) {
+      return super.onTouchEvent(event);
+    }
+
+    return false;
+  }
+
+  public void setEnableSwipingPages(boolean enabled) {
+    enableSwipingPages = enabled;
+  }
+}
diff --git a/java/com/android/dialer/app/list/DialtactsPagerAdapter.java b/java/com/android/dialer/app/list/DialtactsPagerAdapter.java
index dba3d3a..822aa78 100644
--- a/java/com/android/dialer/app/list/DialtactsPagerAdapter.java
+++ b/java/com/android/dialer/app/list/DialtactsPagerAdapter.java
@@ -28,8 +28,8 @@
 import com.android.dialer.calllog.CallLogFramework;
 import com.android.dialer.calllog.ui.NewCallLogFragment;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.contactsfragment.ContactsFragment;
 import com.android.dialer.database.CallLogQueryHandler;
 import com.android.dialer.speeddial.SpeedDialFragment;
@@ -78,7 +78,7 @@
     CallLogFramework callLogFramework = CallLogComponent.get(context).callLogFramework();
     useNewCallLogTab = callLogFramework.isNewCallLogEnabled(context);
     useNewContactsTab =
-        ConfigProviderBindings.get(context).getBoolean("enable_new_contacts_tab", false);
+        ConfigProviderBindings.get(context).getBoolean("enable_new_contacts_tab", true);
     this.tabTitles = tabTitles;
     hasActiveVoicemailProvider = hasVoicemailProvider;
     fragments.addAll(Collections.nCopies(TAB_COUNT_WITH_VOICEMAIL, null));
diff --git a/java/com/android/dialer/app/list/ListsFragment.java b/java/com/android/dialer/app/list/ListsFragment.java
index 8dd52a9..3f03db1 100644
--- a/java/com/android/dialer/app/list/ListsFragment.java
+++ b/java/com/android/dialer/app/list/ListsFragment.java
@@ -31,7 +31,6 @@
 import android.os.Trace;
 import android.preference.PreferenceManager;
 import android.provider.VoicemailContract;
-import android.support.v4.view.ViewPager;
 import android.support.v4.view.ViewPager.OnPageChangeListener;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -44,9 +43,12 @@
 import com.android.dialer.app.voicemail.error.VoicemailStatusCorruptionHandler.Source;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.database.CallLogQueryHandler;
+import com.android.dialer.database.CallLogQueryHandler.Listener;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.speeddial.SpeedDialFragment;
 import com.android.dialer.util.PermissionsUtil;
 import com.android.dialer.voicemailstatus.VisualVoicemailEnabledChecker;
@@ -60,11 +62,11 @@
  * Contacts list. This will also eventually contain the logic that allows sliding the ViewPager
  * containing the lists up above the search bar and pin it against the top of the screen.
  */
-public class ListsFragment extends Fragment
-    implements ViewPager.OnPageChangeListener, CallLogQueryHandler.Listener {
+public class ListsFragment extends Fragment implements OnPageChangeListener, Listener {
 
   private static final String TAG = "ListsFragment";
-  private ViewPager mViewPager;
+
+  private DialerViewPager mViewPager;
   private ViewPagerTabs mViewPagerTabs;
   private DialtactsPagerAdapter mAdapter;
   private RemoveView mRemoveView;
@@ -77,10 +79,12 @@
   private final ArrayList<OnPageChangeListener> mOnPageChangeListeners = new ArrayList<>();
   /** The position of the currently selected tab. */
   private int mTabIndex = TAB_INDEX_SPEED_DIAL;
-  private boolean mPaused;
 
+  private boolean mPaused;
   private CallLogQueryHandler mCallLogQueryHandler;
 
+  private UiAction.Type[] actionTypeList;
+
   private final ContentObserver mVoicemailStatusObserver =
       new ContentObserver(new Handler()) {
         @Override
@@ -151,6 +155,12 @@
     Trace.endSection();
     Trace.beginSection(TAG + " setup views");
 
+    actionTypeList = new UiAction.Type[TAB_COUNT_WITH_VOICEMAIL];
+    actionTypeList[TAB_INDEX_SPEED_DIAL] = UiAction.Type.CHANGE_TAB_TO_FAVORITE;
+    actionTypeList[TAB_INDEX_HISTORY] = UiAction.Type.CHANGE_TAB_TO_CALL_LOG;
+    actionTypeList[TAB_INDEX_ALL_CONTACTS] = UiAction.Type.CHANGE_TAB_TO_CONTACTS;
+    actionTypeList[TAB_INDEX_VOICEMAIL] = UiAction.Type.CHANGE_TAB_TO_VOICEMAIL;
+
     String[] tabTitles = new String[TAB_COUNT_WITH_VOICEMAIL];
     tabTitles[TAB_INDEX_SPEED_DIAL] = getResources().getString(R.string.tab_speed_dial);
     tabTitles[TAB_INDEX_HISTORY] = getResources().getString(R.string.tab_history);
@@ -163,7 +173,7 @@
     tabIcons[TAB_INDEX_ALL_CONTACTS] = R.drawable.quantum_ic_people_white_24;
     tabIcons[TAB_INDEX_VOICEMAIL] = R.drawable.quantum_ic_voicemail_white_24;
 
-    mViewPager = (ViewPager) parentView.findViewById(R.id.lists_pager);
+    mViewPager = (DialerViewPager) parentView.findViewById(R.id.lists_pager);
     mAdapter =
         new DialtactsPagerAdapter(
             getContext(),
@@ -180,7 +190,6 @@
     mViewPagerTabs.configureTabIcons(tabIcons);
     mViewPagerTabs.setViewPager(mViewPager);
     addOnPageChangeListener(mViewPagerTabs);
-
     mRemoveView = (RemoveView) parentView.findViewById(R.id.remove_view);
     mRemoveViewContent = parentView.findViewById(R.id.remove_view_content);
 
@@ -191,7 +200,7 @@
           .registerContentObserver(
               VoicemailContract.Status.CONTENT_URI, true, mVoicemailStatusObserver);
     } else {
-      LogUtil.w("ListsFragment.onCreateView", "no voicemail read/add permissions");
+      LogUtil.w("ListsFragment.onCreateView", "no voicemail read permissions");
     }
 
     Trace.endSection();
@@ -213,8 +222,8 @@
 
   /**
    * Shows the tab with the specified index. If the voicemail tab index is specified, but the
-   * voicemail status hasn't been fetched, it will try to show the tab after the voicemail status
-   * has been fetched.
+   * voicemail status hasn't been fetched, it will show the speed dial tab and try to show the
+   * voicemail tab after the voicemail status has been fetched.
    */
   public void showTab(int index) {
     if (index == TAB_INDEX_VOICEMAIL) {
@@ -241,6 +250,8 @@
 
   @Override
   public void onPageSelected(int position) {
+    PerformanceReport.recordClick(actionTypeList[position]);
+
     LogUtil.i("ListsFragment.onPageSelected", "position: %d", position);
     mTabIndex = mAdapter.getRtlPosition(position);
 
@@ -375,7 +386,7 @@
   public void markMissedCallsAsReadAndRemoveNotifications() {
     if (mCallLogQueryHandler != null) {
       mCallLogQueryHandler.markMissedCallsAsRead();
-      CallLogNotificationsService.markNewMissedCallsAsOld(getContext(), null);
+      CallLogNotificationsService.cancelAllMissedCalls(getContext());
     }
   }
 
@@ -385,6 +396,11 @@
     mRemoveView.animate().alpha(show ? 1 : 0).start();
   }
 
+  public void showMultiSelectRemoveView(boolean show) {
+    mViewPagerTabs.setVisibility(show ? View.GONE : View.VISIBLE);
+    mViewPager.setEnableSwipingPages(!show);
+  }
+
   public boolean hasFrequents() {
     Fragment page = mAdapter.getItem(mAdapter.getRtlPosition(TAB_INDEX_SPEED_DIAL));
     return page instanceof OldSpeedDialFragment
diff --git a/java/com/android/dialer/app/list/OldSpeedDialFragment.java b/java/com/android/dialer/app/list/OldSpeedDialFragment.java
index 40fe745..05d017b 100644
--- a/java/com/android/dialer/app/list/OldSpeedDialFragment.java
+++ b/java/com/android/dialer/app/list/OldSpeedDialFragment.java
@@ -50,13 +50,13 @@
 import com.android.contacts.common.list.ContactTileView;
 import com.android.contacts.common.list.OnPhoneNumberPickerActionListener;
 import com.android.dialer.app.R;
-import com.android.dialer.app.widget.EmptyContentView;
-import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.util.PermissionsUtil;
 import com.android.dialer.util.ViewUtil;
+import com.android.dialer.widget.EmptyContentView;
 import java.util.ArrayList;
+import java.util.Arrays;
 
 /** This fragment displays the user's favorite/frequent contacts in a grid. */
 public class OldSpeedDialFragment extends Fragment
@@ -404,9 +404,15 @@
       return;
     }
 
-    if (!PermissionsUtil.hasPermission(activity, READ_CONTACTS)) {
+    String[] deniedPermissions =
+        PermissionsUtil.getPermissionsCurrentlyDenied(
+            getContext(), PermissionsUtil.allContactsGroupPermissionsUsedInDialer);
+    if (deniedPermissions.length > 0) {
+      LogUtil.i(
+          "OldSpeedDialFragment.onEmptyViewActionButtonClicked",
+          "Requesting permissions: " + Arrays.toString(deniedPermissions));
       FragmentCompat.requestPermissions(
-          this, new String[] {READ_CONTACTS}, READ_CONTACTS_PERMISSION_REQUEST_CODE);
+          this, deniedPermissions, READ_CONTACTS_PERMISSION_REQUEST_CODE);
     } else {
       // Switch tabs
       ((HostInterface) activity).showAllContactsTab();
@@ -430,7 +436,7 @@
     void showAllContactsTab();
   }
 
-  private class ContactTileLoaderListener implements LoaderManager.LoaderCallbacks<Cursor> {
+  class ContactTileLoaderListener implements LoaderManager.LoaderCallbacks<Cursor> {
 
     @Override
     public CursorLoader onCreateLoader(int id, Bundle args) {
@@ -460,24 +466,17 @@
   private class ContactTileAdapterListener implements ContactTileView.Listener {
 
     @Override
-    public void onContactSelected(Uri contactUri, Rect targetRect) {
+    public void onContactSelected(
+        Uri contactUri, Rect targetRect, CallSpecificAppData callSpecificAppData) {
       if (mPhoneNumberPickerActionListener != null) {
-        CallSpecificAppData callSpecificAppData =
-            CallSpecificAppData.newBuilder()
-                .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL)
-                .build();
         mPhoneNumberPickerActionListener.onPickDataUri(
             contactUri, false /* isVideoCall */, callSpecificAppData);
       }
     }
 
     @Override
-    public void onCallNumberDirectly(String phoneNumber) {
+    public void onCallNumberDirectly(String phoneNumber, CallSpecificAppData callSpecificAppData) {
       if (mPhoneNumberPickerActionListener != null) {
-        CallSpecificAppData callSpecificAppData =
-            CallSpecificAppData.newBuilder()
-                .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL)
-                .build();
         mPhoneNumberPickerActionListener.onPickPhoneNumber(
             phoneNumber, false /* isVideoCall */, callSpecificAppData);
       }
diff --git a/java/com/android/dialer/app/list/PhoneFavoriteListView.java b/java/com/android/dialer/app/list/PhoneFavoriteListView.java
index 9516f06..f4f395f 100644
--- a/java/com/android/dialer/app/list/PhoneFavoriteListView.java
+++ b/java/com/android/dialer/app/list/PhoneFavoriteListView.java
@@ -1,6 +1,5 @@
 /*
- * Copyright (C) 2012 Google Inc.
- * Licensed to The Android Open Source Project.
+ * Copyright (C) 2017 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.
@@ -24,7 +23,6 @@
 import android.graphics.Bitmap;
 import android.os.Handler;
 import android.util.AttributeSet;
-import android.util.Log;
 import android.view.DragEvent;
 import android.view.MotionEvent;
 import android.view.View;
@@ -33,6 +31,7 @@
 import android.widget.ImageView;
 import com.android.dialer.app.R;
 import com.android.dialer.app.list.DragDropController.DragItemContainer;
+import com.android.dialer.common.LogUtil;
 
 /** Viewgroup that presents the user's speed dial contacts in a grid. */
 public class PhoneFavoriteListView extends GridView
@@ -40,14 +39,14 @@
 
   public static final String LOG_TAG = PhoneFavoriteListView.class.getSimpleName();
   final int[] mLocationOnScreen = new int[2];
-  private final long SCROLL_HANDLER_DELAY_MILLIS = 5;
-  private final int DRAG_SCROLL_PX_UNIT = 25;
-  private final float DRAG_SHADOW_ALPHA = 0.7f;
+  private static final long SCROLL_HANDLER_DELAY_MILLIS = 5;
+  private static final int DRAG_SCROLL_PX_UNIT = 25;
+  private static final float DRAG_SHADOW_ALPHA = 0.7f;
   /**
    * {@link #mTopScrollBound} and {@link mBottomScrollBound} will be offseted to the top / bottom by
    * {@link #getHeight} * {@link #BOUND_GAP_RATIO} pixels.
    */
-  private final float BOUND_GAP_RATIO = 0.2f;
+  private static final float BOUND_GAP_RATIO = 0.2f;
 
   private float mTouchSlop;
   private int mTopScrollBound;
@@ -67,7 +66,6 @@
         }
       };
   private boolean mIsDragScrollerRunning = false;
-  private int mTouchDownForDragStartX;
   private int mTouchDownForDragStartY;
   private Bitmap mDragShadowBitmap;
   private ImageView mDragShadowOverlay;
@@ -98,7 +96,7 @@
   }
 
   public PhoneFavoriteListView(Context context, AttributeSet attrs) {
-    this(context, attrs, -1);
+    this(context, attrs, 0);
   }
 
   public PhoneFavoriteListView(Context context, AttributeSet attrs, int defStyle) {
@@ -121,7 +119,6 @@
   @Override
   public boolean onInterceptTouchEvent(MotionEvent ev) {
     if (ev.getAction() == MotionEvent.ACTION_DOWN) {
-      mTouchDownForDragStartX = (int) ev.getX();
       mTouchDownForDragStartY = (int) ev.getY();
     }
 
@@ -287,7 +284,7 @@
       try {
         bitmap = cache.copy(Bitmap.Config.ARGB_8888, false);
       } catch (final OutOfMemoryError e) {
-        Log.w(LOG_TAG, "Failed to copy bitmap from Drawing cache", e);
+        LogUtil.w(LOG_TAG, "Failed to copy bitmap from Drawing cache", e);
         bitmap = null;
       }
     }
diff --git a/java/com/android/dialer/app/list/PhoneFavoriteSquareTileView.java b/java/com/android/dialer/app/list/PhoneFavoriteSquareTileView.java
index 5a18d03..40f23ea 100644
--- a/java/com/android/dialer/app/list/PhoneFavoriteSquareTileView.java
+++ b/java/com/android/dialer/app/list/PhoneFavoriteSquareTileView.java
@@ -26,6 +26,8 @@
 import com.android.contacts.common.list.ContactEntry;
 import com.android.dialer.app.R;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 
 /** Displays the contact's picture overlaid with their name and number type in a tile. */
 public class PhoneFavoriteSquareTileView extends PhoneFavoriteTileView {
@@ -87,6 +89,8 @@
           new OnClickListener() {
             @Override
             public void onClick(View v) {
+              Logger.get(getContext())
+                  .logInteraction(InteractionEvent.Type.SPEED_DIAL_OPEN_CONTACT_CARD);
               launchQuickContact();
             }
           });
diff --git a/java/com/android/dialer/app/list/PhoneFavoriteTileView.java b/java/com/android/dialer/app/list/PhoneFavoriteTileView.java
index db89cf3..eb4f8e9 100644
--- a/java/com/android/dialer/app/list/PhoneFavoriteTileView.java
+++ b/java/com/android/dialer/app/list/PhoneFavoriteTileView.java
@@ -18,16 +18,22 @@
 
 import android.content.ClipData;
 import android.content.Context;
+import android.provider.ContactsContract.PinnedPositions;
 import android.text.TextUtils;
 import android.util.AttributeSet;
 import android.view.View;
 import android.widget.ImageView;
-import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.ContactPhotoManager.DefaultImageRequest;
 import com.android.contacts.common.MoreContactUtils;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.contacts.common.list.ContactEntry;
 import com.android.contacts.common.list.ContactTileView;
 import com.android.dialer.app.R;
+import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.callintent.CallSpecificAppData;
+import com.android.dialer.callintent.SpeedDialContactType;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 
 /**
  * A light version of the {@link com.android.contacts.common.list.ContactTileView} that is used in
@@ -42,7 +48,6 @@
   // tile is long pressed.
   static final String DRAG_PHONE_FAVORITE_TILE = "PHONE_FAVORITE_TILE";
   private static final String TAG = PhoneFavoriteTileView.class.getSimpleName();
-  private static final boolean DEBUG = false;
   // These parameters instruct the photo manager to display the default image/letter at 70% of
   // its normal size, and vertically offset upwards 12% towards the top of the letter tile, to
   // make room for the contact name and number label at the bottom of the image.
@@ -55,6 +60,8 @@
   private View mShadowOverlay;
   /** Users' most frequent phone number. */
   private String mPhoneNumberString;
+  private boolean isPinned;
+  private boolean isStarred;
 
   public PhoneFavoriteTileView(Context context, AttributeSet attrs) {
     super(context, attrs);
@@ -83,6 +90,8 @@
     super.loadFromContact(entry);
     // Set phone number to null in case we're reusing the view.
     mPhoneNumberString = null;
+    isPinned = (entry.pinned != PinnedPositions.UNPINNED);
+    isStarred = entry.isFavorite;
     if (entry != null) {
       // Grab the phone-number to call directly. See {@link onClick()}.
       mPhoneNumberString = entry.phoneNumber;
@@ -113,16 +122,37 @@
         if (mListener == null) {
           return;
         }
+
+        CallSpecificAppData.Builder callSpecificAppData =
+            CallSpecificAppData.newBuilder()
+                .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL)
+                .setSpeedDialContactPosition(
+                    ((PhoneFavoriteListView) v.getParent()).getPositionForView(v));
+        if (isStarred) {
+          callSpecificAppData.addSpeedDialContactType(SpeedDialContactType.Type.STARRED_CONTACT);
+        } else {
+          callSpecificAppData.addSpeedDialContactType(SpeedDialContactType.Type.FREQUENT_CONTACT);
+        }
+        if (isPinned) {
+          callSpecificAppData.addSpeedDialContactType(SpeedDialContactType.Type.PINNED_CONTACT);
+        }
+
         if (TextUtils.isEmpty(mPhoneNumberString)) {
+          // Don't set performance report now, since user may spend some time on picking a number
+
           // Copy "superclass" implementation
+          Logger.get(getContext())
+              .logInteraction(InteractionEvent.Type.SPEED_DIAL_CLICK_CONTACT_WITH_AMBIGUOUS_NUMBER);
           mListener.onContactSelected(
-              getLookupUri(), MoreContactUtils.getTargetRectFromView(PhoneFavoriteTileView.this));
+              getLookupUri(),
+              MoreContactUtils.getTargetRectFromView(PhoneFavoriteTileView.this),
+              callSpecificAppData.build());
         } else {
           // When you tap a frequently-called contact, you want to
           // call them at the number that you usually talk to them
           // at (i.e. the one displayed in the UI), regardless of
           // whether that's their default number.
-          mListener.onCallNumberDirectly(mPhoneNumberString);
+          mListener.onCallNumberDirectly(mPhoneNumberString, callSpecificAppData.build());
         }
       }
     };
@@ -133,7 +163,7 @@
     return new DefaultImageRequest(
         displayName,
         lookupKey,
-        ContactPhotoManager.TYPE_DEFAULT,
+        LetterTileDrawable.TYPE_DEFAULT,
         DEFAULT_IMAGE_LETTER_SCALE,
         DEFAULT_IMAGE_LETTER_OFFSET,
         false);
diff --git a/java/com/android/dialer/app/list/PhoneFavoritesTileAdapter.java b/java/com/android/dialer/app/list/PhoneFavoritesTileAdapter.java
index c692eca..876fbf1 100644
--- a/java/com/android/dialer/app/list/PhoneFavoritesTileAdapter.java
+++ b/java/com/android/dialer/app/list/PhoneFavoritesTileAdapter.java
@@ -30,7 +30,6 @@
 import android.provider.ContactsContract.PinnedPositions;
 import android.support.annotation.VisibleForTesting;
 import android.text.TextUtils;
-import android.util.Log;
 import android.util.LongSparseArray;
 import android.view.View;
 import android.view.ViewGroup;
@@ -41,6 +40,11 @@
 import com.android.contacts.common.list.ContactTileView;
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.dialer.app.R;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.lightbringer.Lightbringer;
+import com.android.dialer.lightbringer.LightbringerComponent;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.shortcuts.ShortcutRefresher;
 import com.google.common.collect.ComparisonChain;
 import java.util.ArrayList;
@@ -190,6 +194,14 @@
     // Track the length of {@link #mContactEntries} and compare to {@link #TILES_SOFT_LIMIT}.
     int counter = 0;
 
+    // Data for logging
+    int starredContactsCount = 0;
+    int pinnedContactsCount = 0;
+    int multipleNumbersContactsCount = 0;
+    int contactsWithPhotoCount = 0;
+    int contactsWithNameCount = 0;
+    int lightbringerReachableContactsCount = 0;
+
     // The cursor should not be closed since this is invoked from a CursorLoader.
     if (cursor.moveToFirst()) {
       int starredColumn = cursor.getColumnIndexOrThrow(Contacts.STARRED);
@@ -262,6 +274,22 @@
         contact.pinned = pinned;
         mContactEntries.add(contact);
 
+        // Set counts for logging
+        if (isStarred) {
+          // mNumStarred might be larger than the number of visible starred contact,
+          // since it includes invisible ones (starred contact with no phone number).
+          starredContactsCount++;
+        }
+        if (pinned != PinnedPositions.UNPINNED) {
+          pinnedContactsCount++;
+        }
+        if (!TextUtils.isEmpty(name)) {
+          contactsWithNameCount++;
+        }
+        if (photoUri != null) {
+          contactsWithPhotoCount++;
+        }
+
         duplicates.put(id, contact);
 
         counter++;
@@ -274,6 +302,47 @@
 
     ShortcutRefresher.refresh(mContext, mContactEntries);
     notifyDataSetChanged();
+
+    Lightbringer lightbringer = LightbringerComponent.get(mContext).getLightbringer();
+    for (ContactEntry contact : mContactEntries) {
+      if (contact.phoneNumber == null) {
+        multipleNumbersContactsCount++;
+      } else if (lightbringer.isReachable(mContext, contact.phoneNumber)) {
+        lightbringerReachableContactsCount++;
+      }
+    }
+
+    Logger.get(mContext)
+        .logSpeedDialContactComposition(
+            counter,
+            starredContactsCount,
+            pinnedContactsCount,
+            multipleNumbersContactsCount,
+            contactsWithPhotoCount,
+            contactsWithNameCount,
+            lightbringerReachableContactsCount);
+    // Logs for manual testing
+    LogUtil.v("PhoneFavoritesTileAdapter.saveCursorToCache", "counter: %d", counter);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "starredContactsCount: %d",
+        starredContactsCount);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "pinnedContactsCount: %d",
+        pinnedContactsCount);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "multipleNumbersContactsCount: %d",
+        multipleNumbersContactsCount);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "contactsWithPhotoCount: %d",
+        contactsWithPhotoCount);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "contactsWithNameCount: %d",
+        contactsWithNameCount);
   }
 
   /** Iterates over the {@link Cursor} Returns position of the first NON Starred Contact */
@@ -347,7 +416,7 @@
   @Override
   public void notifyDataSetChanged() {
     if (DEBUG) {
-      Log.v(TAG, "notifyDataSetChanged");
+      LogUtil.v(TAG, "notifyDataSetChanged");
     }
     super.notifyDataSetChanged();
   }
@@ -355,7 +424,7 @@
   @Override
   public View getView(int position, View convertView, ViewGroup parent) {
     if (DEBUG) {
-      Log.v(TAG, "get view for " + String.valueOf(position));
+      LogUtil.v(TAG, "get view for " + position);
     }
 
     PhoneFavoriteTileView tileView = null;
@@ -455,8 +524,9 @@
           // update the database here with the new pinned positions
           try {
             mContext.getContentResolver().applyBatch(ContactsContract.AUTHORITY, operations);
+            Logger.get(mContext).logInteraction(InteractionEvent.Type.SPEED_DIAL_PIN_CONTACT);
           } catch (RemoteException | OperationApplicationException e) {
-            Log.e(TAG, "Exception thrown when pinning contacts", e);
+            LogUtil.e(TAG, "Exception thrown when pinning contacts", e);
           }
         }
       }
@@ -609,6 +679,7 @@
     if (mDraggedEntry != null) {
       unstarAndUnpinContact(mDraggedEntry.lookupUri);
       mAwaitingRemove = true;
+      Logger.get(mContext).logInteraction(InteractionEvent.Type.SPEED_DIAL_REMOVE_CONTACT);
     }
   }
 
diff --git a/java/com/android/dialer/app/list/RegularSearchFragment.java b/java/com/android/dialer/app/list/RegularSearchFragment.java
index 0289679..728948b 100644
--- a/java/com/android/dialer/app/list/RegularSearchFragment.java
+++ b/java/com/android/dialer/app/list/RegularSearchFragment.java
@@ -25,12 +25,14 @@
 import com.android.contacts.common.list.ContactEntryListAdapter;
 import com.android.contacts.common.list.PinnedHeaderListView;
 import com.android.dialer.app.R;
-import com.android.dialer.app.widget.EmptyContentView;
-import com.android.dialer.app.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
 import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.phonenumbercache.CachedNumberLookupService;
 import com.android.dialer.phonenumbercache.PhoneNumberCache;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import com.android.dialer.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import java.util.Arrays;
 
 public class RegularSearchFragment extends SearchFragment
     implements OnEmptyViewActionButtonClickedListener,
@@ -114,8 +116,15 @@
     }
 
     if (READ_CONTACTS.equals(mPermissionToRequest)) {
-      FragmentCompat.requestPermissions(
-          this, new String[] {mPermissionToRequest}, PERMISSION_REQUEST_CODE);
+      String[] deniedPermissions =
+          PermissionsUtil.getPermissionsCurrentlyDenied(
+              getContext(), PermissionsUtil.allContactsGroupPermissionsUsedInDialer);
+      if (deniedPermissions.length > 0) {
+        LogUtil.i(
+            "RegularSearchFragment.onEmptyViewActionButtonClicked",
+            "Requesting permissions: " + Arrays.toString(deniedPermissions));
+        FragmentCompat.requestPermissions(this, deniedPermissions, PERMISSION_REQUEST_CODE);
+      }
     }
   }
 
diff --git a/java/com/android/dialer/app/list/RemoveView.java b/java/com/android/dialer/app/list/RemoveView.java
index 3b917db..1d566c5 100644
--- a/java/com/android/dialer/app/list/RemoveView.java
+++ b/java/com/android/dialer/app/list/RemoveView.java
@@ -41,7 +41,7 @@
   }
 
   public RemoveView(Context context, AttributeSet attrs) {
-    this(context, attrs, -1);
+    this(context, attrs, 0);
   }
 
   public RemoveView(Context context, AttributeSet attrs, int defStyle) {
diff --git a/java/com/android/dialer/app/list/SearchFragment.java b/java/com/android/dialer/app/list/SearchFragment.java
index fcf8236..00a2708 100644
--- a/java/com/android/dialer/app/list/SearchFragment.java
+++ b/java/com/android/dialer/app/list/SearchFragment.java
@@ -34,19 +34,20 @@
 import android.widget.ListView;
 import android.widget.Space;
 import com.android.contacts.common.list.ContactEntryListAdapter;
-import com.android.contacts.common.list.ContactListItemView;
 import com.android.contacts.common.list.OnPhoneNumberPickerActionListener;
 import com.android.contacts.common.list.PhoneNumberPickerFragment;
 import com.android.dialer.animation.AnimUtils;
 import com.android.dialer.app.R;
 import com.android.dialer.app.dialpad.DialpadFragment.ErrorDialogFragment;
 import com.android.dialer.app.widget.DialpadSearchEmptyContentView;
-import com.android.dialer.app.widget.EmptyContentView;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
 
 public class SearchFragment extends PhoneNumberPickerFragment {
 
@@ -80,7 +81,6 @@
     setQuickContactEnabled(true);
     setAdjustSelectionBoundsEnabled(false);
     setDarkTheme(false);
-    setPhotoPosition(ContactListItemView.getDefaultPhotoPosition(false /* opposite */));
     setUseCallableUri(true);
 
     try {
@@ -98,9 +98,6 @@
   public void onStart() {
     LogUtil.d("SearchFragment.onStart", "");
     super.onStart();
-    if (isSearchMode()) {
-      getAdapter().setHasHeader(0, false);
-    }
 
     mActivity = (HostInterface) getActivity();
 
@@ -172,16 +169,6 @@
     return animator;
   }
 
-  @Override
-  protected void setSearchMode(boolean flag) {
-    super.setSearchMode(flag);
-    // This hides the "All contacts with phone numbers" header in the search fragment
-    final ContactEntryListAdapter adapter = getAdapter();
-    if (adapter != null) {
-      adapter.setHasHeader(0, false);
-    }
-  }
-
   public void setAddToContactNumber(String addToContactNumber) {
     mAddToContactNumber = addToContactNumber;
   }
@@ -249,6 +236,10 @@
         }
         break;
       case DialerPhoneNumberListAdapter.SHORTCUT_CREATE_NEW_CONTACT:
+        if (this instanceof SmartDialSearchFragment) {
+          Logger.get(getContext())
+              .logImpression(DialerImpression.Type.CREATE_NEW_CONTACT_FROM_DIALPAD);
+        }
         number =
             TextUtils.isEmpty(mAddToContactNumber)
                 ? adapter.getFormattedQueryString()
@@ -257,6 +248,10 @@
         DialerUtils.startActivityWithErrorToast(getActivity(), intent);
         break;
       case DialerPhoneNumberListAdapter.SHORTCUT_ADD_TO_EXISTING_CONTACT:
+        if (this instanceof SmartDialSearchFragment) {
+          Logger.get(getContext())
+              .logImpression(DialerImpression.Type.ADD_TO_A_CONTACT_FROM_DIALPAD);
+        }
         number =
             TextUtils.isEmpty(mAddToContactNumber)
                 ? adapter.getFormattedQueryString()
diff --git a/java/com/android/dialer/app/list/SmartDialSearchFragment.java b/java/com/android/dialer/app/list/SmartDialSearchFragment.java
index eb1508c..2ebc06b 100644
--- a/java/com/android/dialer/app/list/SmartDialSearchFragment.java
+++ b/java/com/android/dialer/app/list/SmartDialSearchFragment.java
@@ -29,11 +29,12 @@
 import com.android.contacts.common.list.ContactEntryListAdapter;
 import com.android.dialer.app.R;
 import com.android.dialer.app.dialpad.SmartDialCursorLoader;
-import com.android.dialer.app.widget.EmptyContentView;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.database.DialerDatabaseHelper;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import java.util.Arrays;
 
 /** Implements a fragment to load and display SmartDial search results. */
 public class SmartDialSearchFragment extends SearchFragment
@@ -80,6 +81,11 @@
   }
 
   @Override
+  public boolean getShowEmptyListForNullQuery() {
+    return true;
+  }
+
+  @Override
   protected void setupEmptyView() {
     if (mEmptyView != null && getActivity() != null) {
       if (!PermissionsUtil.hasPermission(getActivity(), CALL_PHONE)) {
@@ -123,8 +129,16 @@
       return;
     }
 
-    FragmentCompat.requestPermissions(
-        this, new String[] {CALL_PHONE}, CALL_PHONE_PERMISSION_REQUEST_CODE);
+    String[] deniedPermissions =
+        PermissionsUtil.getPermissionsCurrentlyDenied(
+            getContext(), PermissionsUtil.allPhoneGroupPermissionsUsedInDialer);
+    if (deniedPermissions.length > 0) {
+      LogUtil.i(
+          "SmartDialSearchFragment.onEmptyViewActionButtonClicked",
+          "Requesting permissions: " + Arrays.toString(deniedPermissions));
+      FragmentCompat.requestPermissions(
+          this, deniedPermissions, CALL_PHONE_PERMISSION_REQUEST_CODE);
+    }
   }
 
   @Override
diff --git a/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml b/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml
index ca93da0..0729d72 100644
--- a/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml
+++ b/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml
@@ -19,7 +19,7 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.app">
 
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
 
     <activity
       android:exported="false"
@@ -41,6 +41,7 @@
       android:resizeableActivity="true"
       android:theme="@style/DialtactsActivityTheme"
       android:windowSoftInputMode="stateAlwaysHidden|adjustNothing">
+      <!-- LINT.IfChange -->
       <intent-filter>
         <action android:name="android.intent.action.DIAL"/>
 
@@ -106,6 +107,7 @@
         <category android:name="android.intent.category.DEFAULT"/>
         <category android:name="android.intent.category.TAB"/>
       </intent-filter>
+      <!-- LINT.ThenChange(//depot/google3/third_party/java_src/android_app/dialer/java/com/android/dialer/dialtacts/impl/AndroidManifest.xml) -->
 
       <meta-data
         android:name="com.android.keyguard.layout"
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..eeed895
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_blue_24dp.png b/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_blue_24dp.png
new file mode 100644
index 0000000..b041a74
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_blue_24dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/ic_empty_check_mark_white_24dp.png b/java/com/android/dialer/app/res/drawable-hdpi/ic_empty_check_mark_white_24dp.png
new file mode 100644
index 0000000..2c5ba8d
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-hdpi/ic_empty_check_mark_white_24dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-hdpi/ic_results_phone.png
deleted file mode 100644
index 3a1a7a7..0000000
--- a/java/com/android/dialer/app/res/drawable-hdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-mdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-mdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..f3b76be
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-mdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-mdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-mdpi/ic_results_phone.png
deleted file mode 100644
index 74ccf14..0000000
--- a/java/com/android/dialer/app/res/drawable-mdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xhdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-xhdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..01a3bbe
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-xhdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xhdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-xhdpi/ic_results_phone.png
deleted file mode 100644
index 0e24fa4..0000000
--- a/java/com/android/dialer/app/res/drawable-xhdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxhdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-xxhdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..2043279
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-xxhdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxhdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-xxhdpi/ic_results_phone.png
deleted file mode 100644
index 9594619..0000000
--- a/java/com/android/dialer/app/res/drawable-xxhdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..bfbe69e
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_results_phone.png
deleted file mode 100644
index 395652c..0000000
--- a/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable/ic_search_phone.xml b/java/com/android/dialer/app/res/drawable/ic_search_phone.xml
deleted file mode 100644
index 5d449ee..0000000
--- a/java/com/android/dialer/app/res/drawable/ic_search_phone.xml
+++ /dev/null
@@ -1,20 +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.
--->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:src="@drawable/ic_results_phone"
-  android:tint="@color/search_shortcut_icon_color"/>
diff --git a/java/com/android/dialer/app/res/drawable/ic_wifi_calling.xml b/java/com/android/dialer/app/res/drawable/ic_wifi_calling.xml
new file mode 100644
index 0000000..9687133
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable/ic_wifi_calling.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2017 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.
+-->
+
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="24dp"
+    android:tint="?attr/colorControlNormal"
+    android:viewportHeight="30"
+    android:viewportWidth="30"
+    android:width="24dp">
+  <path
+      android:fillColor="@android:color/white"
+      android:pathData="M14.88,16.3h0L25,3.66a16.51,16.51 0,0 0,-20.3 0L14.88,16.3Z"/>
+  <path
+      android:fillColor="@android:color/white"
+      android:pathData="M26.42,18.88a1.25,1.25 0,0 0,-0.89 -0.36,1.28 1.28,0 0,0 -0.87,0.35 14.26,14.26 0,0 1,-3.32 2.31,1.24 1.24,0 0,0 -0.7,1.12v3.87a18.27,18.27 0,0 1,-5.75 0.91,18.63 18.63,0 0,1 -5.75,-0.9v-3.87a1.26,1.26 0,0 0,-0.7 -1.12,14.73 14.73,0 0,1 -3.34,-2.31 1.23,1.23 0,0 0,-0.87 -0.35,1.25 1.25,0 0,0 -0.89,0.36L0.24,22a1.24,1.24 0,0 0,-0.36 0.89,1.23 1.23,0 0,0 0.37,0.87 21.26,21.26 0,0 0,29.26 0,1.27 1.27,0 0,0 0,-1.77Z"/>
+</vector>
\ No newline at end of file
diff --git a/java/com/android/dialer/app/res/layout-land/empty_content_view_dialpad_search.xml b/java/com/android/dialer/app/res/layout-land/empty_content_view_dialpad_search.xml
index 5f80680..59d1363 100644
--- a/java/com/android/dialer/app/res/layout-land/empty_content_view_dialpad_search.xml
+++ b/java/com/android/dialer/app/res/layout-land/empty_content_view_dialpad_search.xml
@@ -26,14 +26,14 @@
       android:layout_height="0dp"
       android:layout_weight="1"/>
     <ImageView
-      android:id="@+id/emptyListViewImage"
+      android:id="@+id/empty_list_view_image"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_gravity="center_horizontal"
       android:importantForAccessibility="no"/>
 
     <TextView
-      android:id="@+id/emptyListViewMessage"
+      android:id="@+id/empty_list_view_message"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:paddingTop="8dp"
@@ -45,7 +45,7 @@
       android:textSize="@dimen/empty_list_message_text_size"/>
 
     <TextView
-      android:id="@+id/emptyListViewAction"
+      android:id="@+id/empty_list_view_action"
       style="@style/TextActionStyle"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
diff --git a/java/com/android/dialer/app/res/layout/action_mode_close_button.xml b/java/com/android/dialer/app/res/layout/action_mode_close_button.xml
new file mode 100644
index 0000000..4cb85d4
--- /dev/null
+++ b/java/com/android/dialer/app/res/layout/action_mode_close_button.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2017 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/action_mode_close_button"
+    style="?attr/actionModeCloseButtonStyle"
+    android:layout_width="wrap_content"
+    android:layout_height="match_parent"
+    android:layout_marginEnd="16dip"
+    android:layout_marginRight="16dip"
+    android:paddingStart="8dp"
+    android:paddingLeft="8dp"
+    android:clickable="true"
+    android:contentDescription="@string/description_cancel_multi_select"
+    android:focusable="true"
+    android:src="@drawable/quantum_ic_close_white_24"/>
+
+
diff --git a/java/com/android/dialer/app/res/layout/all_contacts_fragment.xml b/java/com/android/dialer/app/res/layout/all_contacts_fragment.xml
index 17a4520..422c529 100644
--- a/java/com/android/dialer/app/res/layout/all_contacts_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/all_contacts_fragment.xml
@@ -45,7 +45,7 @@
       android:cropToPadding="false"
       android:clipToPadding="false"/>
 
-    <com.android.dialer.app.widget.EmptyContentView
+    <com.android.dialer.widget.EmptyContentView
       android:id="@+id/empty_list_view"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
diff --git a/java/com/android/dialer/app/res/layout/call_log_fragment.xml b/java/com/android/dialer/app/res/layout/call_log_fragment.xml
index 64f7c10..bbfe4e3 100644
--- a/java/com/android/dialer/app/res/layout/call_log_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/call_log_fragment.xml
@@ -21,6 +21,36 @@
   android:background="@color/background_dialer_call_log"
   android:orientation="vertical">
 
+  <LinearLayout
+      android:id="@+id/multi_select_select_all_view_content"
+      android:layout_width="match_parent"
+      android:layout_height="@dimen/tab_height"
+      android:layout_gravity="start"
+      android:background="@color/actionbar_background_color"
+      android:orientation="horizontal"
+      android:visibility="gone">
+
+    <ImageView
+        android:id="@+id/select_all_view_icon"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:paddingLeft="@dimen/select_all_icon_padding"
+        android:paddingRight="@dimen/select_all_icon_padding"
+        android:gravity="center_vertical"
+        android:src="@drawable/ic_empty_check_mark_white_24dp"/>
+    <TextView
+        android:id="@+id/select_all_view_text"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:paddingLeft="@dimen/select_all_text_left_padding"
+        android:gravity="center_vertical"
+        android:text="@string/select_all"
+        android:textAllCaps="true"
+        android:textStyle="bold"
+        android:textColor="@color/remove_text_color"
+        android:textSize="@dimen/select_all_text_size"/>
+  </LinearLayout>
+
   <FrameLayout
     android:id="@+id/modal_message_container"
     android:layout_width="match_parent"
@@ -37,7 +67,7 @@
     android:background="@color/background_dialer_call_log"
     android:clipToPadding="false"/>
 
-  <com.android.dialer.app.widget.EmptyContentView
+  <com.android.dialer.widget.EmptyContentView
     android:id="@+id/empty_list_view"
     android:layout_width="match_parent"
     android:layout_height="0dp"
diff --git a/java/com/android/dialer/app/res/layout/call_log_list_item.xml b/java/com/android/dialer/app/res/layout/call_log_list_item.xml
index 0fbbb9d..afb50ff 100644
--- a/java/com/android/dialer/app/res/layout/call_log_list_item.xml
+++ b/java/com/android/dialer/app/res/layout/call_log_list_item.xml
@@ -65,7 +65,7 @@
             android:layout_height="wrap_content"
             >
 
-          <QuickContactBadge
+          <com.android.dialer.app.calllog.DialerQuickContactBadge
               android:id="@+id/quick_contact_photo"
               android:layout_width="@dimen/contact_photo_size"
               android:layout_height="@dimen/contact_photo_size"
@@ -80,7 +80,7 @@
               android:layout_width="@dimen/contact_photo_size"
               android:layout_height="@dimen/contact_photo_size"
               android:visibility="gone"
-              android:src="@drawable/quantum_ic_check_circle_googblue_24" />
+              android:src="@drawable/ic_check_mark_48dp" />
 
         </FrameLayout>
 
diff --git a/java/com/android/dialer/app/res/layout/call_log_list_item_actions.xml b/java/com/android/dialer/app/res/layout/call_log_list_item_actions.xml
index d3a5531..5046383 100644
--- a/java/com/android/dialer/app/res/layout/call_log_list_item_actions.xml
+++ b/java/com/android/dialer/app/res/layout/call_log_list_item_actions.xml
@@ -50,7 +50,7 @@
       <TextView
         android:id="@+id/call_action_text"
         style="@style/CallLogActionTextStyle"
-        android:text="@string/description_call_log_call_action"/>
+        android:text="@string/call"/>
 
       <TextView
         android:id="@+id/call_type_or_location_text"
@@ -135,7 +135,7 @@
 
     <ImageView
       style="@style/CallLogActionIconStyle"
-      android:src="@drawable/ic_call_and_share"/>
+      android:src="@drawable/ic_phone_attach"/>
 
     <TextView
       style="@style/CallLogActionTextStyle"
diff --git a/java/com/android/dialer/app/res/layout/dialpad_fragment.xml b/java/com/android/dialer/app/res/layout/dialpad_fragment.xml
index dd6dab7..9b95e1f 100644
--- a/java/com/android/dialer/app/res/layout/dialpad_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/dialpad_fragment.xml
@@ -21,42 +21,42 @@
     android:orientation="horizontal">
 
   <LinearLayout
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:orientation="vertical">
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:orientation="vertical">
 
     <!-- spacer view -->
     <View
-      android:id="@+id/spacer"
-      android:layout_width="match_parent"
-      android:layout_height="0dp"
-      android:layout_weight="1"
-      android:background="#00000000"/>
+        android:id="@+id/spacer"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1"
+        android:background="#00000000"/>
     <!-- Dialpad shadow -->
     <View
-      android:layout_width="match_parent"
-      android:layout_height="@dimen/shadow_length"
-      android:background="@drawable/shadow_fade_up"/>
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/shadow_length"
+        android:background="@drawable/shadow_fade_up"/>
     <include layout="@layout/dialpad_view"/>
     <!-- "Dialpad chooser" UI, shown only when the user brings up the
              Dialer while a call is already in progress.
              When this UI is visible, the other Dialer elements
              (the textfield/button and the dialpad) are hidden. -->
     <ListView
-      android:id="@+id/dialpadChooser"
-      android:layout_width="match_parent"
-      android:layout_height="wrap_content"
-      android:background="@color/background_dialer_light"
-      android:visibility="gone"/>
+        android:id="@+id/dialpadChooser"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:background="@color/background_dialer_light"
+        android:visibility="gone"/>
 
   </LinearLayout>
 
   <!-- Margin bottom and alignParentBottom don't work well together, so use a Space instead. -->
   <Space
-    android:id="@+id/dialpad_floating_action_button_margin_bottom"
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/floating_action_button_margin_bottom"
-    android:layout_alignParentBottom="true"/>
+      android:id="@+id/dialpad_floating_action_button_margin_bottom"
+      android:layout_width="match_parent"
+      android:layout_height="@dimen/floating_action_button_margin_bottom"
+      android:layout_alignParentBottom="true"/>
 
   <android.support.design.widget.FloatingActionButton
       android:id="@+id/dialpad_floating_action_button"
@@ -64,8 +64,9 @@
       android:layout_height="@dimen/floating_action_button_height"
       android:layout_above="@id/dialpad_floating_action_button_margin_bottom"
       android:layout_centerHorizontal="true"
-      android:src="@drawable/quantum_ic_call_white_24"
       android:contentDescription="@string/description_dial_button"
-      app:elevation="@dimen/floating_action_button_translation_z"
-      app:backgroundTint="@color/dialpad_fab_green"/>
+      android:src="@drawable/quantum_ic_call_vd_theme_24"
+      app:backgroundTint="@color/dialpad_fab_green"
+      app:colorControlNormal="#ffffff"
+      app:elevation="@dimen/floating_action_button_translation_z"/>
 </view>
diff --git a/java/com/android/dialer/app/res/layout/empty_content_view.xml b/java/com/android/dialer/app/res/layout/empty_content_view.xml
deleted file mode 100644
index 96a6a02..0000000
--- a/java/com/android/dialer/app/res/layout/empty_content_view.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2015 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.
--->
-
-<merge xmlns:android="http://schemas.android.com/apk/res/android">
-  <ImageView
-    android:id="@+id/emptyListViewImage"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:gravity="center_horizontal"/>
-
-  <TextView
-    android:id="@+id/emptyListViewMessage"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:paddingTop="8dp"
-    android:paddingBottom="8dp"
-    android:paddingLeft="16dp"
-    android:paddingRight="16dp"
-    android:gravity="center_horizontal|top"
-    android:textColor="@color/empty_list_text_color"
-    android:textSize="@dimen/empty_list_message_text_size"/>
-
-  <TextView
-    android:id="@+id/emptyListViewAction"
-    style="@style/TextActionStyle"
-    android:layout_width="wrap_content"
-    android:layout_height="wrap_content"
-    android:layout_gravity="center_horizontal"
-    android:paddingTop="8dp"
-    android:paddingBottom="8dp"
-    android:paddingLeft="16dp"
-    android:paddingRight="16dp"
-    android:background="?android:attr/selectableItemBackground"
-    android:clickable="true"
-    android:gravity="center_horizontal"/>
-
-  <Space
-    android:layout_width="match_parent"
-    android:layout_height="40dp"/>
-
-</merge>
diff --git a/java/com/android/dialer/app/res/layout/empty_content_view_dialpad_search.xml b/java/com/android/dialer/app/res/layout/empty_content_view_dialpad_search.xml
index e245aac..1d20479 100644
--- a/java/com/android/dialer/app/res/layout/empty_content_view_dialpad_search.xml
+++ b/java/com/android/dialer/app/res/layout/empty_content_view_dialpad_search.xml
@@ -16,7 +16,7 @@
 
 <merge xmlns:android="http://schemas.android.com/apk/res/android">
   <ImageView
-    android:id="@+id/emptyListViewImage"
+    android:id="@+id/empty_list_view_image"
     android:layout_height="0dp"
     android:layout_weight="1"
     android:layout_width="match_parent"
@@ -24,7 +24,7 @@
     android:gravity="center_horizontal" />
 
   <TextView
-    android:id="@+id/emptyListViewMessage"
+    android:id="@+id/empty_list_view_message"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:gravity="center_horizontal|top"
@@ -36,7 +36,7 @@
     android:paddingBottom="8dp"/>
 
   <TextView
-    android:id="@+id/emptyListViewAction"
+    android:id="@+id/empty_list_view_action"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:gravity="center_horizontal"
diff --git a/java/com/android/dialer/app/res/layout/lists_fragment.xml b/java/com/android/dialer/app/res/layout/lists_fragment.xml
index 442b428..9596172 100644
--- a/java/com/android/dialer/app/res/layout/lists_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/lists_fragment.xml
@@ -15,41 +15,41 @@
 -->
 
 <FrameLayout
-  xmlns:android="http://schemas.android.com/apk/res/android"
-  android:id="@+id/lists_frame"
-  android:layout_width="match_parent"
-  android:layout_height="match_parent"
-  android:animateLayoutChanges="true">
-
-  <LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/lists_frame"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:orientation="vertical">
+    android:animateLayoutChanges="true">
+
+  <LinearLayout
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:orientation="vertical">
 
     <!-- TODO: Apply background color to ActionBar instead of a FrameLayout. For now, this is
          the easiest way to preserve correct pane scrolling and searchbar collapse/expand
          behaviors. -->
     <FrameLayout
-      android:layout_width="match_parent"
-      android:layout_height="@dimen/action_bar_height_large"
-      android:background="@color/actionbar_background_color"
-      android:elevation="@dimen/tab_elevation"/>
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/action_bar_height_large"
+        android:background="@color/actionbar_background_color"
+        android:elevation="@dimen/tab_elevation"/>
 
     <com.android.contacts.common.list.ViewPagerTabs
-      android:id="@+id/lists_pager_header"
-      style="@style/DialtactsActionBarTabTextStyle"
-      android:layout_width="match_parent"
-      android:layout_height="@dimen/tab_height"
-      android:layout_gravity="top"
-      android:elevation="@dimen/tab_elevation"
-      android:orientation="horizontal"
-      android:textAllCaps="true"/>
+        android:id="@+id/lists_pager_header"
+        style="@style/DialtactsActionBarTabTextStyle"
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/tab_height"
+        android:layout_gravity="top"
+        android:elevation="@dimen/tab_elevation"
+        android:orientation="horizontal"
+        android:textAllCaps="true"/>
 
-    <android.support.v4.view.ViewPager
-      android:id="@+id/lists_pager"
-      android:layout_width="match_parent"
-      android:layout_height="0dp"
-      android:layout_weight="1"/>
+    <com.android.dialer.app.list.DialerViewPager
+        android:id="@+id/lists_pager"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1"/>
 
   </LinearLayout>
 
@@ -58,38 +58,38 @@
        This is required since drag and drop event is only sent to views are visible when drag
        starts. -->
   <com.android.dialer.app.list.RemoveView
-    android:id="@+id/remove_view"
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/tab_height"
-    android:layout_marginTop="@dimen/action_bar_height_large"
-    android:contentDescription="@string/remove_contact"
-    android:importantForAccessibility="no">
+      android:id="@+id/remove_view"
+      android:layout_width="match_parent"
+      android:layout_height="@dimen/tab_height"
+      android:layout_marginTop="@dimen/action_bar_height_large"
+      android:contentDescription="@string/remove_contact"
+      android:importantForAccessibility="no">
 
     <LinearLayout
-      android:id="@+id/remove_view_content"
-      android:layout_width="match_parent"
-      android:layout_height="match_parent"
-      android:background="@color/actionbar_background_color"
-      android:gravity="center"
-      android:orientation="horizontal"
-      android:visibility="gone">
+        android:id="@+id/remove_view_content"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="@color/actionbar_background_color"
+        android:gravity="center"
+        android:orientation="horizontal"
+        android:visibility="gone">
 
       <ImageView
-        android:id="@+id/remove_view_icon"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_marginTop="8dp"
-        android:layout_marginBottom="8dp"
-        android:src="@drawable/ic_remove"
-        android:tint="@color/remove_text_color"/>
+          android:id="@+id/remove_view_icon"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginTop="8dp"
+          android:layout_marginBottom="8dp"
+          android:src="@drawable/ic_remove"
+          android:tint="@color/remove_text_color"/>
 
       <TextView
-        android:id="@+id/remove_view_text"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:text="@string/remove_contact"
-        android:textColor="@color/remove_text_color"
-        android:textSize="@dimen/remove_text_size"/>
+          android:id="@+id/remove_view_text"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:text="@string/remove_contact"
+          android:textColor="@color/remove_text_color"
+          android:textSize="@dimen/remove_text_size"/>
 
     </LinearLayout>
 
diff --git a/java/com/android/dialer/app/res/layout/search_edittext.xml b/java/com/android/dialer/app/res/layout/search_edittext.xml
index c02512d..bb6a5f7 100644
--- a/java/com/android/dialer/app/res/layout/search_edittext.xml
+++ b/java/com/android/dialer/app/res/layout/search_edittext.xml
@@ -29,7 +29,7 @@
       android:padding="@dimen/search_box_search_icon_padding"
       android:importantForAccessibility="no"
       android:scaleType="center"
-      android:src="@drawable/quantum_ic_search_white_24"
+      android:src="@drawable/quantum_ic_search_vd_theme_24"
       android:tint="@color/searchbox_icon_tint"/>
 
     <TextView
diff --git a/java/com/android/dialer/app/res/layout/speed_dial_fragment.xml b/java/com/android/dialer/app/res/layout/speed_dial_fragment.xml
index c778c6b..3fa3be2 100644
--- a/java/com/android/dialer/app/res/layout/speed_dial_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/speed_dial_fragment.xml
@@ -41,7 +41,7 @@
       android:numColumns="@integer/contact_tile_column_count_in_favorites"/>
   </FrameLayout>
 
-  <com.android.dialer.app.widget.EmptyContentView
+  <com.android.dialer.widget.EmptyContentView
     android:id="@+id/empty_list_view"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
diff --git a/java/com/android/dialer/app/res/menu/dialtacts_options.xml b/java/com/android/dialer/app/res/menu/dialtacts_options.xml
index 25a3e18..b50e6ad 100644
--- a/java/com/android/dialer/app/res/menu/dialtacts_options.xml
+++ b/java/com/android/dialer/app/res/menu/dialtacts_options.xml
@@ -28,5 +28,8 @@
   <item
     android:id="@+id/menu_simulator_submenu"
     android:title="@string/simulator_submenu_label"/>
+  <item
+      android:id="@+id/menu_new_ui_launcher_shortcut"
+      android:title="@string/new_ui_launcher_shortcut_label"/>
 
 </menu>
diff --git a/java/com/android/dialer/app/res/values-af/strings.xml b/java/com/android/dialer/app/res/values-af/strings.xml
index 2eb462b..c04e4e5 100644
--- a/java/com/android/dialer/app/res/values-af/strings.xml
+++ b/java/com/android/dialer/app/res/values-af/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Voeg wagtyd by"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Instellings"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Nabootser"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Skep nuwe UI-kortpad"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle kontakte"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Gebruik raak-nommerbord"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Keer terug na oproep wat besig is"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Voeg oproep by"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Inkomende oproepe"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Gaan tans grootmaathandelingmodus in"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Het grootmaathandelingmodus verlaat"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Het <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> gekies"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Het <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ontkies"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Speel stemboodskap"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Bekyk kontak <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Bel <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Stemboodskap"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"stemboodskap"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"stemboodskappe"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nee"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Kanselleer grootmaathandelingmodus"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Vee uit"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Kanselleer"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vee geselekteerde <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> uit?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> gekies"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vee hierdie stemboodskappe uit? "</b>"</item>
+      <item quantity="one">"<b>"Vee hierdie stemboodskap uit? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> om <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Laai tans van SIM-kaart af…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM-kaartkontakte"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Geen kontakte-program beskikbaar nie"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Stemsoektog is nie beskikbaar nie"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Kan nie \'n foonoproep maak nie want die Foon-program is gedeaktiveer."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Deursoek kontakte"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nuwe gemiste oproepe"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Daar is nog niemand op jou spoedbel nie"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Voeg \'n gunsteling by"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Jy het nog nie enige kontakte nie"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Voeg \'n kontak by"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Raak aan prent om al die nommers te sien of raak en hou om te herorganiseer"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Verwyder"</string>
+    <string name="select_all" msgid="408601760696146245">"Kies alles"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video-oproep"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Stuur \'n boodskap"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Oproepbesonderhede"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Geblokkeerde nommers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is reeds geblokkeer."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Oproeprekeninge"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Skakel aan"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Stel toestemmings"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Skakel die kontaktetoestemming aan om spoedbel te aktiveer."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Skakel die foontoestemming aan om jou oproeprekord te sien."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Skakel die kontaktetoestemming aan om jou kontakte te sien."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Skakel die foontoestemming aan om na jou stemboodskapdiens te gaan."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Skakel die Kontakte-toestemmings aan om jou kontakte te deursoek."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Skakel die foontoestemming aan om \'n oproep te maak."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Strooipos"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is vanlyn en kan nie bereik word nie"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Meer oor"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Bekyk"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Oproep geskrap. Bekyk en vee aanhegsels uit wat gedurende hierdie oproep in Boodskappe gedeel is."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Oproepe geskrap. Bekyk en vee aanhegsels uit wat gedurende oproepe in Boodskappe gedeel is."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-am/strings.xml b/java/com/android/dialer/app/res/values-am/strings.xml
index 8230301..2e4e111 100644
--- a/java/com/android/dialer/app/res/values-am/strings.xml
+++ b/java/com/android/dialer/app/res/values-am/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"መጠበቅ አክል"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ቅንብሮች"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"ማስመሰያ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"አዲስ የዩአይ አቋራጭ ፍጠር"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ሁሉም እውቅያዎች"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"የድምፅ ቁልፍ ሰሌዳን ንካ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"በመካሄድ ላይ ወዳለው ጥሪ ተመለስ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ጥሪ ያክሉ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ገቢ ጥሪዎች"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ወደ የጅምላ እርምጃ ሁነታ በመግባት ላይ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ከጅምላ እርምጃ ሁነታ ለቀው ወጥተዋል"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ተመርጧል"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> አልተመረጠም"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"የድምፅ መልዕክት አጫውት"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"ዕውቂያ <xliff:g id="NAME">%1$s</xliff:g> ዕይ"</string>
     <string name="description_call" msgid="1532402285334775372">"ጥሪ <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"የድምፅ መልዕክት"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ሰከንድ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> ደቂቃ <xliff:g id="SECONDS">%s</xliff:g> ሴከ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"የድምፅ መልዕክት"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"የድምፅ መልዕክቶች"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"አዎ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"አይ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"የጅምላ እርምጃ ሁነታ ይቅር"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ሰርዝ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ይቅር"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"የተመረጠው <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ይሰረዝ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ተመርጠዋል"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"እነዚህ የድምፅ መልዕክቶች ይሰረዙ? "</b>"</item>
+      <item quantity="other">"<b>"እነዚህ የድምፅ መልዕክቶች ይሰረዙ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g> ላይ"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"ከSIM ካርድ ላይ በመጫን ላይ..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"የSIM ካርድ ዕውቂያዎች"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ምንም የእውቂያዎች መተግበሪያ አይገኝም"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"የድምጽ ፍለጋ አይገኝም"</string>
     <string name="call_not_available" msgid="7850148370757361155">"የስልክ መተግበሪያው ስለተሰናከለ የስልክ ጥሪ ማድረግ አይቻልም።"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ዕውቅያዎችን ፈልግ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> አዲስ ያልተመለሱ ጥሪዎች"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"በፈጥኖ መደወያ ላይ ገና ማንም የለዎትም"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ተወዳጅ አክል"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ገና ምንም እውቂያዎች የሉዎትም"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ዕውቂያ አክል"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ሁሉንም ቁጥሮች ለማየት ምስል ይንኩ ወይም ዳግም ለመደርደር ነክተው ይያዙት"</string>
     <string name="remove_contact" msgid="2353580570488923668">"አስወግድ"</string>
+    <string name="select_all" msgid="408601760696146245">"ሁሉንም ምረጥ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"የቪዲዮ ጥሪ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"መልእክት ላክ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"የጥሪ ዝርዝሮች"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"የታገዱ ቁጥሮች"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ቀድሞውኑ ታግዷል።"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"የመደወያ መለያዎች"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"አብራ"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ፍቃዶችን አዋቅር"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ፈጥኖ መደወያን ለማንቃት የእውቂያዎች ፍቃዱን ያብሩ።"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"የጥሪ ምዝግብ ማስታወአሽዎን ለማየት የስልክ ፍቃዱን ያብሩ።"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"የእርስዎን እውቂያዎች ለማየት የእውቂያዎች ፍቃዱን ያብሩ።"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"የድምፅ መልዕክትዎን ለመድረስ የስልክ ፍቃዱን ያብሩ።"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"የእርስዎን እውቂያዎች ለመከታተል የእውቂያዎች ፍቃዶችን ያብሩ።"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ስልክ ለመደወል የስልክ ፍቃዱን ያብሩ።"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"አይፈለጌ መልዕክት"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ከመስመር ውጭ ነው እና ሊደረስበት አይችልም"</string>
     <string name="about_phone_label" msgid="582991354677973731">"ስለ"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"አሳይ"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"ጥሪ ተሰርዟል። በዚህ ጥሪ ወቅት በመልዕክቶች ውስጥ የተጋሩ አባሪዎችን ይመልከቱ እንዲሁም ይሰርዙ።"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"ጥሪ ተሰርዟል። በዚህ ጥሪ ወቅት በመልዕክቶች ውስጥ የተጋሩ አባሪዎችን ይመልከቱ እንዲሁም ይሰርዙ።"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ar/strings.xml b/java/com/android/dialer/app/res/values-ar/strings.xml
index e4dfb4d..22f141e 100644
--- a/java/com/android/dialer/app/res/values-ar/strings.xml
+++ b/java/com/android/dialer/app/res/values-ar/strings.xml
@@ -84,11 +84,16 @@
     <string name="add_wait" msgid="1177723010768282578">"إضافة انتظار"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"الإعدادات"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"المحاكي"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"إنشاء اختصار للواجهة الجديدة"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"جميع جهات الاتصال"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"استخدام لوحة مفاتيح نغمات باللمس"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"عودة إلى المكالمة الجارية"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"إضافة مكالمة"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"المكالمات الواردة"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"يتم الدخول إلى وضع الإجراء المجمَّع"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"تمت مغادرة وضع الإجراء المجمَّع"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"تم تحديد <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"تم إلغاء تحديد <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"تشغيل البريد الصوتي"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"عرض جهة الاتصال <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"الاتصال بـ <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -103,11 +108,19 @@
     <string name="voicemail" msgid="8899540969000957954">"البريد الصوتي"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ثانية"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> دقيقة <xliff:g id="SECONDS">%s</xliff:g> ثانية"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"البريد الصوتي"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"رسائل البريد الصوتي"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"نعم"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"لا"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"إلغاء وضع الإجراءات المجمَّع"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"حذف"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"إلغاء"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"حذف رسائل <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> المحددة؟"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"تم تحديد <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="zero">"<b>"حذف رسائل البريد الصوتي هذه؟ "</b>"</item>
+      <item quantity="two">"<b>"حذف رسالتي البريد الصوتي هاتين؟ "</b>"</item>
+      <item quantity="few">"<b>"حذف رسائل البريد الصوتي هذه؟ "</b>"</item>
+      <item quantity="many">"<b>"حذف رسائل البريد الصوتي هذه؟ "</b>"</item>
+      <item quantity="other">"<b>"حذف رسائل البريد الصوتي هذه؟ "</b>"</item>
+      <item quantity="one">"<b>"حذف رسالة البريد الصوتي هذه؟ "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> في <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -120,7 +133,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"‏جارٍ التحميل من شريحة SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"‏شريحة SIM وجهات الاتصال"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"لا يتوفر تطبيق لجهات الاتصال"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"البحث الصوتي غير متاح"</string>
     <string name="call_not_available" msgid="7850148370757361155">"يتعذر إجراء مكالمة هاتفية نظرًا لأنه تم تعطيل تطبيق الهاتف."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"البحث في جهات الاتصال"</string>
@@ -149,10 +161,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> من المكالمات الجديدة الفائتة"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"لم تتم إضافة أية جهة اتصال إلى قائمة الاتصال السريع حتى الآن"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"إضافة مفضلة"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ليست لديك أية جهات اتصال حتى الآن"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"إضافة جهة اتصال"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"المس الصورة للاطلاع على جميع الأرقام أو المس مع الاستمرار لإعادة الترتيب"</string>
     <string name="remove_contact" msgid="2353580570488923668">"إزالة"</string>
+    <string name="select_all" msgid="408601760696146245">"تحديد الكل"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"مكالمة فيديو"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"إرسال رسالة"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"تفاصيل المكالمة"</string>
@@ -221,11 +232,9 @@
     <string name="block_list" msgid="4701585783411870782">"الأرقام المحظورة"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"تم حظر <xliff:g id="NUMBER">%1$s</xliff:g>."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"حسابات الاتصال"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"تشغيل"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"تعيين الأذونات"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"لتمكين الاتصال السريع، شغِّل إذن جهات الاتصال."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"للاطلاع على سجل المكالمات، شغِّل إذن الهاتف."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"للاطلاع على جهات الاتصال، شغِّل إذن جهات الاتصال."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"للوصول إلى البريد الصوتي، شغِّل إذن الهاتف."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"للبحث عن جهات الاتصال، عليك تشغيل أذونات جهات الاتصال."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"لإجراء مكالمة، شغِّل إذن الهاتف."</string>
@@ -238,4 +247,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"تعليق غير مرغوب فيه"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> غير متصل ولا يمكن الوصول إليه"</string>
     <string name="about_phone_label" msgid="582991354677973731">"حول"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"عرض"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"‏تم حذف المكالمة. يمكنك عرض وحذف المرفقات التي تمت مشاركتها أثناء هذه المكالمة في Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"‏تم حذف المكالمة. يمكنك عرض وحذف المرفقات التي تمت مشاركتها أثناء إجراء المكالمات في Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-az/strings.xml b/java/com/android/dialer/app/res/values-az/strings.xml
index 62bc117..1441883 100644
--- a/java/com/android/dialer/app/res/values-az/strings.xml
+++ b/java/com/android/dialer/app/res/values-az/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Gözləmə əlavə edin"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ayarlar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Stimulyator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Yeni İİ Qısayolu yaradın"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Bütün kontaktlar"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Toxunma ton klaviaturasını istifadə edin"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Davam edən zəngə qayıdın"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Zəng əlavə edin"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Gələn zənglər"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Toplu əməliyyat rejiminə daxil olunur"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Toplu əməliyyat rejimi tərk edilir"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> seçildi"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> seçilmədi"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Səsli məktubu oxudun"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> adlı kontakta baxın"</string>
     <string name="description_call" msgid="1532402285334775372">"Zəng <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Səsli poçt"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> san"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> dəq <xliff:g id="SECONDS">%s</xliff:g> san"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"səsli e-məktub"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"səsli e-məktublar"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Bəli"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Xeyr"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Qrup əməliyyatları rejimini ləğv edin"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Silin"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Ləğv edin"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Seçilmiş <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> silinsin?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> seçilib"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Bu səsli e-məktub silinsin? "</b>"</item>
+      <item quantity="one">"<b>"Bu səsli e-məktub silinsin? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> tarixində <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM kartdan yüklənir..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM kart kontaktları"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Əlaqələr proqramı mövcud deyil"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Səsli axtarış mövcud deyil"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefon tətbiqi deaktiv edildiyinə görə telefon zəngi etmək mümkün deyil."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Kontakt axtarın"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> yeni buraxılmış zəng"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Hələ sürətli zəng siyahınızda hec kim yoxdur"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Sevimlilərə əlavə edin"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Hələ heç bir kontaktınız yoxdur"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Kontakt əlavə edin"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Bütün nömrələri görmək üçün təsvirə toxunun və ya yenidən qaydaya salmaq üçün basıb saxlayın"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Yığışdır"</string>
+    <string name="select_all" msgid="408601760696146245">"Hamısını seçin"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video zəng"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Mesaj göndərin"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Zəng detalları"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Bloklanmış nömrələr"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> artıq bloklanıb."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Hesabların çağrılması"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktiv edin"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"İcazələri quraşdırın"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Sürətli yığımı aktivləşdirmək üçün, Kontakt icazələrini aktivləşdirin."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Çağrı jurnalınızı görmək üçün Telefon icazəsini aktivləşdirin."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kontaktlarınızı görmək üçün Kontakt icazəsini aktivləşdirin."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Səsli poçta daxil olmaq üçün, Telefon icazəsini aktivləşdirin."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kontaktlarınızı axtarmaq üçün, Kontakt icazələrini aktiv edin."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Zəng etmək üçün, Telefon icazəsini aktivləşdirin."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> oflayn olduğu üçün əlaqə saxlamaq mümkün deyil"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Haqqında"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Baxın"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Zəng silindi. Bu zəng zamanı paylaşılan qoşmalara Mesajlaşma tətbiqində baxın və silin."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Zənglər silindi. Bu zənglər zamanı paylaşılan qoşmalara Mesajlaşma tətbiqində baxın və silin."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/app/res/values-b+sr+Latn/strings.xml
index 9df7291..3ed8c6b 100644
--- a/java/com/android/dialer/app/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/app/res/values-b+sr+Latn/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj čekanje"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Podešavanja"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Napravite prečicu za novi UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Svi kontakti"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Upotrebite brojčanik za tonsko biranje"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Vrati se na poziv koji je u toku"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj poziv"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Dolazni pozivi"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Ulazite u režim grupnih radnji"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Izašli ste iz režima grupnih radnji"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Izabrano je <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Opozvan je izbor <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Puštanje govorne pošte"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Prikaži kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Pozovi <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Govorna pošta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sek"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"govornu poruku"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"govorne poruke"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Otkažite režim grupnih radnji"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Izbriši"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Otkaži"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Želite li da izbrišete izabranu(e) <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Izabranih: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Želite li da izbrišete ove govorne poruke? "</b>"</item>
+      <item quantity="few">"<b>"Želite li da izbrišete ove govorne poruke? "</b>"</item>
+      <item quantity="other">"<b>"Želite li da izbrišete ove govorne poruke? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> u <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Učitava se sa SIM kartice…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakti na SIM kartici"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nema dostupne aplikacije za kontakte"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Glasovna pretraga nije dostupna"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nije moguće uputiti telefonski poziv jer je aplikacija Telefon onemogućena."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pretraži kontakte"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Novih propuštenih poziva: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Nemate nijedan kontakt na brzom biranju"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodaj omiljen kontakt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Još uvek nemate nijedan kontakt"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodaj kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Dodirnite sliku da biste videli sve brojeve ili dodirnite i zadržite da biste im promenili raspored"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ukloni"</string>
+    <string name="select_all" msgid="408601760696146245">"Izaberi sve"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video poziv"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Pošalji poruku"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalji poziva"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokirani brojevi"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> je već blokiran."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Nalozi za pozivanje"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Uključi"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Podesi dozvole"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Da biste omogućili brzo biranje, uključite dozvolu za Kontakte."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Da biste videli evidenciju poziva, uključite dozvolu za Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Da biste videli kontakte, uključite dozvolu za Kontakte."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Da biste pristupili govornoj pošti, uključite dozvolu za Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Da biste pretražili kontakte, uključite dozvole za Kontakte."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Da biste uputili poziv, uključite dozvolu za Telefon."</string>
@@ -232,4 +238,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Nepoželjan"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> je oflajn i ne možete da ga/je kontaktirate"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Osnovni podaci"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Prikaži"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Poziv je izbrisan. Pregledajte i izbrišite priloge deljene tokom ovog poziva u Messages-u."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Pozivi su izbrisani. Pregledajte i izbrišite priloge deljene tokom poziva u Messages-u."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-be/strings.xml b/java/com/android/dialer/app/res/values-be/strings.xml
index aac3df2..18d26ef 100644
--- a/java/com/android/dialer/app/res/values-be/strings.xml
+++ b/java/com/android/dialer/app/res/values-be/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Дадаць чаканне"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Налады"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Сродак мадэліравання"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Ярлык новага карыст. інтэрфейсу"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Усе кантакты"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Выкарыстанне тонавай клавіятуры"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Звярнуцца да бягучага выкліку"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Дадаць выклік"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Уваходныя выклікі"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Уваход у рэжым групавога дзеяння"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Выхад з рэжыму групавога дзеяння"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Выбрана: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Выбар скасаваны: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Прайграць паведамленне галасавой пошты"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Прагледзець кантакт <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Выклікаць карыстальнiка <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Галасавая пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> с"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> хв <xliff:g id="SECONDS">%s</xliff:g> с"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"галасавая пошта"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"галасавая пошта"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Так"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Не"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Скасаваць рэжым пакетных дзеянняў"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Выдаліць"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Скасаваць"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Выдаліць вылучанае: <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Выбрана: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Выдаліць гэтыя паведамленні галасавой пошты? "</b>"</item>
+      <item quantity="few">"<b>"Выдаліць гэтыя паведамленні галасавой пошты? "</b>"</item>
+      <item quantity="many">"<b>"Выдаліць гэтыя паведамленні галасавой пошты? "</b>"</item>
+      <item quantity="other">"<b>"Выдаліць гэтыя паведамленні галасавой пошты? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> у <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Загрузка з SIM-карты..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Кантакты SIM-карты"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Праграмы для аперацый з кантактамі няма"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Галасавы пошук недаступны"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Немагчыма зрабіць выклік па тэлефоне, таму што праграма Тэлефон была адключана."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Пошук кантактаў"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Новых прапушчаных выклікаў: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"У вас пакуль нікога няма на хуткім наборы"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Дадаць улюбёны"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"У вас пакуль няма ніякіх кантактаў"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Дадаць кантакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Дакраніцеся да відарыса, каб прагледзець усе нумары, або дакраніцеся і ўтрымлівайце, каб змяніць парадак"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Выдаліць"</string>
+    <string name="select_all" msgid="408601760696146245">"Выбраць усё"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Відэавыклік"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Адправiць паведамленне"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Падрабязнасці выкліку"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Заблакіраваныя нумары"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ужо заблакіраваны."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Уліковыя запісы для выклікаў"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Уключыць"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Задаць дазволы"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Каб уключыць хуткі набор, уключыце дазвол для Кантактаў."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Каб прагледзець свой журнал выклікаў, уключыце дазволы Тэлефона."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Каб бачыць свае кантакты, уключыце дазвол для Кантактаў."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Каб атрымаць доступ да галасавой пошты, уключыце дазвол для Тэлефона."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Каб шукаць свае кантакты, уключыце дазвол для Кантактаў."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Каб зрабіць выклік, уключыце дазвол для Тэлефона."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Карыстальнік <xliff:g id="NAME">%1$s</xliff:g> па-за сеткай і не даступны"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Інфармацыя"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Праглядзець"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Выклік выдалены. У \"Паведамленнях\" праглядзіце і выдаліце далучэнні, якія былі абагулены падчас гэтага выкліку."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Выклікі выдалены. У \"Паведамленнях\" праглядзіце і выдаліце далучэнні, якія былі абагулены падчас гэтых выклікаў."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-bg/strings.xml b/java/com/android/dialer/app/res/values-bg/strings.xml
index 7bab71f..8385eda 100644
--- a/java/com/android/dialer/app/res/values-bg/strings.xml
+++ b/java/com/android/dialer/app/res/values-bg/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Добавяне на изчакване"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Настройки"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулатор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Пряк път към новия ПИ"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Всички контакти"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Използване на тонова клавиатура"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Назад към текущото обаждане"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Добавяне на обаждане"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Вх. обаждания"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Влизате в режима на групови действия"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Излязохте от режима на групови действия"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Избрахте <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Премахнахте избора от <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Пускане на гласовата поща"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Преглед на контактa <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Обаждане на <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Гласова поща"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин <xliff:g id="SECONDS">%s</xliff:g> сек"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"гласово съобщение"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"гласови съобщения"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Да"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Не"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Анулиране на режима на групови действия"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Изтриване"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Отказ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Избрахте <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> – да се изтрие ли избраното?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Избрахте <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Да се изтрият ли тези гласови съобщения? "</b>"</item>
+      <item quantity="one">"<b>"Да се изтрие ли това гласово съобщение? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> в <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Зарежда се от SIM карта..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакти от SIM карта"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Няма налично приложение за контакти"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Гласовото търсене не е налице"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Не може да се осъществи телефонно обаждане, защото приложението Телефон е деактивирано."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Търсене в контактите"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> нови пропуснати обаждания"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Още нямате контакти за бързо набиране"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Добавяне на любим контакт"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Още нямате контакти"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Добавяне на контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Докоснете изображението, за да видите всички номера, или го натиснете и задръжте за пренареждане"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Премахване"</string>
+    <string name="select_all" msgid="408601760696146245">"Избиране на всички"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видеообаждане"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Изпращане на съобщение"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Подробности за обаждането"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Блокирани номера"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Номер <xliff:g id="NUMBER">%1$s</xliff:g> вече е блокиран."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Профили за обаждане"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Включване"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Задаване на разрешенията"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"За да активирате бързото набиране, включете разрешението за Контакти."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"За да видите списъка с обажданията си, включете разрешението за Телефон."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"За да видите контактите си, включете разрешението за Контакти."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"За да осъществите достъп до гласовата си поща, включете разрешението за Телефон."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"За да търсите в контактите си, включете разрешенията за тях."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"За да извършите обаждане, включете разрешението за Телефон."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"С <xliff:g id="NAME">%1$s</xliff:g> не може да се установи връзка, тъй като е офлайн"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Информация"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Преглед"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Обаждането е изтрито. Прегледайте и изтрийте прикачените файлове, споделени по време на това обаждане в Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Обажданията са изтрити. Прегледайте и изтрийте прикачените файлове, споделени по време на обажданията в Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-bn/strings.xml b/java/com/android/dialer/app/res/values-bn/strings.xml
index 271247b..2e46e73 100644
--- a/java/com/android/dialer/app/res/values-bn/strings.xml
+++ b/java/com/android/dialer/app/res/values-bn/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"অপেক্ষা যোগ করুন"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"সেটিংস"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"সিমুলেটার"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"নতুন UI শর্টকাট তৈরি করুন"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"সকল পরিচিতি"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"স্পর্শ স্বর কীপ্যাড ব্যবহার করুন"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"প্রগতিতে থাকা কলে প্রত্যাবর্তন"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"কল যোগ করুন"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ইনকামিং কলগুলি"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"বাল্ক অ্যাকশন মোডে প্রবেশ করা হচ্ছে"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"বাল্ক অ্যাকশন মোড ত্যাগ করুন"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> নির্বাচন করা হয়েছে"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> অনির্বাচন করা হয়েছে"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ভয়েসমেল প্লে করুন"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> পরিচিতি দেখুন"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> কে কল করুন"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ভয়েসমেল"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> সেকেন্ড"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> মিনিট <xliff:g id="SECONDS">%s</xliff:g> সেকেন্ড"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ভয়েসমেল"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ভয়েসমেলগুলি"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"হ্যাঁ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"না"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ব্যাচ অ্যাকশন মোড বাতিল করুন"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"মুছুন"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"বাতিল করুন"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"নির্বাচিত <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> মুছে ফেলতে চান?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g>টি নির্বাচিত"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"এই ভয়েসমেলগুলি মুছবেন? "</b>"</item>
+      <item quantity="other">"<b>"এই ভয়েসমেলগুলি মুছবেন? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> তারিখে <xliff:g id="TIME">%2$s</xliff:g>\'টায়"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"সিম কার্ড থেকে লোড করা হচ্ছে…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"সিম কার্ডের পরিচিতিগুলি"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"কোনো পরিচিতি অ্যাপ্লিকেশান উপলব্ধ নয়"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ভয়েস অনুসন্ধান অনুপলব্ধ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"কোনো ফোন কল করা যাবে না কারণ ফোন অ্যাপ্লিকেশানটি অক্ষম করা হয়েছে৷"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"পরিচিতিগুলি খুঁজুন"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g>টি নতুন মিসড কল"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"আপনার স্পীড ডায়ালে এখনও পর্যন্ত কেউ নেই"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"একটি পছন্দসই যোগ করুন"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"আপনার এখনও পর্যন্ত কোনো পরিচিতি নেই"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"একটি পরিচিতি যোগ করুন"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"সমস্ত নম্বর দেখতে ছবিতে স্পর্শ করুন বা রেকর্ড করতে স্পর্শ করে ধরে রাখুন"</string>
     <string name="remove_contact" msgid="2353580570488923668">"সরান"</string>
+    <string name="select_all" msgid="408601760696146245">"সবগুলি নির্বাচন করুন"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ভিডিও কল"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"একটি বার্তা পাঠান"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"কলের বিশদ বিবরণ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ব্লক করা নাম্বারগুলি"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ইতিমধ্যেই অববোধ করা রয়েছে৷"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"কলিং অ্যাকাউন্টগুলি"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"চালু করুন"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"অনুমতিগুলি সেট করুন"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"স্পীড ডায়াল সক্ষম করতে, পরিচিতিগুলির অনুমতি চালু করুন।"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"আপনার কল লগ দেখতে, ফোনের অনুমতি চালু করুন।"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"আপনার পরিচিতিগুলি দেখতে, পরিচিতিগুলির অনুমতি চালু করুন।"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"আপনার ভয়েসমেল অ্যাক্সেস করতে, ফোনের অনুমতি চালু করুন।"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"আপনার পরিচিতিগুলি অনুসন্ধান করতে, পরিচিতির অনুমতিগুলি চালু করুন।"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"একটি কল করতে, ফোনের অনুমতি চালু করুন।"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"স্প্যাম"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> এখন অফলাইনে থাকায় যোগাযোগ করা যাবে না"</string>
     <string name="about_phone_label" msgid="582991354677973731">"সম্পর্কে"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"দেখুন"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"কল মোছা হয়েছে। বার্তার মধ্যে কলের সময় শেয়ার করা সংযুক্তি দেখুন ও মুছুন।"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"কলগুলি মোছা হয়েছে। বার্তার মধ্যে কলের সময় শেয়ার করা সংযুক্তিগুলি দেখুন ও মুছুন।"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-bs/strings.xml b/java/com/android/dialer/app/res/values-bs/strings.xml
index 92c9c14..9d8914c 100644
--- a/java/com/android/dialer/app/res/values-bs/strings.xml
+++ b/java/com/android/dialer/app/res/values-bs/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj čekanje"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Postavke"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Kreiraj prečicu za novi UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Svi kontakti"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Koristi tastaturu za tonsko biranje"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Povratak na poziv u toku"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj poziv"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Dolazni pozivi"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Ulazak u način rada za skupnu radnju"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Napuštanje načina rada za skupnu radnju"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Odabrano <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Poništen odabir <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Pokretanje govorne pošte"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Prikaži kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Pozovi kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Govorna pošta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"poruka govorne pošte"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"poruke govorne pošte"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Otkaži način rada za grupnu radnju"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Izbriši"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Otkaži"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Izbrisati izabranu/e <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Odabrano <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Izbrisati ove govorne poruke? "</b>"</item>
+      <item quantity="few">"<b>"Izbrisati ove govorne poruke? "</b>"</item>
+      <item quantity="other">"<b>"Izbrisati ove govorne poruke? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> u <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Učitavanje sa SIM kartice…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakti sa SIM kartice"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nije dostupna nijedna aplikacija za kontakte"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Glasovna pretraga nije dostupna"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nije moguće uputiti poziv jer je aplikacija Telefon onemogućena."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Traži kontakte"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Broj novih propuštenih poziva: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Nemate nikog na brzom biranju"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodaj u favorite"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Još nemate nijedan kontakt"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodaj kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Dodirnite sliku da vidite sve brojeve ili dodirnite i držite da promijenite raspored."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ukloni"</string>
+    <string name="select_all" msgid="408601760696146245">"Izaberi sve"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videopoziv"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Pošalji poruku"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalji o pozivu"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokirani brojevi"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> je već blokiran."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Računi za pozivanje"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Uključi"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Postavi dozvole"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Da omogućite brzo biranje, uključite dozvolu za Kontakte."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Da vidite popis poziva, uključite dozvolu za Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Da vidite kontakte, uključite dozvolu za Kontakte."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Da pristupite govornoj pošti,uključite dozvolu za telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Da pretražujete kontakte, uključite dozvole za Kontakte."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Da uputite poziv, uključite dozvolu za Telefon."</string>
@@ -232,4 +238,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Neželjena pošta"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Osoba <xliff:g id="NAME">%1$s</xliff:g> je van mreže i ne možete je kontaktirati"</string>
     <string name="about_phone_label" msgid="582991354677973731">"O aplikaciji"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Prikaži"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Poziv je izbrisan. Pogledajte i izbrišite priloge podijeljene tokom ovog poziva u aplikaciji Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Pozivi su izbrisani. Pogledajte i izbrišite priloge podijeljene tokom poziva u aplikaciji Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ca/strings.xml b/java/com/android/dialer/app/res/values-ca/strings.xml
index fa04dd9..396d98a 100644
--- a/java/com/android/dialer/app/res/values-ca/strings.xml
+++ b/java/com/android/dialer/app/res/values-ca/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Afegeix espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configuració"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crea drecera per a la nova IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tots els contactes"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Utilitza el teclat de tons"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Torna a la trucada en curs"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Afegeix una trucada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Trucades entrants"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"S\'està accedint al mode d\'acció massiva"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"S\'ha sortit del mode d\'acció massiva"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"S\'ha seleccionat <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"S\'ha desseleccionat <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reprodueix el missatge de veu"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visualitza el contacte <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Truca a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,26 +104,29 @@
     <string name="voicemail" msgid="8899540969000957954">"Bústia de veu"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"missatge de veu"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"missatges de veu"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sí"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancel·la el mode d\'accions en lot"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Suprimeix"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancel·la"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vols suprimir l\'element o elements seleccionats (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> seleccionades"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vols suprimir aquests missatges de veu? "</b>"</item>
+      <item quantity="one">"<b>"Vols suprimir aquest missatge de veu? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> a les <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
     <string name="voicemailCallLogDateTimeFormatWithDuration" msgid="7224408726047155205">"<xliff:g id="DATEANDTIME">%1$s</xliff:g> • <xliff:g id="DURATION">%2$s</xliff:g>"</string>
     <string name="dialog_phone_call_prohibited_message" msgid="6317935773274628316">"No es pot trucar a aquest número."</string>
-    <string name="dialog_voicemail_not_ready_message" msgid="6437173108290752604">"Per configurar els missatges de veu, vés a Menú &gt; Configuració."</string>
+    <string name="dialog_voicemail_not_ready_message" msgid="6437173108290752604">"Per configurar els missatges de veu, ves a Menú &gt; Configuració."</string>
     <string name="dialog_voicemail_airplane_mode_message" msgid="1044988101597862159">"Per trucar a la bústia de veu, primer has de desactivar el mode d\'avió."</string>
     <string name="contact_list_loading" msgid="7919825236309749352">"S\'està carregant…"</string>
     <string name="imei" msgid="5214505934662768308">"IMEI"</string>
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"S\'està carregant des de la targeta SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactes de la targeta SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No hi ha cap contacte disponible."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"La cerca per veu no està disponible."</string>
-    <string name="call_not_available" msgid="7850148370757361155">"No es pot fer una trucada telefònica perquè s\'ha desactivat l\'aplicació de telèfon."</string>
+    <string name="call_not_available" msgid="7850148370757361155">"No es pot fer una trucada perquè s\'ha desactivat l\'aplicació de telèfon."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Cerca als contactes"</string>
     <string name="block_number_search_hint" msgid="5377706079015099416">"Afegeix núm. o cerca contactes"</string>
     <string name="call_log_all_empty" msgid="3955572868518162004">"El teu historial de trucades és buit"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> trucades perdudes noves"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Encara no tens cap contacte al marcatge ràpid"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Afegeix un preferit"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Encara no tens cap contacte"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Afegeix un contacte"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toca la imatge per veure\'n tots els números o bé mantén-la premuda per canviar-ne l\'ordre"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Suprimeix"</string>
+    <string name="select_all" msgid="408601760696146245">"Selecciona-ho tot"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videotrucada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Envia un missatge"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalls de la trucada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloquejats"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ja està bloquejat."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Comptes de trucades"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activa"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Defineix els permisos"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Activa el permís Contactes per activar el marcatge ràpid."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Activa el permís Telèfon per veure el teu registre de trucades."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Activa el permís Contactes per veure els teus contactes."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Activa el permís Telèfon per accedir a la bústia de veu."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Per cercar els teus contactes, activa els permisos de Contactes."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Activa el permís Telèfon per fer una trucada."</string>
@@ -227,7 +232,10 @@
     <string name="call_log_action_block_number" msgid="5048188386501998865">"Bloqueja el número"</string>
     <string name="call_log_action_remove_spam" msgid="2045319806318398403">"No és una trucada brossa"</string>
     <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloqueja el número"</string>
-    <string name="spam_number_call_log_label" msgid="2678431398326811131">"Contingut brossa"</string>
+    <string name="spam_number_call_log_label" msgid="2678431398326811131">"Trucada brossa"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> no té connexió i no s\'hi pot contactar"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Informació"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Mostra"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"S\'ha suprimit la trucada. Consulta i suprimeix els fitxers adjunts compartits durant aquesta trucada a Missatges."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"S\'han suprimit les trucades. Consulta i suprimeix els fitxers adjunts compartits durant les trucades a Missatges."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-cs/strings.xml b/java/com/android/dialer/app/res/values-cs/strings.xml
index 5a3e429..42219e5 100644
--- a/java/com/android/dialer/app/res/values-cs/strings.xml
+++ b/java/com/android/dialer/app/res/values-cs/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Přidat čekání"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Nastavení"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulátor"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Vytv. zkratku na nové rozhraní"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Všechny kontakty"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Použít dotykovou tónovou klávesnici"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Návrat k probíhajícímu hovoru"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Přidat hovor"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Příchozí volání"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Vstupování do režimu hromadných akcí"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Opustili jste režim hromadných akcí"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Položka <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> je vybrána"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Položka <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> není vybrána"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Přehrát hlasovou schránku"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Zobrazit kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Volat kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Hlasová schránka"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"vybranou hlasovou zprávu"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"vybrané hlasové zprávy"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ano"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Zrušit režim hromadných akcí"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Smazat"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Zrušit"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Smazat <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Vybráno: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="few">"<b>"Smazat tyto hlasové zprávy? "</b>"</item>
+      <item quantity="many">"<b>"Smazat tyto hlasové zprávy? "</b>"</item>
+      <item quantity="other">"<b>"Smazat tyto hlasové zprávy? "</b>"</item>
+      <item quantity="one">"<b>"Smazat tuto hlasovou zprávu? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> v <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Načítání ze SIM karty..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakty na SIM kartě"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Není k dispozici žádná aplikace pro práci s kontakty."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Hlasové vyhledávání není k dispozici."</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefonický hovor nelze uskutečnit, protože aplikace Telefon byla zakázána."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Vyhledat kontakty"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Nové zmeškané hovory: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"V rychlém vytáčení zatím nemáte žádný kontakt."</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Přidat oblíbený kontakt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Zatím nemáte žádné kontakty"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Přidat kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Klepnutím na obrázek zobrazíte všechna čísla. Podržením můžete změnit pořadí."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Odstranit"</string>
+    <string name="select_all" msgid="408601760696146245">"Vybrat všechny"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videohovor"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Odeslat zprávu"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Podrobnosti hovoru"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokovaná čísla"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Číslo <xliff:g id="NUMBER">%1$s</xliff:g> je již blokováno."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Účty pro volání"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Zapnout"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Nastavit oprávnění"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Chcete-li povolit rychlé vytáčení, aktivujte oprávnění Kontakty."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Chcete-li zobrazit seznam hovorů, aktivujte oprávnění Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Chcete-li zobrazit kontakty, aktivujte oprávnění Kontakty."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Chcete-li přejít do hlasové schránky, aktivujte oprávnění Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Chcete-li vyhledat kontakty, zapněte oprávnění Kontakty."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Chcete-li uskutečnit hovor, aktivujte oprávnění Telefon."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Uživatel <xliff:g id="NAME">%1$s</xliff:g> je offline a není možné se s ním spojit"</string>
     <string name="about_phone_label" msgid="582991354677973731">"O aplikaci"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Zobrazit"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Hovor byl smazán. Přílohy sdílené během něj můžete zobrazit a smazat v aplikaci Zprávy."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Hovory byly smazány. Přílohy sdílené během nich můžete zobrazit a smazat v aplikaci Zprávy."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-da/strings.xml b/java/com/android/dialer/app/res/values-da/strings.xml
index 42aa663..81fd5dd 100644
--- a/java/com/android/dialer/app/res/values-da/strings.xml
+++ b/java/com/android/dialer/app/res/values-da/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Tilføj ventetid"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Indstillinger"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Opret ny brugerfladegenvej"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle kontakter"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Brug numerisk tastatur"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Vend tilbage til igangværende opkald"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Tilføj opkald"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Indgående opkald"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Massehandlingstilstanden startes"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Massehandlingstilstanden blev afsluttet"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Vælg <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Fravalgt <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Afspil telefonsvarerbesked"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Vis kontaktpersonen <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ring til <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Telefonsvarer"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"talebesked"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"talebeskeder"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nej"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Annuller massehandlingstilstand"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Slet"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annuller"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vil du slette de valgte <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> er valgt"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Vil du slette denne talebesked? "</b>"</item>
+      <item quantity="other">"<b>"Vil du slette disse talebeskeder? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Indlæser fra SIM-kort ..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakter på SIM-kort"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Der er ingen app til kontaktpersoner"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Talesøgning er ikke tilgængelig"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Det er ikke muligt at foretage et telefonopkald, fordi applikationen Telefon er deaktiveret."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Søg i kontakter"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nye ubesvarede opkald"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Der er endnu ingen kontaktpersoner i Hurtigopkald"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Angiv en kontaktperson som foretrukken"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du har endnu ikke nogen kontaktpersoner"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Tilføj en kontaktperson"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tryk på billedet for at se alle numre, eller tryk og hold nede på billedet for at omarrangere"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Fjern"</string>
+    <string name="select_all" msgid="408601760696146245">"Vælg alt"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoopkald"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send en sms-besked"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Opkaldsinfo"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokerede telefonnumre"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> er allerede blokeret."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Opkaldskonti"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktivér"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Angiv tilladelser"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Slå tilladelsen Kontaktpersoner til for at aktivere hurtigopkald."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Slå tilladelsen Telefon til for at se din opkaldsliste."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Slå tilladelsen Kontaktpersoner til for at se dine kontaktpersoner."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Slå tilladelsen Telefon til for at få adgang til din telefonsvarer,"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Hvis du vil søge i dine kontaktpersoner, skal du slå tilladelserne Kontaktpersoner til."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Slå tilladelsen Telefon til for at foretage et opkald."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> er offline og kan ikke nås"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Om"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Vis"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Opkaldet er slettet. Du kan se og slette vedhæftede filer, der er delt i forbindelse med dette opkald, i Beskeder."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Opkaldene er slettet. Du kan se og slette vedhæftede filer, der er delt i forbindelse med opkald, i Beskeder."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-de/strings.xml b/java/com/android/dialer/app/res/values-de/strings.xml
index 5653e0f..07fe313 100644
--- a/java/com/android/dialer/app/res/values-de/strings.xml
+++ b/java/com/android/dialer/app/res/values-de/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Warten hinzufügen"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Einstellungen"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Verknüpfung für neue Benutzeroberfläche erstellen"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle Kontakte"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Telefontastatur verwenden"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Zurück zum aktuellen Anruf"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Anruf hinzufügen"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Eingehende Anrufe"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Es wird in den Modus für Bulk-Aktionen gewechselt"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Der Modus für Bulk-Aktionen wurde verlassen"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ausgewählt"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Auswahl für <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> aufgehoben"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Mailbox abhören"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Kontakt <xliff:g id="NAME">%1$s</xliff:g> anzeigen"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> anrufen"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Mailbox"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"Mailboxnachricht"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"Mailboxnachrichten"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nein"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Modus für Batch-Aktionen abbrechen"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Löschen"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Abbrechen"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Ausgewählte <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> löschen?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ausgewählt"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Diese Mailboxnachrichten löschen? "</b>"</item>
+      <item quantity="one">"<b>"Diese Mailboxnachricht löschen? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> um <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Ladevorgang von SIM-Karte läuft..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakte auf SIM-Karte"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Keine Kontakte-App verfügbar"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Sprachsuche nicht verfügbar"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Es kann kein Anruf getätigt werden, da die App \"Telefon\" deaktiviert wurde."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"In Kontakten suchen"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> neue entgangene Anrufe"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Du hast für noch niemanden eine Kurzwahl festgelegt"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Favoriten hinzufügen"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du hast noch keine Kontakte."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Kontakt hinzufügen"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tippe auf das Bild, um alle Nummern zu sehen, oder halte das Bild länger gedrückt, um sie neu anzuordnen"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Entfernen"</string>
+    <string name="select_all" msgid="408601760696146245">"Alle auswählen"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoanruf"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"SMS senden"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Anrufdetails"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blockierte Nummern"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ist bereits blockiert."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Anrufkonten"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktivieren"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Berechtigungen festlegen"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Aktiviere die Berechtigung \"Kontakte\", um die Kurzwahlfunktion zu verwenden."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Aktiviere die Berechtigung \"Telefon\", um dein Anrufprotokoll abzurufen."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Aktiviere die Berechtigung \"Kontakte\", um deine Kontakte abzurufen."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Aktiviere die Berechtigung \"Telefon\", um auf deine Mailbox zuzugreifen."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Aktiviere die Berechtigungen \"Kontakte\", um deine Kontakte zu suchen."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Aktiviere die Berechtigung \"Telefon\", um einen Anruf zu tätigen."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ist offline und nicht erreichbar"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Info"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ansehen"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Anruf gelöscht. Du kannst in diesem Anruf geteilte Anhänge unter \"Nachrichten\" ansehen und löschen."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Anrufe gelöscht. Du kannst in diesen Anrufen geteilte Anhänge unter \"Nachrichten\" ansehen und löschen."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-el/strings.xml b/java/com/android/dialer/app/res/values-el/strings.xml
index 847f60a..933a2c8 100644
--- a/java/com/android/dialer/app/res/values-el/strings.xml
+++ b/java/com/android/dialer/app/res/values-el/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Προσθήκη αναμονής"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ρυθμίσεις"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Προσομοιωτής"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Δημ. νέας συντόμ. διεπαφής"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Όλες οι επαφές"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Χρησιμοποιήστε το πληκτρολόγιο αφής ηχητικών τόνων"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Επιστροφή στην κλήση που βρίσκεται σε εξέλιξη"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Προσθήκη κλήσης"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Εισερχόμενες κλήσεις"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Εισαγωγή στη λειτουργία μαζικών ενεργειών"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Αποχώρηση από τη λειτουργία μαζικών ενεργειών"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Έγινε επιλογή <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Καταργήθηκε η επιλογή <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Αναπαραγωγή μηνύματος αυτόματου τηλεφωνητή"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Προβολή επαφής <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Κλήση <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Αυτόματος τηλεφωνητής"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> δευτερόλεπτα"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> λεπτά <xliff:g id="SECONDS">%s</xliff:g> δευτερόλεπτα"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"φωνητικού μηνύματος αυτόματου τηλεφωνητή"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"φωνητικών μηνυμάτων αυτόματου τηλεφωνητή"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ναι"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Όχι"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Ακύρωση λειτουργίας μαζικών ενεργειών"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Διαγραφή"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Ακύρωση"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Διαγραφή επιλεγμ. <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>;"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Έχουν επιλεγεί <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Διαγραφή αυτών των μηνυμάτων αυτόματου τηλεφωνητή; "</b>"</item>
+      <item quantity="one">"<b>"Διαγραφή αυτού του μηνύματος αυτόματου τηλεφωνητή; "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> στις <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Φόρτωση από κάρτα SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Επαφές στην κάρτα SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Δεν υπάρχουν διαθέσιμες εφαρμογές επαφών"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Η φωνητική αναζήτηση δεν είναι διαθέσιμη"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Δεν είναι δυνατή η πραγματοποίηση τηλεφωνικής κλήσης επειδή η εφαρμογή \"Τηλέφωνο\" έχει απενεργοποιηθεί."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Αναζήτηση επαφών"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> νέες αναπάντητες κλήσεις"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Δεν έχετε ορίσει ακόμη κάποια επαφή στις ταχείες κλήσεις"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Προσθέστε ένα αγαπημένο"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Δεν έχετε επαφές ακόμη"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Προσθήκη επαφής"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Αγγίξτε την εικόνα για να δείτε όλους τους αριθμούς ή αγγίξτε παρατεταμένα για αναδιάταξη"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Κατάργηση"</string>
+    <string name="select_all" msgid="408601760696146245">"Επιλογή όλων"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Βιντεοκλήση"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Αποστολή μηνύματος"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Λεπτομέρειες κλήσης"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Αποκλεισμένοι αριθμοί"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Ο αριθμός <xliff:g id="NUMBER">%1$s</xliff:g> αποκλείστηκε ήδη."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Λογαριασμοί κλήσης"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ενεργοποίηση"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ορισμός αδειών"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Για να ενεργοποιήσετε την ταχεία κλήση, ενεργοποιήστε την άδεια επαφών."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Για να δείτε το αρχείο καταγραφής κλήσεών σας, ενεργοποιήστε την άδεια τηλεφώνου."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Για να δείτε τις επαφές σας, ενεργοποιήστε την άδεια επαφών."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Για να αποκτήσετε πρόσβαση στον τηλεφωνητή σας, ενεργοποιήστε την άδεια τηλεφώνου."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Για να κάνετε αναζήτηση στις επαφές σας, ενεργοποιήστε τις άδειες \"Επαφές\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Για να πραγματοποιήσετε μια κλήση, ενεργοποιήστε την άδεια τηλεφώνου."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Ανεπιθύμητα"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Ο χρήστης <xliff:g id="NAME">%1$s</xliff:g> είναι εκτός σύνδεσης και δεν μπορείτε να έρθετε σε επικοινωνία μαζί του"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Πληροφορίες"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Προβολή"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Η κλήση διαγράφηκε. Προβάλετε και διαγράψτε τα συνημμένα που κοινοποιήθηκαν κατά τη διάρκεια αυτής της κλήσης στο Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Οι κλήσεις διαγράφηκαν. Προβάλετε και διαγράψτε τα συνημμένα που κοινοποιήθηκαν κατά τη διάρκεια αυτών των κλήσεων στο Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-en-rAU/strings.xml b/java/com/android/dialer/app/res/values-en-rAU/strings.xml
index 28eea8b..dab9158 100644
--- a/java/com/android/dialer/app/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/app/res/values-en-rAU/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Add wait"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Settings"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Create new UI shortcut"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"All contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Use touch tone keypad"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Return to call in progress"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Add call"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Incoming calls"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entering bulk action mode"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Left bulk action mode"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Selected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Unselected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Play voicemail"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"View contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Call <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"voicemails"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yes"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancel batch actions mode"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Delete"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancel"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Delete selected <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selected"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Delete these voicemails? "</b>"</item>
+      <item quantity="one">"<b>"Delete this voicemail? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> at <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Loading from SIM card…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM card contacts"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No contacts app available"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Voice search not available"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Cannot make a phone call because the Phone application has been disabled."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Search contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> new missed calls"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"No one is on your speed dial yet"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Add a favourite"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"You don\'t have any contacts yet"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Add a contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Touch image to see all numbers, or touch &amp; hold to re-arrange"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remove"</string>
+    <string name="select_all" msgid="408601760696146245">"Select all"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video call"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send a message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Call details"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blocked numbers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is already blocked."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Calling accounts"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Turn on"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Set permissions"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"To enable speed dial, turn on the Contacts permission."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"To see your call log, turn on the Phone permission."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"To see your contacts, turn on the Contacts permission."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"To access your voicemail, turn on the Phone permission."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"To search your contacts, turn on the Contacts permissions."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"To place a call, turn on the Phone permission."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is offline and can\'t be reached"</string>
     <string name="about_phone_label" msgid="582991354677973731">"About"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"View"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Call deleted. View and delete attachments shared during this call in Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Calls deleted. View and delete attachments shared during calls in Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-en-rGB/strings.xml b/java/com/android/dialer/app/res/values-en-rGB/strings.xml
index 28eea8b..dab9158 100644
--- a/java/com/android/dialer/app/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/app/res/values-en-rGB/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Add wait"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Settings"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Create new UI shortcut"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"All contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Use touch tone keypad"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Return to call in progress"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Add call"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Incoming calls"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entering bulk action mode"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Left bulk action mode"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Selected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Unselected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Play voicemail"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"View contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Call <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"voicemails"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yes"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancel batch actions mode"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Delete"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancel"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Delete selected <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selected"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Delete these voicemails? "</b>"</item>
+      <item quantity="one">"<b>"Delete this voicemail? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> at <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Loading from SIM card…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM card contacts"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No contacts app available"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Voice search not available"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Cannot make a phone call because the Phone application has been disabled."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Search contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> new missed calls"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"No one is on your speed dial yet"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Add a favourite"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"You don\'t have any contacts yet"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Add a contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Touch image to see all numbers, or touch &amp; hold to re-arrange"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remove"</string>
+    <string name="select_all" msgid="408601760696146245">"Select all"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video call"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send a message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Call details"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blocked numbers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is already blocked."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Calling accounts"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Turn on"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Set permissions"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"To enable speed dial, turn on the Contacts permission."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"To see your call log, turn on the Phone permission."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"To see your contacts, turn on the Contacts permission."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"To access your voicemail, turn on the Phone permission."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"To search your contacts, turn on the Contacts permissions."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"To place a call, turn on the Phone permission."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is offline and can\'t be reached"</string>
     <string name="about_phone_label" msgid="582991354677973731">"About"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"View"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Call deleted. View and delete attachments shared during this call in Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Calls deleted. View and delete attachments shared during calls in Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-en-rIN/strings.xml b/java/com/android/dialer/app/res/values-en-rIN/strings.xml
index 28eea8b..dab9158 100644
--- a/java/com/android/dialer/app/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/app/res/values-en-rIN/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Add wait"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Settings"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Create new UI shortcut"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"All contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Use touch tone keypad"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Return to call in progress"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Add call"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Incoming calls"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entering bulk action mode"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Left bulk action mode"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Selected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Unselected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Play voicemail"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"View contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Call <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"voicemails"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yes"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancel batch actions mode"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Delete"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancel"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Delete selected <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selected"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Delete these voicemails? "</b>"</item>
+      <item quantity="one">"<b>"Delete this voicemail? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> at <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Loading from SIM card…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM card contacts"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No contacts app available"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Voice search not available"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Cannot make a phone call because the Phone application has been disabled."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Search contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> new missed calls"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"No one is on your speed dial yet"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Add a favourite"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"You don\'t have any contacts yet"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Add a contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Touch image to see all numbers, or touch &amp; hold to re-arrange"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remove"</string>
+    <string name="select_all" msgid="408601760696146245">"Select all"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video call"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send a message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Call details"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blocked numbers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is already blocked."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Calling accounts"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Turn on"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Set permissions"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"To enable speed dial, turn on the Contacts permission."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"To see your call log, turn on the Phone permission."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"To see your contacts, turn on the Contacts permission."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"To access your voicemail, turn on the Phone permission."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"To search your contacts, turn on the Contacts permissions."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"To place a call, turn on the Phone permission."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is offline and can\'t be reached"</string>
     <string name="about_phone_label" msgid="582991354677973731">"About"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"View"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Call deleted. View and delete attachments shared during this call in Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Calls deleted. View and delete attachments shared during calls in Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-es-rUS/strings.xml b/java/com/android/dialer/app/res/values-es-rUS/strings.xml
index 9d80bc9..a045a47 100644
--- a/java/com/android/dialer/app/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/app/res/values-es-rUS/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Agregar espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configuración"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crear acceso a la nueva IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos los contactos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado numérico"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Regresar a la llamada en curso"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Agregar llamada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Llamadas entrantes"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando al modo de acción masiva"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saliendo del modo de acción masiva"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Se seleccionó <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Se anuló la selección de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproducir mensaje de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ver contacto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Llamar a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correo de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"el mensaje de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"los mensajes de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sí"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar el modo de acción masiva"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Borrar"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"¿Deseas borrar <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> que seleccionaste?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> seleccionada(s)"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"¿Deseas borrar estos mensajes de voz? "</b>"</item>
+      <item quantity="one">"<b>"¿Deseas borrar este mensaje de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"El <xliff:g id="DATE">%1$s</xliff:g> a la hora <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Cargando desde tarjeta SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactos de tarjeta SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No hay aplicaciones de contactos disponibles."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Búsqueda por voz no disponible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"No se pueden realizar llamadas porque se inhabilitó la aplicación Teléfono."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Buscar contactos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> llamadas perdidas nuevas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aún no tienes contactos en la opción de marcado rápido"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Agregar un favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Aún no tienes contactos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Agregar un contacto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toca la imagen para ver todos los números o mantenla presionada para reorganizar"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eliminar"</string>
+    <string name="select_all" msgid="408601760696146245">"Seleccionar todo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videollamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar un mensaje"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalles de la llamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ya está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Cuentas telefónicas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Configurar permisos"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para habilitar el marcado rápido, activa el permiso Contactos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver el registro de llamadas, activa el permiso Teléfono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver los contactos, activa el permiso Contactos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acceder al buzón de voz, activa el permiso Teléfono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para buscar contactos, activa el permiso Contactos."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para realizar una llamada, activa el permiso Teléfono."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> está sin conexión y no se lo puede contactar"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Acerca de"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ver"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Llamada eliminada. En Mensajes, puedes ver y eliminar archivos adjuntos compartidos durante esta llamada."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Llamadas eliminadas. En Mensajes, puedes ver y eliminar archivos adjuntos durante las llamadas."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-es/strings.xml b/java/com/android/dialer/app/res/values-es/strings.xml
index b7383d9..2c1f61e 100644
--- a/java/com/android/dialer/app/res/values-es/strings.xml
+++ b/java/com/android/dialer/app/res/values-es/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Añadir espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ajustes"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crear acceso a la interfaz"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos los contactos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado táctil"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Volver a la llamada"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Añadir llamada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Llamadas entrantes"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando en el modo de acción en bloque"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Se ha salido del modo de acción en bloque"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> seleccionado"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Selección de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> anulada"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproducir mensaje de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ver contacto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Llamar a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Buzón de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min y <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"mensaje de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mensajes de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sí"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar el modo de acciones en lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Eliminar"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"¿Eliminar la selección de <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Se han seleccionado <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"¿Eliminar estos mensajes de voz? "</b>"</item>
+      <item quantity="one">"<b>"¿Eliminar este mensaje de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> a las <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Cargando desde tarjeta SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactos de tarjeta SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No hay aplicaciones de contactos disponibles"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"La búsqueda por voz no está disponible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"No se puede hacer llamadas porque se ha inhabilitado la aplicación Teléfono."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Buscar contactos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> llamadas perdidas nuevas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aún no tienes contactos en la función de marcación rápida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Añadir un favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Aún no tienes contactos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Añadir un contacto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tocar la imagen para ver todos los números o mantenerla pulsada para cambiar el orden"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eliminar"</string>
+    <string name="select_all" msgid="408601760696146245">"Seleccionar todo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videollamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar un mensaje"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalles de la llamada"</string>
@@ -213,21 +220,22 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ya está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Cuentas de llamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Establecer permisos"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para habilitar la marcación rápida, activa el permiso la aplicación Contactos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver el registro de llamadas, activa el permiso de la aplicación Teléfono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver tus contactos, activa el permiso de la aplicación Contactos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acceder al buzón de voz, activa el permiso de la aplicación Teléfono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para poder buscar tus contactos, activa los permisos de contactos."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para hacer una llamada, activa el permiso de la aplicación Teléfono."</string>
     <string name="toast_cannot_write_system_settings" msgid="1108307781918782515">"La aplicación Teléfono no tiene permiso para editar los ajustes del sistema."</string>
     <string name="blocked_number_call_log_label" msgid="4212282846299997693">"Bloqueado"</string>
-    <string name="call_log_action_block_report_number" msgid="7302636538668696729">"Bloquear / Marcar como spam"</string>
+    <string name="call_log_action_block_report_number" msgid="7302636538668696729">"Bloquear/Marcar como spam"</string>
     <string name="call_log_action_block_number" msgid="5048188386501998865">"Bloquear número"</string>
     <string name="call_log_action_remove_spam" msgid="2045319806318398403">"No es spam"</string>
     <string name="call_log_action_unblock_number" msgid="6100117033288448758">"Desbloquear número"</string>
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> no tiene conexión y no se puede contactar"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Información"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ver"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Se ha eliminado la llamada. Si quieres ver y eliminar los archivos adjuntos compartidos durante esta llamada, ve a Mensajes."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Se han eliminado las llamadas. Si quieres ver y eliminar los archivos adjuntos compartidos durante las llamadas, ve a Mensajes."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-et/strings.xml b/java/com/android/dialer/app/res/values-et/strings.xml
index d4e4faa..6f9273a 100644
--- a/java/com/android/dialer/app/res/values-et/strings.xml
+++ b/java/com/android/dialer/app/res/values-et/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Lisa ootamine"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Seaded"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulaator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Loo uue kasutajaliid. otsetee"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Kõik kontaktid"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Kasuta puutetooniga klahvistikku"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Tagasi käimasolevale kõnele"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Lisa kõne"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Sissetulevad kõned"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Sisenemine hulgitoimingute režiimi"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Lahkumine hulgitoimingute režiimist"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> on valitud"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> on valimata"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Esita kõnepostisõnum"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Kuva kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Helista kasutajale <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Kõnepost"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"kõnepostisõnum"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"kõnepostisõnumid"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Jah"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Mitme toimigu režiimi tühistamine"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Kustuta"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Tühista"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Kas kustutada valitud kõnepostisõnumid <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> on valitud"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Kas kustutada need kõnepostisõnumid? "</b>"</item>
+      <item quantity="one">"<b>"Kas kustutada see kõnepostisõnum? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kell <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Laadimine SIM-kaardilt ..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM-kaardi kontaktid"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Kontaktide rakendus pole saadaval"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Häälotsing ei ole saadaval"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Helistada ei saa, sest telefonirakendus on keelatud."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Otsige kontakte"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> uus/uut vastamata kõne(t)"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Te pole veel kedagi kiirvalimisse lisanud"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Lisa lemmik"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Teil pole veel kontakte"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Lisa kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Puudutage kujutist kõigi numbrite nägemiseks või puudutage pikalt järjestuse muutmiseks"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eemalda"</string>
+    <string name="select_all" msgid="408601760696146245">"Vali kõik"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videokõne"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Saada sõnum"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Kõne üksikasjad"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokeeritud numbrid"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> on juba blokeeritud."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Helistamiskontod"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Lülita sisse"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Määra load"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Kiirvalimise lubamiseks lülitage sisse kontaktiluba."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Kõnelogi vaatamiseks lülitage sisse telefoniluba."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kontaktide vaatamiseks lülitage sisse kontaktiluba."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Kõnepostile juurdepääsemiseks lülitage sisse telefoniluba."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kontaktide otsimiseks lülitage sisse kontaktiload."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Helistamiseks lülitage sisse telefoniluba."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Rämpspost"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ei ole võrgus ja temaga ei saa ühendust"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Teave"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Kuva"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Kõne kustutati. Selle kõne ajal jagatud manuseid saate vaadata ja kustutada rakenduses Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Kõned kustutati. Nende kõnede ajal jagatud manuseid saate vaadata ja kustutada rakenduses Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-eu/strings.xml b/java/com/android/dialer/app/res/values-eu/strings.xml
index 95f4621..6615b59 100644
--- a/java/com/android/dialer/app/res/values-eu/strings.xml
+++ b/java/com/android/dialer/app/res/values-eu/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Gehitu itxaronaldia"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ezarpenak"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulagailua"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Sortu interfazerako esteka"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Kontaktu guztiak"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Erabili ukipen-tonuak dituen teklatua"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Itzuli abian den deira"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Gehitu deia"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Sarrerako deiak"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Ekintzak multzoka gauzatzeko modua aktibatzen"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Ekintzak multzoka gauzatzeko modua desaktibatu da"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> hautatu da"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> desautatu da"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Erreproduzitu erantzungailuko ahots-mezuak"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ikusi <xliff:g id="NAME">%1$s</xliff:g> kontaktua"</string>
     <string name="description_call" msgid="1532402285334775372">"Deitu <xliff:g id="NAME">%1$s</xliff:g> erabiltzaileari"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Erantzungailua"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ahots-mezua"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ahots-mezuak"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Bai"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ez"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Utzi bertan behera ekintzak multzoka gauzatzeko modua"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Ezabatu"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Utzi"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Hautatutako <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ezabatu?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> hautatu dira"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Ahots-mezu hauek ezabatu nahi dituzu? "</b>"</item>
+      <item quantity="one">"<b>"Ahots-mezu hau ezabatu nahi duzu? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> (<xliff:g id="TIME">%2$s</xliff:g>)"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM txarteletik kargatzen…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM txarteleko kontaktuak"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ez dago kontaktuen aplikaziorik erabilgarri"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Ahozko bilaketa ez dago erabilgarri"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Ezin da telefono-deirik egin Telefonoa aplikazioa desgaitu egin delako."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Bilatu kontaktuetan"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> dei galdu berri"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ez duzu inor markatze bizkorrean oraindik"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Gehitu gogokoak"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Ez duzu kontakturik oraindik"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Gehitu kontaktua"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Ukitu irudia zenbaki guztiak ikusteko, edo eduki ezazu sakatuta berrantolatzeko"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Kendu"</string>
+    <string name="select_all" msgid="408601760696146245">"Hautatu guztiak"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Bideo-deia"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Bidali mezua"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Deiaren xehetasunak"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokeatutako zenbakiak"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> blokeatuta dago dagoeneko."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Deiak egiteko kontuak"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktibatu"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ezarri baimenak"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Markatze bizkorra gaitzeko, aktibatu Kontaktuak erabiltzeko baimena."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Deien erregistroa ikusteko, aktibatu Telefonoa erabiltzeko baimena."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kontaktuak ikusteko, aktibatu Kontaktuak erabiltzeko baimena."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Erantzungailuan sartzeko, aktibatu Telefonoa erabiltzeko baimena."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kontaktuak bilatzeko, aktibatu kontaktuak atzitzeko baimenak."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Deiak egiteko, aktibatu Telefonoa erabiltzeko baimena."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spama"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ez dago konektatuta, eta ezin zara jarri harremanetan berarekin"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Honi buruz"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ikusi"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Ezabatu da deia. Ikusi eta ezabatu dei honetan partekatutako eranskinak Mezuak aplikazioan."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Ezabatu dira deiak. Ikusi eta ezabatu dei hauetan partekatutako eranskinak Mezuak aplikazioan."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-fa/strings.xml b/java/com/android/dialer/app/res/values-fa/strings.xml
index 9c8c01b..c9ba98c 100644
--- a/java/com/android/dialer/app/res/values-fa/strings.xml
+++ b/java/com/android/dialer/app/res/values-fa/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"افزودن انتظار"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"تنظیمات"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"شبیه‌ساز"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ایجاد میان‌بر رابط کاربری جدید"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"همه مخاطبین"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"استفاده از صفحه‌کلید لمسی"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"برگشت به تماس درحال انجام"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"افزودن تماس"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"تماس‌های ورودی"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"درحال ورود به حالت اقدام انبوه"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"خروج از حالت اقدام انبوه"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> انتخاب شد"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> از حالت انتخاب خارج شد"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"پخش پست صوتی"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"مشاهده مخاطب <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"تماس با <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"پست صوتی"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ثانیه"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> دقیقه <xliff:g id="SECONDS">%s</xliff:g> ثانیه"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"پست صوتی"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"پست‌های صوتی"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"بله"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"نه"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"لغو حالت اقدام‌ دسته‌ای"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"حذف"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"لغو"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> انتخاب‌شده حذف شود؟"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> مورد انتخاب شد"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"این پست‌های صوتی حذف شوند؟ "</b>"</item>
+      <item quantity="other">"<b>"این پست‌های صوتی حذف شوند؟ "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ساعت <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"در حال بارگیری سیم کارت..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"مخاطبین سیم کارت"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"هیچ برنامه مخاطبی در دسترس نیست"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"جستجوی گفتاری در دسترس نیست"</string>
     <string name="call_not_available" msgid="7850148370757361155">"برقراری تماس تلفنی ممکن نیست، زیرا برنامه تلفن غیرفعال شده است."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"جستجوی مخاطبین"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> تماس‌ بی‌پاسخ جدید"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"هنوز کسی در فهرست شماره‌گیری سریع شما نیست"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"افزودن مورد دلخواه"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"هنوز هیچ مخاطبی ندارید"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"افزودن مخاطب"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"برای مشاهده همه شماره‌ها، تصویر را لمس کنید، یا برای ترتیب مجدد، لمس کنید و نگه‌دارید"</string>
     <string name="remove_contact" msgid="2353580570488923668">"حذف"</string>
+    <string name="select_all" msgid="408601760696146245">"انتخاب همه"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"تماس ویدئویی"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ارسال پیام"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"جزئیات تماس"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"شماره‌های مسدود‌شده"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> درحال‌حاضر مسدود شده است."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"حساب‌های تماس"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"روشن کردن"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"تنظیم مجوزها"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"برای فعال کردن شماره‌گیری سریع، مجوز «مخاطبین» را روشن کنید."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"برای دیدن گزارش تماستان، مجوز «تلفن» را روشن کنید."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"برای دیدن مخاطبینتان، مجوز «مخاطبین» را روشن کنید."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"برای دسترسی به پست صوتی‌تان، مجوز «تلفن» را روشن کنید."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"برای جستجوی مخاطبینتان، مجوزهای مخاطبین را روشن کنید."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"برای برقراری تماس، مجوز «تلفن» را روشن کنید."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"هرزنامه"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> آفلاین است و در دسترس نمی‌باشد"</string>
     <string name="about_phone_label" msgid="582991354677973731">"درباره"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"مشاهده"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"تماس حذف شد. پیوست‌های به اشتراک‌گذاشته‌شده درطول این تماس را در «پیام‌ها» مشاهده و حذف کنید."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"تماس‌ها حذف شدند. پیوست‌های به اشتراک‌گذاشته‌شده درطول تماس‌ها را در «پیام‌ها» مشاهده و حذف کنید."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-fi/strings.xml b/java/com/android/dialer/app/res/values-fi/strings.xml
index c5a103d..f145bc5 100644
--- a/java/com/android/dialer/app/res/values-fi/strings.xml
+++ b/java/com/android/dialer/app/res/values-fi/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Lisää tauko"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Asetukset"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulaattori"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Luo uusi UI-pikakuvake"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Kaikki yhteystiedot"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Käytä näppäimistöä"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Palaa käynnissä olevaan puheluun"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Lisää puhelu"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Saapuvat puhelut"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Siirrytään joukkotoimintotilaan."</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Poistuttiin joukkotoimintotilasta."</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> valittiin."</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ei ole enää valittuna."</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Toista vastaajaviesti"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Näytä yhteystieto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Soita: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Vastaaja"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"vastaajaviesti"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"vastaajaviestit"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Kyllä"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Peruuta joukkotoimintotila."</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Poista"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Peruuta"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Poistetaanko <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> valittu"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Poistetaanko nämä vastaajaviestit? "</b>"</item>
+      <item quantity="one">"<b>"Poistetaanko tämä vastaajaviesti? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> klo <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>.<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Ladataan SIM-kortilta…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM-kortin yhteystiedot"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ei käytettävissä olevaa yhteystietosovellusta"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Puhehaku ei ole käytettävissä"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Puhelua ei voi soittaa, koska Puhelin-sovellus on poistettu käytöstä."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Hae yhteystiedoista"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> uutta vastaamatonta puhelua"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Pikavalinnassa ei ole vielä yhtään yhteystietoa."</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Lisää suosikki"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Sinulla ei ole yhteystietoja."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Lisää yhteystieto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Katso kaikki numerot koskettamalla kuvaa tai järjestele tietoja koskettamalla kuvaa pitkään."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Poista"</string>
+    <string name="select_all" msgid="408601760696146245">"Valitse kaikki"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videopuhelu"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Lähetä viesti"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Puhelun tiedot"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Estetyt numerot"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> on jo estetty."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Puhelutilit"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ota käyttöön"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Määritä käyttöoikeudet"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Jos haluat käyttää pikavalintaa, ota Yhteystiedot-käyttöoikeus käyttöön."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Jos haluat katsella puhelulokiasi, ota Puhelin-käyttöoikeus käyttöön."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Jos haluat katsella yhteystietojasi, ota Yhteystiedot-käyttöoikeus käyttöön."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Jos haluat käyttää puhelinvastaajaa, ota Puhelin-käyttöoikeus käyttöön."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Jos haluat hakea kontaktejasi, ota käyttöön kontaktien käyttöoikeudet."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Jos haluat soittaa puheluja, ota Puhelin-käyttöoikeus käyttöön."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Roskaposti"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> on offline-tilassa, eikä siihen saada yhteyttä."</string>
     <string name="about_phone_label" msgid="582991354677973731">"Tietoja"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Näytä"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Puhelu poistettu. Voit tarkastella ja poistaa puhelun aikana jaettuja liitteitä Viesteissä."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Puhelut poistettu. Voit tarkastella ja poistaa puhelujen aikana jaettuja liitteitä Viesteissä."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-fr-rCA/strings.xml b/java/com/android/dialer/app/res/values-fr-rCA/strings.xml
index d557d74..5a28ff4 100644
--- a/java/com/android/dialer/app/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/app/res/values-fr-rCA/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Ajouter Attendre"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Paramètres"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulateur"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Créer un raccourci vers l\'IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tous les contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Utiliser le clavier DTMF"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Reprendre l\'appel en cours"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Autre appel"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Appels entrants"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrée du mode d\'action groupée en cours…"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Mode d\'action groupée quitté"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Sélection : <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Désélection : <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Écouter le message vocal"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Afficher le contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Appeler <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Messagerie vocale"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min et <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"message vocal"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"messages vocaux"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Oui"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Non"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Annuler le mode d\'action par lots"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Supprimer"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annuler"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Supprimer la sélection (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> sélection(s)"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Supprimer ce message vocal? "</b>"</item>
+      <item quantity="other">"<b>"Supprimer ces messages vocaux? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> à <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Chargement depuis la carte SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contacts de carte SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Aucune application de gestion des contacts n\'est disponible"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Recherche vocale non disponible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Impossible d\'effectuer un appel téléphonique, car l\'application Téléphone a été désactivée."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Rechercher des contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nouveaux appels manqués"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aucun contact ne figure dans vos numéros de composition abrégée"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Ajouter un favori"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Vous n\'avez pas encore de contacts"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Ajouter un contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Touchez l\'image pour afficher tous les numéros, ou maintenez le doigt dessus pour les réorganiser"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Supprimer"</string>
+    <string name="select_all" msgid="408601760696146245">"Tout sélectionner"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Appel vidéo"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Envoyer un message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Détails de l\'appel"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numéros bloqués"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Le numéro <xliff:g id="NUMBER">%1$s</xliff:g> est déjà bloqué."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Comptes d\'appel"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activer"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Définir les autorisations"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Pour activer la composition abrégée, activez l\'autorisation Contacts."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Pour consulter votre journal d\'appels, activez l\'autorisation Téléphone."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Pour consulter vos contacts, activez l\'autorisation Contacts."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Pour accéder à votre messagerie vocale, activez l\'autorisation Téléphone."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Pour rechercher vos contacts et les lieux à proximité, activez les autorisations Contacts."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Pour faire un appel, activez l\'autorisation Téléphone."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Pourriel"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> est hors connexion et injoignable"</string>
     <string name="about_phone_label" msgid="582991354677973731">"À propos"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Afficher"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Appel supprimé. Affichez et supprimez les pièces jointes partagées pendant cet appel dans les messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Appels supprimés. Affichez et supprimez les pièces jointes partagées pendant ces appels dans les messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-fr/strings.xml b/java/com/android/dialer/app/res/values-fr/strings.xml
index d8a5939..b2f6ca5 100644
--- a/java/com/android/dialer/app/res/values-fr/strings.xml
+++ b/java/com/android/dialer/app/res/values-fr/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Ajouter une attente"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Paramètres"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulateur"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Créer un raccourci vers la nouvelle interface"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tous les contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Utiliser le clavier DTMF"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Reprendre l\'appel en cours"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Autre appel"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Appels entrants"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Activation du mode d\'action groupée"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Désactivation du mode d\'action groupée"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> sélectionné"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> désélectionné"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Écouter le message vocal"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Afficher le contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Appeler <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Messagerie vocale"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> secondes"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min et <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"message vocal"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"messages vocaux"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Oui"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Non"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Annuler le mode d\'actions groupées"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Supprimer"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annuler"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Supprimer les messages vocaux sélectionnés (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>) ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> sélectionnés"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Supprimer ce message vocal ? "</b>"</item>
+      <item quantity="other">"<b>"Supprimer ces message vocaux ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> à <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Chargement depuis la carte SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contacts de carte SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Aucune application de gestion des contacts n\'est disponible."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Recherche vocale non disponible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Impossible d\'effectuer un appel téléphonique, car l\'application Téléphone a été désactivée."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Rech. des contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Nouveaux appels manqués : <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aucun contact pour la numérotation abrégée"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Ajouter un favori"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Vous n\'avez pas encore de contacts."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Ajouter un contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Appuyer sur l\'image pour afficher tous les numéros, ou appuyer dessus de manière prolongée pour réorganiser ces derniers"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Supprimer"</string>
+    <string name="select_all" msgid="408601760696146245">"Tout sélectionner"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Appel vidéo"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Envoyer un message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Informations sur l\'appel"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numéros bloqués"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Le numéro \"<xliff:g id="NUMBER">%1$s</xliff:g>\" est déjà bloqué."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Comptes téléphoniques"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activer"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Définir les autorisations"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Pour activer la numérotation abrégée, activez l\'autorisation Contacts."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Pour consulter votre journal d\'appels, activez l\'autorisation Téléphone."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Pour consulter vos contacts, activez l\'autorisation Contacts."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Pour accéder à votre messagerie vocale, activez l\'autorisation Téléphone."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Pour rechercher vos contacts, activez l\'autorisation Contacts."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Pour passer un appel, activez l\'autorisation Téléphone."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> est injoignable, car non connecté"</string>
     <string name="about_phone_label" msgid="582991354677973731">"À propos"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Afficher"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Appel supprimé. Affichez et supprimez les pièces jointes échangées au cours de cet appel dans Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Appels supprimés. Affichez et supprimez les pièces jointes échangées au cours de ces appels dans Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-gl/strings.xml b/java/com/android/dialer/app/res/values-gl/strings.xml
index 33b55a7..926c42d 100644
--- a/java/com/android/dialer/app/res/values-gl/strings.xml
+++ b/java/com/android/dialer/app/res/values-gl/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Engadir espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configuración"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crear atallo para a nova IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos os contactos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado de tons táctiles"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Volver á chamada en curso"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Engadir chamada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chamadas entrantes"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando no modo de acción masiva"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saíu do modo de acción masiva"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Seleccionouse: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Anulouse a selección de: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproducir correo de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ver contacto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Chamar a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correo de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"correo de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"correos de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Si"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Non"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancela o modo de accións en lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Eliminar"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Queres eliminar a selección (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Cantidade seleccionada: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Queres eliminar estes correos de voz? "</b>"</item>
+      <item quantity="one">"<b>"Queres eliminar este correo de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ás <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Cargando da tarxeta SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactos da tarxeta SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Non hai aplicacións de contactos dispoñibles"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Busca por voz non dispoñible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Non se pode facer unha chamada telefónica porque se desactivou a aplicación de teléfono."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Buscar contactos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> chamadas perdidas novas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aínda non tes ningún contacto na marcación directa"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Engade un favorito para a marcación directa"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Aínda non tes contactos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Engade un contacto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toca a imaxe para ver todos os números ou mantena premida para reordenalos"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eliminar"</string>
+    <string name="select_all" msgid="408601760696146245">"Seleccionar todos"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar unha mensaxe"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalles da chamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"O <xliff:g id="NUMBER">%1$s</xliff:g> xa está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Contas de chamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Establecer permisos"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para activar a marcación rápida, activa o permiso de Contactos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver o teu rexistro de chamadas, activa o permiso de Teléfono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver os teus contactos, activa o permiso de Contactos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acceder ao correo de voz, activa o permiso de Teléfono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para buscar os teus contactos, activa os permisos de Contactos."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para facer unha chamada, activa o permiso de Teléfono."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Non se pode contactar con <xliff:g id="NAME">%1$s</xliff:g> porque está sen conexión"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Acerca de"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ver"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Eliminouse a chamada. Podes ver e eliminar os anexos compartidos durante esta chamada en Mensaxes."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Elimináronse as chamadas. Podes ver e eliminar os anexos compartidos durante as chamadas en Mensaxes."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-gu/strings.xml b/java/com/android/dialer/app/res/values-gu/strings.xml
index 1df1826..19515f4 100644
--- a/java/com/android/dialer/app/res/values-gu/strings.xml
+++ b/java/com/android/dialer/app/res/values-gu/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"પ્રતીક્ષા ઉમેરો"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"સેટિંગ્સ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"સિમ્યુલેટર"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"નવું UI શૉર્ટકટ્સ બનાવો"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"તમામ સંપર્કો"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ટચ ટોન કીપેડનો ઉપયોગ કરો"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"કૉલ પર પાછા આવવું પ્રગતિ પર છે"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"કૉલ ઉમેરો"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ઇનકમિંગ કૉલ્સ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"બલ્ક ક્રિયા મોડમાં દાખલ થઈ રહ્યાં છે"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"બલ્ક ક્રિયા મોડ છોડી દીધો"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> પસંદ કર્યો"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> પસંદગીમાંથી દૂર કર્યો"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"વૉઇસમેઇલ ચલાવો"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> સંપર્ક જુઓ"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ને કૉલ કરો"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"વૉઇસમેઇલ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> સેકંડ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> મિ <xliff:g id="SECONDS">%s</xliff:g> સે"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"વૉઇસમેઇલ"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"વૉઇસમેઇલ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"હા"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"નહીં"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"બૅચ ક્રિયા મોડ રદ કરો"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"કાઢી નાખો"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"રદ કરો"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"પસંદ કરેલ <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ને કાઢી નાખીએ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> પસંદ કરી"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"આ વૉઇસમેઇલ કાઢી નાખીએ? "</b>"</item>
+      <item quantity="other">"<b>"આ વૉઇસમેઇલ કાઢી નાખીએ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> નાં રોજ <xliff:g id="TIME">%2$s</xliff:g> વાગ્યે"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM કાર્ડમાંથી લોડ કરી રહ્યું છે…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM કાર્ડ સંપર્કો"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"કોઈ સંપર્કો ઍપ્લિકેશન ઉપલબ્ધ નથી"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"વૉઇસ શોધ ઉપલબ્ધ નથી"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ફોન કૉલ કરી શકાતો નથી કારણ કે ફોન ઍપ્લિકેશન અક્ષમ કરવામાં આવી છે."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"સંપર્કો શોધો"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> નવા છૂટેલા કૉલ્સ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"તમારા ઝડપી ડાયલ પર હજી સુધી કોઇ નથી"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"એક મનપસંદ ઉમેરો"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"તમે હજી સુધી કોઇપણ સંપર્કો ધરાવતાં નથી"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"સંપર્ક ઉમેરો"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"બધા નંબર્સ જોવા માટે છબી ટચ કરો અથવા પુનઃક્રમાંકિત કરવા માટે ટચ કરો અને પકડી રાખો"</string>
     <string name="remove_contact" msgid="2353580570488923668">"દૂર કરો"</string>
+    <string name="select_all" msgid="408601760696146245">"તમામ પસંદ કરો"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"વિડિઓ કૉલ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"એક સંદેશ મોકલો"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"કૉલની વિગતો"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"અવરોધિત નંબરો"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ને પહેલેથી અવરોધિત કરવામાં આવ્યો છે."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"કૉલિંગ એકાઉન્ટ્સ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ચાલુ કરો"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"પરવાનગીઓ સેટ કરો"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ઝડપી ડાયલ સક્ષમ કરવા માટે, સંપર્કોની પરવાનગી ચાલુ કરો."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"તમારો કૉલ લૉગ જોવા માટે, ફોન પરવાનગી ચાલુ કરો."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"તમારા સંપર્કો જોવા માટે, સંપર્કોની પરવાનગી ચાલુ કરો."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"તમારી વૉઇસમેઇલને ઍક્સેસ કરવા માટે, ફોન પરવાનગી ચાલુ કરો."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"તમારા સંપર્કો શોધવા માટે, સંપર્કોની પરવાનગીઓ ચાલુ કરો."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"કૉલ કરવા માટે, ફોન પરવાનગી ચાલુ કરો."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"સ્પામ"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ઑફલાઇન છે અને તેના સુધી પહોંચી શકતાં નથી"</string>
     <string name="about_phone_label" msgid="582991354677973731">"વિશે"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"જુઓ"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"કૉલ કાઢી નાખ્યો. આ કૉલ દરમિયાન સંદેશામાં શેર કરેલ જોડાણ જુઓ અને કાઢી નાખો."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"કૉલ કાઢી નાખ્યા. કૉલ દરમિયાન સંદેશામાં શેર કરેલ જોડાણ જુઓ અને કાઢી નાખો."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-hi/strings.xml b/java/com/android/dialer/app/res/values-hi/strings.xml
index 84d2d97..0ff972d 100644
--- a/java/com/android/dialer/app/res/values-hi/strings.xml
+++ b/java/com/android/dialer/app/res/values-hi/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"प्रतीक्षा का समय बढ़ाएं"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"सेटिंग"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"सिम्युलेटर"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"नया UI शॉर्टकट बनाएं"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"सभी संपर्क"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"टच टोन कीपैड का उपयोग करें"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"कॉल पर लौटना प्रगति पर है"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"कॉल जोड़ें"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"इनकमिंग कॉल"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"बल्क कार्रवाई मोड में प्रवेश कर रहे हैं"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"बल्क कार्रवाई मोड छोड़ा"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> को चुना गया"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> को नहीं चुना गया"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ध्‍वनिमेल चलाएं"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> संपर्क देखें"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> को कॉल करें"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"वॉयस मेल"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> सेकंड"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> मि. <xliff:g id="SECONDS">%s</xliff:g> से."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"वॉयसमेल"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"वॉयसमेल"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"हां"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"नहीं"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"बैच कार्रवाई मोड रद्द करें"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"हटाएं"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"रद्द करें"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"क्या चुने गए <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> हटाना चाहते हैं?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> चयनित"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"ये वॉइसमेल हटाएं? "</b>"</item>
+      <item quantity="other">"<b>"ये वॉइसमेल हटाएं? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> को <xliff:g id="TIME">%2$s</xliff:g> बजे"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"सिम कार्ड से लोड हो रहा है…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"सिम कार्ड के संपर्क"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"कोई भी संपर्क ऐप उपलब्‍ध नहीं है"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"बोलकर खोजना उपलब्‍ध नहीं है"</string>
     <string name="call_not_available" msgid="7850148370757361155">"फ़ोन कॉल नहीं किया जा सकता क्योंकि फ़ोन ऐप्लिकेशन अक्षम कर दिया गया है."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"संपर्क खोजें"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g>  छूटे हुए नए कॉल"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"आपके स्‍पीड डायल पर अभी तक कोई भी नहीं है"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"कोई पसंदीदा जोड़ें"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"आपके पास अभी कोई भी संपर्क नहीं है"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"कोई संपर्क जोड़ें"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"सभी नंबर देखने के लिए चित्र को स्‍पर्श करें या पुन: क्रमित करने के लिए स्‍पर्श करके रखें"</string>
     <string name="remove_contact" msgid="2353580570488923668">"निकालें"</string>
+    <string name="select_all" msgid="408601760696146245">"सभी चुनें"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"वीडियो कॉल"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"संदेश भेजें"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"कॉल विवरण"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"अवरोधित नंबर"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> पहले से अवरोधित है."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"कॉलिंग खाते"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"चालू करें"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"अनुमतियां सेट करें"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"स्पीड डायल सक्षम करने के लिए, संपर्क अनुमति चालू करें."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"अपना कॉल लॉग देखने के लिए, फ़ोन अनुमति चालू करें."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"अपने संपर्क देखने के लिए, संपर्क अनुमति चालू करें."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"अपना वॉइसमेल ऐक्सेस करने के लिए, फ़ोन अनुमति चालू करें."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"अपने संपर्कों की खोज करने के लिए, संपर्क अनुमतियों को चालू करें."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"कॉल करने के लिए, फ़ोन अनुमति चालू करें."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"स्पैम"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ऑफ़लाइन हैं और उन तक नहीं पहुंचा जा सकता"</string>
     <string name="about_phone_label" msgid="582991354677973731">"संक्षिप्त विवरण"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"देखें"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"कॉल हटाया गया. संदेश में जा कर इस कॉल के दौरान साझा किए गए अटैचमेंट देखें और हटाएं."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"कॉल हटाए गए. संदेश में जा कर इस कॉल के दौरान साझा किए गए अटैचमेंट देखें और हटाएं."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-hr/strings.xml b/java/com/android/dialer/app/res/values-hr/strings.xml
index cd35353..17bf750 100644
--- a/java/com/android/dialer/app/res/values-hr/strings.xml
+++ b/java/com/android/dialer/app/res/values-hr/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj čekanje"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Postavke"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Izrada prečaca novog sučelja"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Svi kontakti"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Koristi dodirnu zvučnu tipkovnicu"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Natrag na poziv u tijeku"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj poziv"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Dolazni pozivi"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Ulazak u način skupne radnje"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Napuštanje načina skupne radnje"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Odabrano: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Poništen odabir: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reprodukcija govorne pošte"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Prikaz kontakta <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Nazovi <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Govorna pošta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"poruka govorne pošte"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"poruke govorne pošte"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Otkaži način skupnih radnji"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Izbriši"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Odustani"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Želite li izbrisati odabranu poruku/e govorne pošte <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Odabrano: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Želite li izbrisati ove poruke govorne pošte? "</b>"</item>
+      <item quantity="few">"<b>"Želite li izbrisati ove poruke govorne pošte? "</b>"</item>
+      <item quantity="other">"<b>"Želite li izbrisati ove poruke govorne pošte? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> u <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>.<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Učitavanje sa SIM kartice..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakti SIM kartice"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nije dostupna nijedna aplikacija za kontakte"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Glasovno pretraživanje nije dostupno"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefoniranje nije moguće jer je aplikacija Telefon onemogućena."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pretraži kontakte"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Broj novih propuštenih poziva: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Još nemate nikog na brzom biranju"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodaj omiljeni kontakt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Još nemate nijedan kontakt"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodajte kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Dodirnite sliku da biste vidjeli sve brojeve ili dodirnite i zadržite da biste promijenili redoslijed"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ukloni"</string>
+    <string name="select_all" msgid="408601760696146245">"Odaberi sve"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videopoziv"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Pošalji poruku"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Pojedinosti poziva"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokirani brojevi"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Broj <xliff:g id="NUMBER">%1$s</xliff:g> već je blokiran."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Pozivanje računa"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Uključi"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Postavi dopuštenja"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Da biste omogućili brzo biranje, uključite dopuštenje za kontakte."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Da biste vidjeli zapisnik poziva, uključite dopuštenje za telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Da biste vidjeli svoje kontakte, uključite dopuštenje za kontakte."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Da biste pristupili govornoj pošti, uključite dopuštenje za telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Da biste pretraživali kontakte, uključite dopuštenja za kontakte."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Da biste nazvali nekog, uključite dopuštenje za telefon."</string>
@@ -232,4 +238,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Neželjena pošta"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> nije online i nije dostupan"</string>
     <string name="about_phone_label" msgid="582991354677973731">"O aplikaciji"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Prikaži"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Poziv je izbrisan. U Porukama pregledajte i izbrišite privitke podijeljene tijekom ovog poziva."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Pozivi su izbrisani. U Porukama pregledajte i izbrišite privitke podijeljene tijekom poziva."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-hu/strings.xml b/java/com/android/dialer/app/res/values-hu/strings.xml
index 2e64d74..6e88c56 100644
--- a/java/com/android/dialer/app/res/values-hu/strings.xml
+++ b/java/com/android/dialer/app/res/values-hu/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Várakozás hozzáadása"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Beállítások"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Szimulátor"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Új felh. felület-parancsikon"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Összes névjegy"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Hangkódos telefonbillentyűzet használata"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Vissza a folyamatban lévő híváshoz"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Hívás hozzáadása"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Bejövő hívások"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Belépés tömeges műveleti módba"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Kilépett a tömeges műveleti módból"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Kijelölés: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Kijelölés megszüntetve: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Hangposta lejátszása"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> névjegyének megtekintése"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> hívása"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Hangposta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> másodperc"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> perc <xliff:g id="SECONDS">%s</xliff:g> másodperc"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"hangpostaüzenetet"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"hangpostaüzeneteket"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Igen"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nem"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Köteges művelet mód leállítva"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Törlés"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Mégse"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Törli a kiválasztott <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> kiválasztva"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Törli ezeket a hangpostaüzeneteket? "</b>"</item>
+      <item quantity="one">"<b>"Törli ezt a hangpostaüzenetet? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Betöltés a SIM kártyáról..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Névjegyek a SIM kártyán"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nincs elérhető névjegyek alkalmazás"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"A hangalapú keresés nem érhető el"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nem lehet telefonhívást kezdeményezni, mert a Telefon alkalmazást letiltották."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Keresés a névjegyek között"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> új nem fogadott hívás"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Még semelyik telefonszám sincs gyorshívón"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Kedvenc hozzáadása"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Még nem rendelkezik egyetlen névjeggyel sem"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Névjegy hozzáadása"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Koppintson a képre az összes szám megjelenítéséhez, vagy tartsa nyomva az átrendezéshez"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eltávolítás"</string>
+    <string name="select_all" msgid="408601760696146245">"Az összes kijelölése"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videohívás"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Üzenet küldése"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Hívás adatai"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Letiltott számok"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"A következő szám már le van tiltva: <xliff:g id="NUMBER">%1$s</xliff:g>."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Telefonos fiókok"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Engedélyezés"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Engedélyek beállítása"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Gyorshívás engedélyezéséhez kapcsolja be a Névjegyek engedélyt."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"A hívásnapló megtekintéséhez kapcsolja be a Telefon engedélyt."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"A névjegyek megtekintéséhez kapcsolja be a Névjegyek engedélyt."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"A hangposta eléréséhez kapcsolja be a Telefon engedélyt."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"A névjegyek kereséséhez adja meg a Névjegyek engedélyeket."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Hívásindításhoz kapcsolja be a Telefon engedélyt."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> offline, és nem érhető el."</string>
     <string name="about_phone_label" msgid="582991354677973731">"Névjegy"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Megtekintés"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Hívás törölve. A hívás során megosztott mellékleteket az Üzenetek alkalmazásban tekintheti meg és törölheti."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Hívások törölve. A hívások során megosztott mellékleteket az Üzenetek alkalmazásban tekintheti meg és törölheti."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-hy/strings.xml b/java/com/android/dialer/app/res/values-hy/strings.xml
index 6f3931c..f3c5a8b 100644
--- a/java/com/android/dialer/app/res/values-hy/strings.xml
+++ b/java/com/android/dialer/app/res/values-hy/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Ավելացնել սպասում"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Կարգավորումներ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Նմանակիչ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Ստեղծել միջերեսի նոր դյուրանցում"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Բոլոր կոնտակտները"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Օգտագործել հնչերանգներով ստեղնաշարը"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Վերադառնալ ընթացիկ զանգին"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Ավելացնել զանգ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Մուտքային զանգեր"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Դուք մտել եք զանգվածային գործողության ռեժիմ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Դուք դուրս եկաք զանգվածային գործողությունների ռեժիմից"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Ընտրվեց՝ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Ապընտրվեց՝ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Նվագարկել ձայնային փոստը"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Դիտել <xliff:g id="NAME">%1$s</xliff:g> կոնտակտը"</string>
     <string name="description_call" msgid="1532402285334775372">"Զանգել <xliff:g id="NAME">%1$s</xliff:g>-ին"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Ձայնային փոստ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> վրկ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> րոպե <xliff:g id="SECONDS">%s</xliff:g> վայրկյան"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ձայնային հաղորդագրություն"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ձայնային հաղորդագրություններ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Այո"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ոչ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Չեղարկել փաթեթային գործողությունների ռեժիմը"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Ջնջել"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Չեղարկել"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Ջնջե՞լ նշված <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ը"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Ընտրվել է՝ <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Delete these voicemails? "</b>"</item>
+      <item quantity="other">"<b>"Ջնջե՞լ այս ձայնային հաղորդագրությունները "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>-ին, ժամը <xliff:g id="TIME">%2$s</xliff:g>-ին"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM քարտը բեռնվում է..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM քարտի կոնտակտները"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Կոնտակտների հավելված չկա"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Ձայնային որոնումը հասանելի չէ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Հնարավոր չէ զանգահարել, քանի որ Հեռախոս հավելվածն անջատված է:"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Կոնտակտների որոնում"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> նոր բաց թողնված զանգ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Արագ համարահավաքման ցանկը դատարկ է"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Ավելացնել կոնտակտ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Դեռ կոնտակտներ չունեք"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Ավելացնել կոնտակտ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Բոլոր համարները տեսնելու համար հպեք պատկերին: Վերադասավորելու համար հպեք և պահեք:"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Հեռացնել"</string>
+    <string name="select_all" msgid="408601760696146245">"Ընտրել բոլորը"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Տեսազանգ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Ուղարկել հաղորդագրություն"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Զանգի մանրամասները"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Արգելափակված համարներ"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> համարն արդեն արգելափակված է:"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Հաշիվներ զանգերի համար"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Միացնել"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Թույլտվությունների սահմանում"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Արագ համարահավաքը թույլատրելու համար միացրեք Կոնտակտների թույլտվությունը:"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Ձեր զանգերի մատյանը տեսնելու համար միացրեք Հեռախոսի թույլտվությունը:"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Ձեր կոնտակտները տեսնելու համար միացրեք Կոնտակտների թույլտվությունը:"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ձայնային փոստն օգտագործելու համար միացրեք Հեռախոսի թույլտվությունը:"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Կոնտակտները որոնելու համար միացրեք Կոնտակտների թույլտվությունները:"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Զանգ կատարելու համար միացրեք Հեռախոսի թույլտվությունը:"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Լցոն"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> օգտատերը միացած չէ ցանցին և անհասանելի է"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Հավելվածի մասին"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Դիտել"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Զանգը ջնջվեց: Դիտեք և ջնջեք զանգի ընթացքում ստացված կցորդները Messages հավելվածում:"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Զանգերը ջնջվեցին: Դիտեք և ջնջեք զանգերի ընթացքում ստացված կցորդները Messages հավելվածում:"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-in/strings.xml b/java/com/android/dialer/app/res/values-in/strings.xml
index c0de9b3..21aa536 100644
--- a/java/com/android/dialer/app/res/values-in/strings.xml
+++ b/java/com/android/dialer/app/res/values-in/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Tambahkan tunggu"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Setelan"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Buat Pintasan UI Baru"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Semua kontak"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Gunakan keypad nada sentuh"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Kembali ke panggilan sedang berlangsung"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Tambahkan panggilan"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Panggilan masuk"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Masuk ke mode tindakan massal"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Keluar dari mode tindakan massal"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> dipilih"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> tidak dipilih"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Putar pesan suara"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Lihat kontak <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Telepon <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Kotak Pesan"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> dtk"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> mnt <xliff:g id="SECONDS">%s</xliff:g> dtk"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"pesan suara"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"pesan suara"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ya"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Tidak"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Membatalkan mode tindakan kelompok"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Hapus"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Batal"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Hapus <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> yang dipilih?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> dipilih"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Hapus pesan suara ini? "</b>"</item>
+      <item quantity="one">"<b>"Hapus pesan suara ini? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> pukul <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>.<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Memuat dari kartu SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontak pada kartu SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Aplikasi kontak tidak tersedia"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Penelusuran suara tidak tersedia"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Tidak dapat melakukan panggilan telepon karena aplikasi Telepon telah dinonaktifkan."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Telusuri kontak"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> panggilan tidak terjawab baru"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Daftar panggilan cepat masih kosong"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Tambahkan favorit"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Anda belum memiliki kontak"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Tambahkan kontak"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Sentuh foto untuk melihat semua nomor atau sentuh &amp; tahan untuk menyusun ulang"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Hapus"</string>
+    <string name="select_all" msgid="408601760696146245">"Pilih semua"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Panggilan video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Kirim pesan"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detail panggilan"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Nomor yang diblokir"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> sudah diblokir."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Akun panggilan"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktifkan"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Setel izin"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Untuk mengaktifkan panggilan cepat, aktifkan izin Kontak."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Untuk melihat log panggilan, aktifkan izin Telepon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Untuk melihat kontak, aktifkan izin Kontak."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Untuk mengakses pesan suara, aktifkan izin Telepon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Untuk menelusuri kontak, aktifkan izin Kontak."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Untuk melakukan panggilan, aktifkan izin Telepon."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> sedang offline dan tidak dapat dijangkau"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Tentang"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Tampilkan"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Panggilan dihapus. Lihat dan hapus lampiran yang dibagikan selama panggilan ini di Message."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Panggilan dihapus. Lihat dan hapus lampiran yang dibagikan selama panggilan ini di Message."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-is/strings.xml b/java/com/android/dialer/app/res/values-is/strings.xml
index fdd6356..86a6b1b 100644
--- a/java/com/android/dialer/app/res/values-is/strings.xml
+++ b/java/com/android/dialer/app/res/values-is/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Bæta töf við"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Stillingar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Hermir"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Stofna flýtileið í nýtt viðmót"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Allir tengiliðir"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Nota snertitónatakkaborð"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Fara aftur í símtal í gangi"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Bæta við símtali"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Móttekin símtöl"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Opnar fjöldaaðgerðastillingu"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Fjöldaaðgerðastillingu lokað"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Valdi <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Fjarlægði val á <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Spila talhólfsskilaboð"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Skoða tengiliðinn <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Hringja í <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Talhólf"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> mín. og <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"talhólfsskilaboð"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"talhólfsskilaboð"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Já"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Hætta við runuaðgerðastillingu"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Eyða"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Hætta við"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Eyða völdum <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> valin"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Eyða þessum talhólfsskilaboðum? "</b>"</item>
+      <item quantity="other">"<b>"Eyða þessum talhólfsskilaboðum? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Hleður af SIM-kortinu…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Tengiliðir á SIM-korti"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ekkert tengiliðaforrit í boði"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Raddleit er ekki í boði"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Ekki er hægt að hringja vegna þess að forritið Sími hefur verið gert óvirkt."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Leita í tengiliðum"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ný ósvöruð símtöl"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Þú ert ekki með neinn í hraðvali enn sem komið er"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Bæta uppáhaldi við"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Þú ert ekki með neina tengiliði enn sem komið er"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Bæta tengilið við"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Snertu myndina til að sjá öll númer eða haltu henni inni til að endurraða"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Fjarlægja"</string>
+    <string name="select_all" msgid="408601760696146245">"Velja allt"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Myndsímtal"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Senda skilaboð"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Símtalsupplýsingar"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Númer á bannlista"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> er nú þegar á bannlista."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Símtalareikningar"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Kveikja"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Stilla heimildir"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Kveiktu á tengiliðaheimildinni til að gera hraðval virkt."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Kveiktu á heimild símaforritsins til að sjá símtalaskrána þína."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kveiktu á tengiliðaheimildinni til að sjá tengiliðina þína."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Kveiktu á heimild símaforritsins til að fá aðgang að talhólfinu þínu."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kveiktu á heimildunum fyrir tengiliði til að leita að tengiliðum."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Kveiktu á heimild símaforritsins til að hringja símtal."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Ruslnúmer"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> er án nettengingar og ekki er hægt að ná í viðkomandi"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Um forritið"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Skoða"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Símtali eytt. Skoðaðu og eyddu viðhengjum sem var deilt í þessu símtali í Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Símtölum eytt. Skoðaðu og eyddu viðhengjum sem var deilt í þessum símtölum í Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-it/strings.xml b/java/com/android/dialer/app/res/values-it/strings.xml
index 9bd8cd3..fde5531 100644
--- a/java/com/android/dialer/app/res/values-it/strings.xml
+++ b/java/com/android/dialer/app/res/values-it/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Aggiungi attesa"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Impostazioni"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulatore"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crea nuova scorciatoia UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tutti i contatti"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usa tastierino per selezione a toni"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Torna alla chiamata in corso"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Aggiungi chiamata"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chiamate in arrivo"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Attivazione della modalità di azione collettiva"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Disttivazione della modalità di azione collettiva"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> selezionato"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> deselezionato"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Riproduci messaggio vocale"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visualizza <xliff:g id="NAME">%1$s</xliff:g> contatto"</string>
     <string name="description_call" msgid="1532402285334775372">"Chiama <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Segreteria"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> secondi"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"messaggio vocale"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"messaggi vocali"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sì"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Annulla modalità di azione collettiva"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Elimina"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annulla"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Eliminare i <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> selezionati?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selezionate"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Eliminare questi messaggi vocali? "</b>"</item>
+      <item quantity="one">"<b>"Eliminare questo messaggio vocale? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> alle ore <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Caricamento da SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contatti SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nessuna app di contatti disponibile"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Ricerca vocale non disponibile"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Impossibile effettuare una telefonata perché l\'applicazione Telefono è stata disattivata."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Cerca contatti"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nuove chiamate perse"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Nessun preferito disponibile nella Composizione rapida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Aggiungi un preferito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nessun contatto disponibile"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Aggiungi un contatto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tocca l\'immagine per visualizzare tutti i numeri oppure tieni premuto per cambiare l\'ordine"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Rimuovi"</string>
+    <string name="select_all" msgid="408601760696146245">"Seleziona tutto"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochiamata"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Invia un messaggio"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Dettagli chiamata"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numeri bloccati"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> è già bloccato."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Account di chiamata"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Attiva"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Imposta autorizzazioni"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Per attivare la composizione rapida, attiva l\'autorizzazione Contatti."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Per accedere al registro chiamate, attiva l\'autorizzazione sul telefono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Per accedere ai tuoi contatti, attiva l\'autorizzazione Contatti."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Per accedere alla segreteria, attiva l\'autorizzazione sul telefono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Per cercare nei tuoi contatti, attiva le autorizzazioni Contatti."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Per fare una chiamata, attiva l\'autorizzazione sul telefono."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> è offline e non può essere raggiunto"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Informazioni"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Visualizza"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Chiamata eliminata. Visualizza ed elimina gli allegati condivisi durante questa chiamata in Messaggi."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Chiamate eliminate. Visualizza ed elimina gli allegati condivisi durante queste chiamate in Messaggi."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-iw/strings.xml b/java/com/android/dialer/app/res/values-iw/strings.xml
index bb115e2..bad9f21 100644
--- a/java/com/android/dialer/app/res/values-iw/strings.xml
+++ b/java/com/android/dialer/app/res/values-iw/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"הוסף המתנה"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"הגדרות"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"סימולטור"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"יצירת קיצור דרך לממשק החדש"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"כל אנשי הקשר"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"השתמש במקלדת עם חיוג צלילים"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"חזור לשיחה פעילה"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"הוסף שיחה"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"שיחות נכנסות"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"עברת למצב של ביצוע פעולות בכמות גדולה"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"עזבת את המצב של ביצוע פעולות בכמות גדולה"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"בחרת את <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"ביטלת את הבחירה של <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"הפעל דואר קולי"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"הצג את איש הקשר <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"התקשר אל <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"דואר קולי"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> שניות"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> דק\' <xliff:g id="SECONDS">%s</xliff:g> שנ\'"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ההודעה הקולית"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ההודעות הקוליות"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"כן"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"לא"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ביטול המצב של ביצוע פעולות בכמות גדולה"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"מחיקה"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ביטול"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"האם למחוק את <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> שבחרת?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> נבחרו"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="two">"<b>"האם למחוק את ההודעות הקוליות האלה? "</b>"</item>
+      <item quantity="many">"<b>"האם למחוק את ההודעות הקוליות האלה? "</b>"</item>
+      <item quantity="other">"<b>"האם למחוק את ההודעות הקוליות האלה? "</b>"</item>
+      <item quantity="one">"<b>"האם למחוק את ההודעה הקולית הזו? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ב-<xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"‏טוען מכרטיס SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"‏אנשי קשר בכרטיס SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"אין אפליקציה זמינה עבור אנשי קשר"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"חיפוש קולי אינו זמין"</string>
     <string name="call_not_available" msgid="7850148370757361155">"לא ניתן לבצע שיחת טלפון מפני שאפליקציית הטלפון הושבתה."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"חפש אנשי קשר"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> שיחות חדשות שלא נענו"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"עדיין לא הוגדר חיוג מהיר לאף איש קשר"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"הוסף פריט מועדף"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"עדיין אין לך אנשי קשר"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"הוסף איש קשר"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"גע בתמונה כדי להציג את כל המספרים או גע והחזק כדי לשנות את הסדר"</string>
     <string name="remove_contact" msgid="2353580570488923668">"הסר"</string>
+    <string name="select_all" msgid="408601760696146245">"בחירת הכל"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"שיחת וידאו"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"שלח הודעה"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"פרטי שיחה"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"מספרים חסומים"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> כבר חסום."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"חשבונות לביצוע שיחות"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"הפעל"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"הגדר הרשאות"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"כדי להפעיל חיוג מהיר, הפעל את ההרשאה \'אנשי קשר\'."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"כדי לראות את יומן השיחות, הפעל את ההרשאה \'טלפון\'."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"כדי להציג את אנשי הקשר, הפעל את ההרשאה \'אנשי קשר\'."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"כדי לגשת לדואר הקולי, הפעל את ההרשאה \'טלפון\'."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"כדי לחפש באנשי הקשר, הפעל את ההרשאה \'אנשי קשר\'."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"כדי להתקשר, הפעל את ההרשאה \'טלפון\'."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"ספאם"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"לא ניתן להתקשר כי המכשיר של <xliff:g id="NAME">%1$s</xliff:g> לא מחובר כרגע"</string>
     <string name="about_phone_label" msgid="582991354677973731">"מידע כללי"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"הצג"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"השיחה נמחקה. כדי להציג ולמחוק קבצים מצורפים ששותפו בזמן השיחה, עבור ל\'הודעות\'."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"השיחות נמחקו. כדי להציג ולמחוק קבצים מצורפים ששותפו בזמן השיחות, עבור ל\'הודעות\'."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ja/strings.xml b/java/com/android/dialer/app/res/values-ja/strings.xml
index 63b15cb..8de6664 100644
--- a/java/com/android/dialer/app/res/values-ja/strings.xml
+++ b/java/com/android/dialer/app/res/values-ja/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"待機を追加"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"設定"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"シミュレーション"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"新しいUIのショートカットを作成"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"すべての連絡先"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"プッシュホン式キーパッドを使う"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"通話に戻る"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"別の通話を追加"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"着信"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"一括操作モードを開始します"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"一括操作モードを終了しました"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> を選択しました"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> を選択解除しました"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ボイスメールを再生"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g>の連絡先を表示"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g>に発信"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ボイスメール"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g>秒"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g>分<xliff:g id="SECONDS">%s</xliff:g>秒"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ボイスメール"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ボイスメール"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"はい"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"いいえ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"一括操作モードをキャンセルします"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"削除"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"キャンセル"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"選択した<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>を削除しますか？"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> 件選択済み"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"これらのボイスメールを削除しますか？"</b>"</item>
+      <item quantity="one">"<b>"このボイスメールを削除しますか？"</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>、<xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g> 分 <xliff:g id="SECONDS">%2$02d</xliff:g> 秒"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIMカードから読み取り中..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIMカードの連絡先"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"連絡先アプリがありません"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"音声検索を利用できません"</string>
     <string name="call_not_available" msgid="7850148370757361155">"電話アプリが無効になっているため発信できません。"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"連絡先を検索"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g>件の不在着信"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"クイックアクセスに登録済みの連絡先はまだありません"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"お気に入りを追加"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"連絡先はまだありません"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"連絡先を追加"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"画像をタップするとすべての番号が表示され、押し続けると番号を並べ替えることができます"</string>
     <string name="remove_contact" msgid="2353580570488923668">"削除"</string>
+    <string name="select_all" msgid="408601760696146245">"すべて選択"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ビデオハングアウト"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"メッセージを送信"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"通話の詳細"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ブロックした番号"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g>は既にブロックしています。"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"通話アカウント"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ONにする"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"権限を設定"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"クイックアクセスを有効にするには、連絡先権限をONにしてください。"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"通話履歴を表示するには、電話権限をONにしてください。"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"連絡先を表示するには、連絡先権限をONにしてください。"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ボイスメールにアクセスするには、電話権限をONにしてください。"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"連絡先を検索するには、連絡先権限をONにしてください。"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"電話をかけるには、電話権限をONにしてください。"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"スパム"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> さんはオフラインのため、通話を受信できません"</string>
     <string name="about_phone_label" msgid="582991354677973731">"電話アプリについて"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"表示"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"通話を削除しました。通話中に共有した添付ファイルを、メッセージで確認して削除してください。"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"通話を削除しました。通話中に共有した添付ファイルを、メッセージで確認して削除してください。"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ka/strings.xml b/java/com/android/dialer/app/res/values-ka/strings.xml
index ae89505..b4f7f64 100644
--- a/java/com/android/dialer/app/res/values-ka/strings.xml
+++ b/java/com/android/dialer/app/res/values-ka/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"ლოდინის დამატება"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"პარამეტრები"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"სიმულატორი"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ახალი UI მალსახმობის შექმნა"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ყველა კონტაქტი"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ტონალური კლავიატურის გამოყენება"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"მიმდინარე ზარზე დაბრუნება"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ზარის დამატება"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"შემომავალი ზარები"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"მიმდინარეობს ერთიანი ქმედების რეჟიმში შესვლა"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ერთიანი ქმედების რეჟიმიდან გამოხვედით"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"არჩეულია <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>-ის არჩევა გაუქმდა"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ხმოვანი ფოსტის ჩართვა"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"კონტაქტის <xliff:g id="NAME">%1$s</xliff:g> ნახვა"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g>-თან დარეკვა"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ხმოვანი ფოსტა"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> წმ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> მინ <xliff:g id="SECONDS">%s</xliff:g> წამ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ხმოვანი ფოსტა"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ხმოვანი ფოსტა"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"დიახ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"არა"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ერთიანი ქმედების რეჟიმის გაუქმება"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"წაშლა"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"გაუქმება"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"გსურთ, წაშალოთ არჩეული <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"არჩეულია <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"გსურთ ამ ხმოვანი შეტყობინებების წაშლა? "</b>"</item>
+      <item quantity="one">"<b>"გსურთ ამ ხმოვანი შეტყობინების წაშლა? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"იტვირთება SIM ბარათიდან…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM ბარათის კონტაქტები"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"კონტაქტების აპლიკაცია არ არის ხელმისაწვდომი"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ხმოვანი ძიება არ არის ხელმისაწვდომი"</string>
     <string name="call_not_available" msgid="7850148370757361155">"სატელეფონო ზარის განხორციელება ვერ ხერხდება, ვინაიდან ტელეფონის აპლიკაცია გაუქმებულია."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"კონტაქტებში ძიება"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ახალი გაცდენილი ზარი"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"სწრაფი აკრეფისთვის რჩეულები ჯერ არ გყავთ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"რჩეული კონტაქტის დამატება"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"კონტაქტები ჯერ არ გაქვთ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"კონტაქტის დამატება"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ყველა ნომრის სანახავად შეეხეთ სურათს ან შეეხეთ და დააყოვნეთ მიმდევრობის შესაცვლელად"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ამოშლა"</string>
+    <string name="select_all" msgid="408601760696146245">"ყველას არჩევა"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ვიდეო ზარი"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"შეტყობინების გაგზავნა"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ზარის მონაცემები"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"დაბლოკილი ნომრები"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> უკვე დაბლოკილია."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ანგარიშების გამოძახება"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ჩართვა"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ნებართვების დაყენება"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"სწრაფი აკრეფის გასააქტიურებლად, ჩართეთ კონტაქტების ნებართვა."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ზარების ჟურნალის სანახავად, ჩართეთ ტელეფონის ნებართვა."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"კონტაქტების სანახავად, ჩართეთ კონტაქტების ნებართვა."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ხმოვან ფოსტაზე წვდომისთვის, ჩართეთ ტელეფონის ნებართვა."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"თქვენი კონტაქტების მოსაძებნად ჩართეთ კონტაქტების ნებართვები."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ზარის განსახორციელებლად, ჩართეთ ტელეფონის ნებართვა."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"სპამი"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ხაზგარეშეა და ვერ დაუკავშირდებით"</string>
     <string name="about_phone_label" msgid="582991354677973731">"აპის შესახებ"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"ნახვა"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"ზარი წაიშალა. ამ ზარის დროს გაზიარებული დანართები იხილეთ და წაშალეთ Messages-ში."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"ზარები წაიშალა. ამ ზარის დროს გაზიარებული დანართები იხილეთ და წაშალეთ Messages-ში."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-kk/strings.xml b/java/com/android/dialer/app/res/values-kk/strings.xml
index ba42386..5d911cb 100644
--- a/java/com/android/dialer/app/res/values-kk/strings.xml
+++ b/java/com/android/dialer/app/res/values-kk/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Күтуді қосу"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Параметрлер"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Жаңа пайдаланушы интерфейсінің пернелер тіркесімін жасау"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Барлық контактілер"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Сенсорлы әуенді пернетақта"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Қосылып тұрған қоңырауға оралу"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Қоңырау қосу"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Келген қоңыраулар"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Жаппай әрекет режиміне өту"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Жаппай әрекет режиімінен шығу"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> таңдалды"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> таңдауы алынды"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Дауыс-хабарды ойнату"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> контактісін көру"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> нөміріне қоңырау шалу"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Дауыстық пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин <xliff:g id="SECONDS">%s</xliff:g> сек"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"дауыстық хабар"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"дауыстық хабарлар"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Иә"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Жоқ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Топтама әрекеттер режимін жабу"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Жою"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Жабу"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Таңдалған <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> хабарларын жою қажет пе?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> таңдалды"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Осы дауыстық хабарларды жою қажет пе? "</b>"</item>
+      <item quantity="one">"<b>"Осы дауыстық хабарды жою қажет пе? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID (ұялы жабдық анықтағыш)"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM картасынан жүктеу…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM картасының контактілері"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Контактілер қолданбасы қол жетімді емес"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Дауыс арқылы іздеу қол жетімді емес"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Телефон қоңырауын шалу мүмкін емес, өйткені «Телефон» қолданбасы өшірілген."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Контактілерді іздеу"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> жаңа қабылданбаған қоңыраулар"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Жылдам теруде әлі ешкім жоқ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Таңдаулыны қосу"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Әлі ешқандай контактілер жоқ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Контакт қосу"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Барлық нөмірлерді көру үшін кескінді түртіңіз, ал ретін өзгерту үшін түртіп, ұстап тұрыңыз"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Алып тастау"</string>
+    <string name="select_all" msgid="408601760696146245">"Барлығын таңдау"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Бейне қоңырау"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Хабар жіберу"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Қоңырау мәліметтері"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Бөгелген нөмірлер"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> бөгеліп қойылған."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Қоңырау шалу есептік жазбалары"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Қосу"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Рұқсаттар орнату"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Жылдам теруді қосу үшін \"Контактілер\" рұқсатын қосыңыз."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Қоңыраулар журналы көру үшін \"Телефон\" рұқсатын қосыңыз."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Контактілерді көру үшін \"Контактілер\" рұқсатын қосыңыз."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Дауыс поштасына қатынасу үшін \"Телефон\" рұқсатын қосыңыз."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Контактілерді іздеу үшін \"Контактілер\" рұқсаттарын қосыңыз."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Қоңырауды шалу үшін \"Телефон\" рұқсатын қосыңыз."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> желіден тыс және байланысу мүмкін емес"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Мәліметтер"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Көру"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Қоңырау жойылды. Осы қоңырау кезінде жіберілген тіркемелерді \"Хабарлар\" бөлімінен тауып жойыңыз."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Қоңыраулар жойылды. Осы қоңыраулар кезінде жіберілген тіркемелерді \"Хабарлар\" бөлімінен тауып жойыңыз."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-km/strings.xml b/java/com/android/dialer/app/res/values-km/strings.xml
index bdc91cf..aa619ad 100644
--- a/java/com/android/dialer/app/res/values-km/strings.xml
+++ b/java/com/android/dialer/app/res/values-km/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"បញ្ចូល​ការ​រង់ចាំ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ការកំណត់"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"កម្មវិធីធ្វើ​ដូច​មែនទែន"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"បង្កើត​ផ្លូវកាត់ UI ថ្មី"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ទំនាក់ទំនង​ទាំងអស់"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ប្រើ​សំឡេង​ប៉ះ​បន្ទះ​លេខ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"កំពុង​ត្រឡប់​ទៅកាន់​ការ​ហៅ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"បន្ថែម​ការ​ហៅ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ការ​ហៅ​ចូល"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ចូល​មុខងារ​សកម្មភាព​ច្រើន"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"បាន​ចាកចេញ​ពី​មុខងារ​សកម្មភាព​ច្រើន"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"បាន​ជ្រើសរើស <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"បាន​ដក​ការជ្រើសរើស <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ចាក់​សារ​ជា​សំឡេង"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"មើល​ទំ​នាក់ទំនង <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"ហៅ <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"សារ​ជា​សំឡេង"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> វិនាទី"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> នាទី <xliff:g id="SECONDS">%s</xliff:g> វិនាទី"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"សារ​ជា​សំឡេង"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"សារ​ជា​សំឡេង"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"បាទ/ចាស"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ទេ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"បោះបង់​មុខងារ​សកម្មភាព​ជា​ក្រុម"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"លុប"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"បោះបង់"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"លុប <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ដែល​បាន​ជ្រើសរើស?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"បាន​ជ្រើសរើស <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"លុប​សារ​ជា​សំឡេង​ទាំងនេះ? "</b>"</item>
+      <item quantity="one">"<b>"លុប​សារ​ជា​សំឡេង​នេះ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> នៅម៉ោង <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"កំពុង​ផ្ទុក​ពី​ស៊ីម​កាត..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"ទំនាក់ទំនង​នៅ​ក្នុង​ស៊ីម​កាត"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"មិនមានកម្មវិធីទំនាក់ទំនងទេ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ការស្វែងរកជាសម្លេងមិនមានទេ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"មិន​អាច​ហៅ​បាន​ទេ​ ព្រោះ​កម្មវិធី​ទូរស័ព្ទ​ត្រូវ​បាន​បិទ។"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"រក​ទំនាក់ទំនង"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"ខកខាន​ទទួល​ថ្មី <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"គ្មាននរណាម្នាក់នៅក្នុងការហៅរហ័សរបស់អ្នកនៅឡើយទេ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"បញ្ចូលសំណព្វ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"អ្នកមិនទាន់មានទំនាក់ទំនងនៅឡើយទេ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"បន្ថែមទំនាក់ទំនង"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ប៉ះរូបភាពដើម្បីមើលលេខទាំងអស់ ឬប៉ះ &amp; សង្កត់ឲ្យជាប់ដើម្បីតម្រៀបឡើងវិញ"</string>
     <string name="remove_contact" msgid="2353580570488923668">"លុបចេញ"</string>
+    <string name="select_all" msgid="408601760696146245">"ជ្រើសរើស​​ទាំងអស់"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ហៅជាវីដេអូ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ផ្ញើសារ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ព័ត៌មានលម្អិតអំពីការហៅ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"លេខបានរារាំង"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ត្រូវបានទប់ស្កាត់រួចហើយ"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"គណនីហៅទូរសព្ទ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"បើក"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"កំណត់សិទ្ធិអនុញ្ញាត"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ដើម្បីបើកដំណើរការហៅរហ័ស សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីទំនាក់ទំនង។"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ដើម្បីមើលកំណត់ហេតុហៅទូរស័ព្ទរបស់អ្នក សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីហៅទូរស័ព្ទ។"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ដើម្បីមើលទំនាក់ទំនងរបស់អ្នក សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីទំនាក់ទំនង។"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ដើម្បីចូលដំណើរការសារជាសំឡេងរបស់អ្នក សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីហៅទូរស័ព្ទ។"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ដើម្បីស្វែងរកទំនាក់ទំនងរបស់អ្នក សូមបើកសិទ្ធិអនុញ្ញាតទំនាក់ទំនង។"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ដើម្បីធ្វើការហៅទូរស័ព្ទ សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីហៅទូរស័ព្ទ។"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"សារ​ឥតបានការ"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> មិន​នៅ​លើ​អ៊ីនធឺណិត និង​មិន​អាច​ទាក់ទង​បាន​ទេ"</string>
     <string name="about_phone_label" msgid="582991354677973731">"អំពី"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"មើល"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"បាន​លុប​ការហៅទូរសព្ទ។ មើល និង​លុប​ឯកសារ​ភ្ជាប់​ដែល​បាន​ចែករំលែក​នៅ​អំឡុង​ពេល​ហៅ​ទូរសព្ទ​នេះ​នៅ​ក្នុង Messages ។"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"បាន​លុប​ការហៅទូរសព្ទ។ មើល និង​លុប​ឯកសារ​ភ្ជាប់​ដែល​បាន​ចែករំលែក​នៅ​អំឡុង​ពេល​ហៅ​ទូរសព្ទ​នៅ​ក្នុង Messages ។"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-kn/strings.xml b/java/com/android/dialer/app/res/values-kn/strings.xml
index dae544d..3e578f2 100644
--- a/java/com/android/dialer/app/res/values-kn/strings.xml
+++ b/java/com/android/dialer/app/res/values-kn/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"ನಿರೀಕ್ಷೆಯನ್ನು ಸೇರಿಸಿ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"ಸಿಮ್ಯುಲೇಟರ್"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ಹೊಸ UI ಶಾರ್ಟ್‌ಕಟ್ ರಚಿಸಿ"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ಎಲ್ಲಾ ಸಂಪರ್ಕಗಳು"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ಸ್ಪರ್ಶ ಟೋನ್ ಕೀಪ್ಯಾಡ್ ಬಳಸಿ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ಪ್ರತ್ಯತ್ತರ ಕರೆಯು ಪ್ರಗತಿಯಲ್ಲಿದೆ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ಕರೆಯನ್ನು ಸೇರಿಸಿ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ಒಳಬರುವ ಕರೆಗಳು"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ದೊಡ್ಡ ಪ್ರಮಾಣದ ಕ್ರಿಯೆಯ ಮೋಡ್‌ಗೆ ಪ್ರವೇಶಿಸಲಾಗುತ್ತಿದೆ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ದೊಡ್ಡ ಪ್ರಮಾಣದ ಕ್ರಿಯೆಯ ಮೋಡ್ ತೊರೆಯಲಾಗಿದೆ"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ಆಯ್ಕೆಮಾಡಲಾಗಿದೆ"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ಆಯ್ಕೆಯನ್ನು ರದ್ದುಮಾಡಲಾಗಿದೆ"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ಧ್ವನಿಮೇಲ್‌ ಪ್ಲೇ ಮಾಡಿ"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> ಸಂಪರ್ಕ ವೀಕ್ಷಿಸಿ"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ಕರೆ ಮಾಡಿ"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ಧ್ವನಿಮೇಲ್"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ಸೆಕೆಂ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> ನಿಮಿ <xliff:g id="SECONDS">%s</xliff:g> ಸೆಕೆಂ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ಧ್ವನಿಮೇಲ್"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ಧ್ವನಿಮೇಲ್‌ಗಳು"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ಹೌದು"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ಇಲ್ಲ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ಬ್ಯಾಚ್ ಕ್ರಿಯೆಗಳ ಮೋಡ್ ಅನ್ನು ರದ್ದುಮಾಡಿ"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ಅಳಿಸಿ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ರದ್ದುಮಾಡಿ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ಆಯ್ಕೆ ಮಾಡಲಾದ <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ಅನ್ನು ಅಳಿಸುವುದೇ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ಆಯ್ಕೆಮಾಡಲಾಗಿದೆ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"ಈ ಧ್ವನಿಮೇಲ್‌ಗಳನ್ನು ಅಳಿಸುವುದೇ? "</b>"</item>
+      <item quantity="other">"<b>"ಈ ಧ್ವನಿಮೇಲ್‌ಗಳನ್ನು ಅಳಿಸುವುದೇ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ರಂದು <xliff:g id="TIME">%2$s</xliff:g> ಗಂಟೆಗೆ"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"ಸಿಮ್‌ ಕಾರ್ಡ್‌ನಿಂದ ಲೋಡ್‌ ಮಾಡಲಾಗುತ್ತಿದೆ…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"ಸಿಮ್‌ ಕಾರ್ಡ್‌ ಸಂಪರ್ಕಗಳು"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ಯಾವುದೇ ಸಂಪರ್ಕಗಳ ಅಪ್ಲಿಕೇಶನ್‌ ಲಭ್ಯವಿಲ್ಲ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ಧ್ವನಿ ಹುಡುಕಾಟ ಲಭ್ಯವಿಲ್ಲ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ಫೋನ್ ಅಪ್ಲಿಕೇಶನ್ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿರುವುದರಿಂದ ಫೋನ್ ಕರೆ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ಸಂಪರ್ಕಗಳನ್ನು ಹುಡುಕಿ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ಹೊಸ ಮಿಸ್ಡ್‌ ಕರೆಗಳು"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ನಿಮ್ಮ ತ್ವರಿತ ಡಯಲ್‌ನಲ್ಲಿ ಇದುವರೆಗೆ ಯಾರೂ ಇಲ್ಲ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ಮೆಚ್ಚಿನದನ್ನು ಸೇರಿಸಿ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ನೀವು ಇನ್ನೂ ಯಾವುದೇ ಸಂಪರ್ಕಗಳನ್ನು ಹೊಂದಿಲ್ಲ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ಸಂಪರ್ಕ ಸೇರಿಸಿ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ಎಲ್ಲಾ ಸಂಖ್ಯೆಗಳನ್ನು ನೋಡಲು ಚಿತ್ರವನ್ನು ಸ್ಪರ್ಶಿಸಿ ಅಥವಾ ಮರುಕ್ರಮಗೊಳಿಸಲು ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಹೋಲ್ಡ್‌‌ ಮಾಡಿ"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ತೆಗೆದುಹಾಕು"</string>
+    <string name="select_all" msgid="408601760696146245">"ಎಲ್ಲವನ್ನೂ ಆಯ್ಕೆ ಮಾಡಿ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ಸಂದೇಶ ಕಳುಹಿಸಿ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ಕರೆಯ ವಿವರಗಳು"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ನಿರ್ಬಂಧಿಸಲಾದ ಸಂಖ್ಯೆಗಳು"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ಈಗಾಗಲೇ ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ಕರೆ ಮಾಡುವ ಖಾತೆಗಳು"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ಆನ್‌ ಮಾಡಿ"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ಅನುಮತಿಗಳನ್ನು ಹೊಂದಿಸು"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ವೇಗ ಡಯಲ್ ಸಕ್ರಿಯಗೊಳಿಸಲು, ಸಂಪರ್ಕಗಳ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ನಿಮ್ಮ ಕರೆಯ ಲಾಗ್ ಅನ್ನು ವೀಕ್ಷಿಸಲು, ಫೋನ್ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ನಿಮ್ಮ ಸಂಪರ್ಕಗಳನ್ನು ವೀಕ್ಷಿಸಲು, ಸಂಪರ್ಕಗಳ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ನಿಮ್ಮ ಧ್ವನಿಮೇಲ್ ಪ್ರವೇಶಿಸಲು, ಫೋನ್ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ನಿಮ್ಮ ಸಂಪರ್ಕಗಳನ್ನು ಹುಡುಕಲು, ಸಂಪರ್ಕಗಳ ಅನುಮತಿಗಳನ್ನು ಆನ್ ಮಾಡಿ."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ಕರೆ ಮಾಡಲು, ಫೋನ್ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"ಸ್ಪ್ಯಾಮ್"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ಆಫ್‌ಲೈನ್ ಆಗಿದ್ದಾರೆ ಮತ್ತು ಅವರನ್ನು ತಲುಪಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ"</string>
     <string name="about_phone_label" msgid="582991354677973731">"ಕುರಿತು"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"ವೀಕ್ಷಿಸಿ"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"ಕರೆ ಅಳಿಸಲಾಗಿದೆ. ಈ ಕರೆಯ ಸಮಯದಲ್ಲಿ ಸಂದೇಶಗಳಲ್ಲಿ ಹಂಚಿಕೊಳ್ಳಲಾದ ಲಗತ್ತುಗಳನ್ನು ವೀಕ್ಷಿಸಿ ಮತ್ತು ಅಳಿಸಿ."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"ಕರೆಗಳನ್ನು ಅಳಿಸಲಾಗಿದೆ. ಈ ಕರೆಗಳನ್ನು ಮಾಡುವ ಸಮಯದಲ್ಲಿ ಸಂದೇಶಗಳಲ್ಲಿ ಹಂಚಿಕೊಳ್ಳಲಾದ ಲಗತ್ತುಗಳನ್ನು ವೀಕ್ಷಿಸಿ ಮತ್ತು ಅಳಿಸಿ."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ko/strings.xml b/java/com/android/dialer/app/res/values-ko/strings.xml
index 1850b6c..8a45c2b 100644
--- a/java/com/android/dialer/app/res/values-ko/strings.xml
+++ b/java/com/android/dialer/app/res/values-ko/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"대기 시간 추가"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"설정"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"시뮬레이터"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"새 UI 바로가기 만들기"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"모든 연락처"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"터치톤 키패드 사용"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"진행 중인 통화로 돌아가기"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"통화 추가"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"수신전화"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"일괄 작업 모드 시작 중"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"일괄 작업 모드 종료됨"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> 선택됨"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> 선택 취소됨"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"음성사서함 재생"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g>님의 연락처 보기"</string>
     <string name="description_call" msgid="1532402285334775372">"전화걸기: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"음성사서함"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g>초"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g>분 <xliff:g id="SECONDS">%s</xliff:g>초"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"음성사서함"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"음성사서함"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"예"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"아니요"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"일괄 작업 모드 취소"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"삭제"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"취소"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"선택한 <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>을(를) 삭제하시겠습니까?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g>개 선택됨"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"이 음성사서함을 삭제하시겠습니까? "</b>"</item>
+      <item quantity="one">"<b>"이 음성사서함을 삭제하시겠습니까? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>분 <xliff:g id="SECONDS">%2$02d</xliff:g>초"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM 카드에서 로딩 중..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM 카드 주소록"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"사용할 수 있는 주소록 앱이 없습니다."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"음성검색이 지원되지 않습니다."</string>
     <string name="call_not_available" msgid="7850148370757361155">"전화 애플리케이션을 사용 중지했으므로 전화를 걸 수 없습니다."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"주소록 검색"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"새로운 부재중 전화 <xliff:g id="NUMBER">%s</xliff:g>건"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"아직 단축 다이얼이 설정된 연락처가 없습니다."</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"단축 다이얼 추가"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"아직 연락처가 없습니다."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"연락처 추가"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"이미지를 터치하여 모든 번호를 확인하거나 길게 터치하여 재정렬합니다."</string>
     <string name="remove_contact" msgid="2353580570488923668">"삭제"</string>
+    <string name="select_all" msgid="408601760696146245">"모두 선택"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"화상 통화"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"메시지 보내기"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"통화 세부정보"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"차단된 번호"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g>번은 이미 차단되었습니다."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"통화 계정"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"사용"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"권한 설정"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"단축번호를 사용하려면 주소록 권한을 사용하도록 설정하세요."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"통화 기록을 보려면 전화 권한을 사용하도록 설정하세요."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"주소록을 보려면 주소록 권한을 사용하도록 설정하세요."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"음성사서함에 액세스하려면 전화 권한을 사용하도록 설정하세요."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"주소록을 검색하려면 주소록 권한을 사용하도록 설정하세요."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"전화를 걸려면 전화 권한을 사용하도록 설정하세요."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"스팸"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g>님은 오프라인 상태이며 연락할 수 없습니다."</string>
     <string name="about_phone_label" msgid="582991354677973731">"정보"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"보기"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"통화가 삭제되었습니다. 메시지에서 이 통화 중에 공유된 첨부파일을 확인하고 삭제하세요."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"통화가 삭제되었습니다. 메시지에서 통화 중에 공유된 첨부파일을 확인하고 삭제하세요."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ky/strings.xml b/java/com/android/dialer/app/res/values-ky/strings.xml
index 9e80e29..9062101 100644
--- a/java/com/android/dialer/app/res/values-ky/strings.xml
+++ b/java/com/android/dialer/app/res/values-ky/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Тыныгуу кошуу"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Жөндөөлөр"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Жаңы интерфейс үчүн кыска жол түзүү"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Бардык байланыштар"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Тоналдык терүү тактасын колдонуу"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Токтотулган чалууга кайтуу"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Чалууну кошуу"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Кирүүчү чалуулар"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Жапырт аракет режимине кирдиңиз"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Жапырт аракет режиминен чыктыңыз"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> объект тандалды"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> объект тандоодон чыгарылды"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Үнкатты угуу"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Байланышты кароо <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Чалуу <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Үн почтасы"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мүн. <xliff:g id="SECONDS">%s</xliff:g> сек."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"үн почтасы"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"үн почталары"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ооба"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Жок"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Жапырт аракет режимин жокко чыгаруу"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Жок кылуу"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Жокко чыгаруу"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Тандалган <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> жок кылынсынбы?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> тандалды"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Бул үн почталар жок кылынсынбы? "</b>"</item>
+      <item quantity="one">"<b>"Бул үн почта жок кылынсынбы? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> саат <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM картадан жүктөлүүдө..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM картадагы байланыштар"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Жеткиликтүү байланыштар колдонмосу жок"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Үн менен издөө жеткиликтүү эмес"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Телефон колдонмосу өчүрүлгөндүктөн, чалуу мүмкүн болбой жатат."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Байланыштарды издөө"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> жаңы өткөзүлгөн чалуу"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Азырынча тез териле турган номерлер жок"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Сүйүктүү номер кошуу"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Азырынча бир дагы байланышыңыз жок"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Байланыш кошуу"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Бардык номерлерди көрүү үчүн, сүрөткө тийип коюңуз же коё бербей басып туруп иретин өзгөртсөңүз болот."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Алып салуу"</string>
+    <string name="select_all" msgid="408601760696146245">"Баарын тандоо"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видео чалуу"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Билдирүү жөнөтүү"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Чалуунун чоо-жайы"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Бөгөттөлгөн номерлер"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> мурунтан эле бөгөттөлгөн."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Чалуу каттоо эсептери"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Күйгүзүү"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Уруксаттарды берүү"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Тез терүүнү иштетүү үчүн, \"Байланыштар\" колдонмосуна уруксат бериңиз."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Чалуулар таржымалыңызды көрүү үчүн, \"Телефон\" колдонмосуна уруксат бериңиз."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Байланыштар тизмесин көрүү үчүн, \"Байланыштар\" колдонмосуна уруксат бериңиз."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Үн почтаңызга кирүү үчүн, \"Телефон\" колдонмосуна уруксат бериңиз."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Байланыштарыңызды издөө үчүн, Байланыштарга уруксатты күйгүзүңүз."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Чалуу үчүн, \"Телефон\" колдонмосуна уруксат бериңиз."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> оффлайн режиминде болгондуктан, байланышууга болбойт"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Колдонмо жөнүндө"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Карап көрүү"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Чалуу жок кылынды. Билдирүүлөр колдонмосунда чалуу убагында жөнөтүлгөн файлдарды текшерип, жок кылыңыз."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Чалуулар жок кылынды. Билдирүүлөр колдонмосунда чалуулар убагында жөнөтүлгөн файлдарды текшерип, жок кылыңыз."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-lo/strings.xml b/java/com/android/dialer/app/res/values-lo/strings.xml
index 8284e8d..91912c9 100644
--- a/java/com/android/dialer/app/res/values-lo/strings.xml
+++ b/java/com/android/dialer/app/res/values-lo/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"ເພີ່ມການລໍຖ້າ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ການ​ຕັ້ງ​ຄ່າ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"ຕົວຈຳລອງ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ສ້າງປຸ່ມລັດສ່ວນຕິດຕໍ່ຜູ້ໃຊ້ໃໝ່"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ລາຍຊື່ຜູ່ຕິດຕໍ່ທັງໝົດ"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ໃຊ້ປຸ່ມກົດສັນຍານສຽງ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ກັບໄປການໂທທີ່ກຳລັງດຳເນີນຢູ່"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ເພີ່ມການໂທ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ສາຍໂທເຂົ້າ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ກຳລັງເຂົ້າໂໝດຄຳສັ່ງຈຳນວນຫຼາຍ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ອອກຈາກໂໝດຄຳສັ່ງຈຳນວນຫຼາຍແລ້ວ"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"ເລືອກ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ແລ້ວ"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"ເຊົາເລືອກ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ແລ້ວ"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ເປີດຂໍ້ຄວາມສຽງ"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"ເບິ່ງລາຍຊື່ຜູ່ຕິດຕໍ່ <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"ໂທຫາ <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ຂໍ້ຄວາມສຽງ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ວິນາທີ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> ນ​ທ <xliff:g id="SECONDS">%s</xliff:g> ວິ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ຂໍ້ຄວາມສຽງ"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ຂໍ້ຄວາມສຽງ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ແມ່ນແລ້ວ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ບໍ່"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ຍົກເລີກໂໝດຄຳສັ່ງເປັນຊຸດ"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ລຶບ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ຍົກເລີກ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ລຶບ <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ທີ່ເລືອກອອກໄປບໍ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"ເລືອກ <xliff:g id="NUMBER">%1$s</xliff:g> ລາຍການແລ້ວ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ລຶບຂໍ້ຄວາມສຽງເຫຼົ່ານີ້ບໍ? "</b>"</item>
+      <item quantity="one">"<b>"ລຶບຂໍ້ຄວາມສຽງນີ້ບໍ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ເວລາ <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"ກຳລັງໂຫລດຈາກ SIM card..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"ລາຍຊື່ຜູ່ຕິດຕໍ່ SIM card"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ບໍ່​ມີ​ແອັບຯ​ລາຍ​ຊື່​ຕິດ​ຕໍ່​ຢູ່"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ບໍ່​ມີ​ການ​ຊອກ​ຫາ​ດ້ວຍ​ສຽງ​ຢູ່"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ບໍ່​ສາ​ມາດ​ໂທ​ໄດ​້​ເນື່ອງ​ຈາກ​ແອັບ​ພ​ລິ​ເຄ​ຊັນ​ໂທ​ລະ​ສັບ​ຖືກ​ປິດ​ການ​ນຳ​ໃຊ້​ໄວ້."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ຊອກຫາລາຍຊື່ຜູ່ຕິດຕໍ່"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ສາຍທີ່ບໍ່ໄດ້ຮັບໃໝ່"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ບໍ່​ມີ​ຜູ້​ໃດ​ຢູ່​ໃນ​ການ​ໂທ​ດ່ວນ​ຂອງ​ທ່ານ​ເທື່ອ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ເພີ່ມ​ລາຍ​ການ​ທີ່​ມັກ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ທ່ານ​ບໍ່​ມີ​ລາຍ​ຊື່​ໃດ​ເທື່ອ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ເພີ່ມ​ລາຍ​ຊື່"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ແຕະຮູບເພື່ອເບິ່ງເບີໂທທັງໝົດ ຫຼື ແຕະຄ້າງໄວ້ເພື່ອຈັດລຳດັບໃໝ່"</string>
     <string name="remove_contact" msgid="2353580570488923668">"​ລຶບ​ອອກ"</string>
+    <string name="select_all" msgid="408601760696146245">"ເລືອກທັງໝົດ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"​ໂທ​ດ້ວຍ​ວິ​ດີ​ໂອ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ສົ່ງຂໍ້ຄວາມ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ລາຍລະອຽດ​ການໂທ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ເບີໂທລະສັບທີ່ບລັອກໄວ້"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ຖືກ​ບ​ລັອກ​ແລ້ວ."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ບັນ​ຊີ​ໂທ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ເປີດ​"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ຕັ້ງ​ການ​ອະ​ນຸ​ຍາດ"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ເພື່ອ​ເປີດ​ໃຊ້​ງານ​ການໂທດ່ວນ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ລາຍ​ຊື່."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ເພື່ອ​ເບິ່ງ​ບັນ​ທຶກ​ການ​ໂທ​ຂອງ​ທ່ານ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ໂທ​ລະ​ສັບ."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ເພື່ອ​ເບິ່ງ​ລາຍ​ຊື່​ຂອງ​ທ່ານ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ລາຍ​ຊື່"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ເພື່ອ​ເຂົ້າ​ຫາ​ຂໍ້​ຄວາມ​ສຽງ​ຂອງ​ທ່ານ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ໂທ​ລະ​ສັບ."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ເພື່ອຄົ້ນຫາລາຍາຊື່ຂອງທ່ານ, ໃຫ້ເປີດການອະນຸຍາດລາຍຊື່."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ເພື່ອ​ເຮັດການໂທ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ໂທ​ລະ​ສັບ."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"ສະແປມ"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ອອບລາຍຢູ່ ແລະ ບໍ່ສາມາດຕິດຕໍ່ຫາໄດ້"</string>
     <string name="about_phone_label" msgid="582991354677973731">"ກ່ຽວກັບ"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"ເບິ່ງ"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"ລຶບການໂທແລ້ວ. ເບິ່ງ ແລະ ລຶບໄຟລ໌ແນບທີ່ແບ່ງປັນໃນລະຫວ່າງການໂທນີ້ຢູ່ Messages ໄດ້."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"ລຶບການໂທແລ້ວ. ເບິ່ງ ແລະ ລຶບໄຟລ໌ແນບທີ່ແບ່ງປັນໃນລະຫວ່າງການໂທຕ່າງໆຢູ່ Messages ໄດ້."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-lt/strings.xml b/java/com/android/dialer/app/res/values-lt/strings.xml
index a346d5d..ae771df 100644
--- a/java/com/android/dialer/app/res/values-lt/strings.xml
+++ b/java/com/android/dialer/app/res/values-lt/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Pridėti laukimą"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Nustatymai"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simuliatorius"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Sukurti naują NS spart. klav."</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Visi kontaktai"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Naudoti jutiklinę klaviatūrą"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Grįžti prie vykdomo skambučio"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Pridėti skambutį"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Gaunami skambučiai"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Įjungiamas masinių veiksmų režimas"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Masinių veiksmų režimas išjungtas"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Pasirinkta: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Pasirinkimas atšauktas: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Paleisti balso pašto pranešimus"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Žiūrėti kontaktą <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Skambinti <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Balso paštas"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"balso pašto praneš."</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"balso pašto praneš."</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Taip"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Atšaukti masinių veiksmų režimą"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Ištrinti"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Atšaukti"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Ištrinti pasir. <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Pasirinkta: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Ištrinti šiuos balso pašto pranešimus? "</b>"</item>
+      <item quantity="few">"<b>"Ištrinti šiuos balso pašto pranešimus? "</b>"</item>
+      <item quantity="many">"<b>"Ištrinti šiuos balso pašto pranešimus? "</b>"</item>
+      <item quantity="other">"<b>"Ištrinti šiuos balso pašto pranešimus? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Įkeliama iš SIM kortelės..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM kortelės adresatai"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nepasiekiama jokia kontaktų programa"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Paieška balsu nepasiekiama"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Negalima skambinti telefonu, nes Telefono programa išjungta."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Ieškoti adresatų"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Naujų praleistų skambučių: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Dar nieko neįtraukėte į sparčiojo rinkimo sąrašą"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Pridėti mėgstamiausią"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Dar neturite kontaktų"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Pridėti kontaktą"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Palieskite vaizdą, kad peržiūrėtumėte visus numerius, arba palieskite ir palaikykite, kad pertvarkytumėte"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Pašalinti"</string>
+    <string name="select_all" msgid="408601760696146245">"Pasirinkti viską"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Vaizdo skambutis"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Siųsti pranešimą"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Išsami skambučio informacija"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Užblokuoti numeriai"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> jau užblokuotas."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Skambinimo paskyros"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Įjungti"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Nustatyti leidimus"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Jei norite įgalinti spartųjį rinkimą, įjunkite Kontaktų programos leidimą."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Jei norite peržiūrėti skambučių žurnalą, įjunkite Telefono programos leidimą."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Jei norite peržiūrėti kontaktus, įjunkite Kontaktų programos leidimą."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Jei norite pasiekti balso paštą, įjunkite Telefono programos leidimą."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kad galėtumėte ieškoti kontaktų, įjunkite Kontaktų leidimus."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Jei norite paskambinti, įjunkite Telefono programos leidimą."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Šlamštas"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> yra neprisijungęs (-usi) ir su juo (ja) negalima susisiekti"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Apie"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Peržiūrėti"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Skambutis ištrintas. Peržiūrėkite ir ištrinkite priedus, kurie buvo bendrinti per šį skambutį programoje „Messages“."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Skambučiai ištrinti. Peržiūrėkite ir ištrinkite priedus, kurie buvo bendrinti per skambučius programoje „Messages“."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-lv/strings.xml b/java/com/android/dialer/app/res/values-lv/strings.xml
index 808d7bf..bb09373 100644
--- a/java/com/android/dialer/app/res/values-lv/strings.xml
+++ b/java/com/android/dialer/app/res/values-lv/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Pievienot gaidīšanu"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Iestatījumi"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulators"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Jaunās liet. saskarnes saīsne"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Visas kontaktpersonas"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Izmantot skārientoņu tastatūru"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Atgriezties pie pašreizējā zvana"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Pievienot zvanu"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Ienākošie zvani"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Tiek atvērts lielapjoma darbību režīms"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Tika aizvērts lielapjoma darbību režīms"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Atlasīt: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Noņemt atlasi: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Atskaņot balss pasta ziņojumu"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Skatīt kontaktpersonu <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Zvanīt: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Balss pasts"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"balss pasta ziņojums"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"balss pasta ziņojumi"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Jā"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nē"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Iziet no grupas darbību režīma"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Dzēst"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Atcelt"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vai dzēst atlasi: <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Atlasīti: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="zero">"<b>"Vai dzēst šos balss pasta ziņojumus? "</b>"</item>
+      <item quantity="one">"<b>"Vai dzēst šos balss pasta ziņojumus? "</b>"</item>
+      <item quantity="other">"<b>"Vai dzēst šos balss pasta ziņojumus? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> plkst. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Notiek ielāde no SIM kartes..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontaktpersonas SIM kartē"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nav pieejama neviena kontaktpersonu lietotne."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Meklēšana ar balsi nav pieejama."</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nevar veikt tālruņa zvanu, jo lietojumprogramma Tālrunis tika atspējota."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Meklēt kontaktpersonas"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Jauni neatbildēti zvani: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ātro zvanu sarakstā vēl nav nevienas kontaktpersonas."</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Pievienot izlasei"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Jums vēl nav nevienas kontaktpersonas."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Pievienot kontaktpersonu"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Pieskarieties attēlam, lai skatītu visus numurus, vai pieskarieties attēlam un turiet to, lai veiktu pārkārtošanu."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Noņemt"</string>
+    <string name="select_all" msgid="408601760696146245">"Atlasīt visu"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videozvans"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Sūtīt ziņojumu"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Informācija par zvanu"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Bloķētie numuri"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> jau ir bloķēts."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Zvanu konti"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ieslēgt"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Iestatīt atļaujas"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Lai iespējotu ātros zvanus, ieslēdziet atļauju Kontaktpersonas."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Lai skatītu zvanu žurnālu, ieslēdziet atļauju Tālrunis."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Lai skatītu kontaktpersonas, ieslēdziet atļauju Kontaktpersonas."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Lai piekļūtu balss pastam, ieslēdziet atļauju Tālrunis."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Lai meklētu savas kontaktpersonas, ieslēdziet atļauju Kontaktpersonas."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Lai veiktu zvanu, ieslēdziet atļauju Tālrunis."</string>
@@ -232,4 +238,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Nevēlami zvani"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Lietotājs <xliff:g id="NAME">%1$s</xliff:g> ir bezsaistē un nav sasniedzams"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Par"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Skatīt"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Zvans izdzēsts. Skatiet un dzēsiet pielikumus, kas kopīgoti šī zvana laikā, izmantojot lietotni Ziņojumi."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Zvani izdzēsti. Skatiet un dzēsiet pielikumus, kas kopīgoti šo zvanu laikā, izmantojot lietotni Ziņojumi."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-mk/strings.xml b/java/com/android/dialer/app/res/values-mk/strings.xml
index 6d2e533..ed0c03d 100644
--- a/java/com/android/dialer/app/res/values-mk/strings.xml
+++ b/java/com/android/dialer/app/res/values-mk/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Додај почекај"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Поставки"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулатор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Создај крат. за нов интерфејс"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Сите контакти"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Користи тастатура со звуци на допир"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Врати се на повик во тек"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Додај повик"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Дојдовни повици"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Влегувате во режим на групно дејство"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Излеговте од режим на групно дејство"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Избрано е <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Поништен е изборот на <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Преслушај говорна пошта"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Прикажи контакт <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Повикај <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Говорна пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин. <xliff:g id="SECONDS">%s</xliff:g> сек."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"говорна пошта"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"говорни пораки"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Да"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Не"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Откажи го режимот на групни дејства"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Избриши"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Откажи"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Да се избришат избраните <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Избрани се <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Да се избришат говорните пораки? "</b>"</item>
+      <item quantity="other">"<b>"Да се избришат говорните пораки? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> во <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Вчитување од SIM картичка..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакти од SIM картичка"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Не е достапна апликација за контакти"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Гласовното пребарување не е достапно"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Не може да се воспостави телефонски повик, бидејќи апликацијата Телефон е оневозможена."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Пребарај контакти"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> нови пропуштени повици"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Сè уште немате никого на брзо бирање"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Додај омилено"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Сè уште немате контакти"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Додај контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Допрете ја сликата за да ги видите сите броеви или допрете и држете за промена на редоследот"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Отстрани"</string>
+    <string name="select_all" msgid="408601760696146245">"Изберете ги сите"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видеоповик"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Испрати порака"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Детали на повик"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Блокирани броеви"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> веќе е блокиран."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Сметки за повикување"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Вклучи"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Постави дозволи"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"За да овозможите брзо бирање, вклучете ја дозволата за контакти."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"За да ја видите евиденцијата на повици, вклучете ја дозволата за телефон."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"За да ги видите контактите, вклучете ја дозволата за контакти."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"За да пристапите кон говорната пошта, вклучете ја дозволата за телефон."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"За да ги пребарувате контактите, вклучете ги дозволите за контакти."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"За да воспоставите повик, вклучете ја дозволата за телефон."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Контактот <xliff:g id="NAME">%1$s</xliff:g> е офлајн и недостапен"</string>
     <string name="about_phone_label" msgid="582991354677973731">"За"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Прикажи"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Повикот е избришан. За преглед и бришење на прилозите споделени во текот на разговоров, одете во „Пораки“."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Повиците се избришани. За преглед и бришење на прилозите споделени во текот на разговорите, одете во „Пораки“."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ml/strings.xml b/java/com/android/dialer/app/res/values-ml/strings.xml
index 91accf4..5cb1bc0 100644
--- a/java/com/android/dialer/app/res/values-ml/strings.xml
+++ b/java/com/android/dialer/app/res/values-ml/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"കാത്തിരിക്കൽ ചേർക്കുക"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ക്രമീകരണം"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"സിമുലേറ്റർ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"പുതിയ UI കുറുക്കുവഴി സൃഷ്‌ടിക്കുക"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"എല്ലാ കോൺടാക്റ്റുകളും"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ടച്ച് ടോൺ കീപാഡ് ഉപയോഗിക്കുക"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"വിളിച്ചുകൊണ്ടിരിക്കുന്ന കോളിലേക്ക് മടങ്ങുക"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"കോൾ ചേർക്കുക"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ഇൻകമിംഗ് കോളുകൾ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ബൾക്ക് പ്രവർത്തന മോഡിലേക്ക് പ്രവേശിക്കുന്നു"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ബൾക്ക് പ്രവർത്തന മോഡ് വിട്ടു"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> തിരഞ്ഞെടുത്തു"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> തിരഞ്ഞെടുത്തത് മാറ്റി"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"വോയ്‌സ്‌മെയിൽ പ്ലേ ചെയ്യുക"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> എന്ന കോൺടാക്റ്റ് കാണുക"</string>
     <string name="description_call" msgid="1532402285334775372">"വിളിക്കുക <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"വോയ്‌സ്‌മെയിൽ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> സെക്കൻഡ്"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> മി. <xliff:g id="SECONDS">%s</xliff:g> സെ."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"വോയ്‌സ്‌മെയിൽ"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"വോയ്‌സ്മെയിലുകൾ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"അതെ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ഇല്ല"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"\'ബാച്ച് പ്രവർത്തനങ്ങൾ\' മോഡ് റദ്ദാക്കുക"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ഇല്ലാതാക്കുക"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"റദ്ദാക്കൂ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"തിരഞ്ഞെടുത്ത <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ഇല്ലാതാക്കണോ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> എണ്ണം തിരഞ്ഞെടുത്തു"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ഈ വോയ്‌സ്‌മെയിലുകൾ ഇല്ലാതാക്കണോ? "</b>"</item>
+      <item quantity="one">"<b>"ഈ വോയ്‌സ്‌മെയിൽ ഇല്ലാതാക്കണോ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>-ന്"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"സിം കാർഡിൽ നിന്നും ലോഡുചെയ്യുന്നു…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"സിം കാർഡ് കോൺടാക്റ്റുകൾ"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"കോൺടാക്റ്റ് അപ്ലിക്കേഷനൊന്നും ലഭ്യമല്ല"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"വോയ്‌സ് തിരയൽ ലഭ്യമല്ല"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ഫോൺ അപ്ലിക്കേഷൻ പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നതിനാൽ ഫോൺ കോൾ ചെയ്യാനാകില്ല."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"കോണ്‍‌ടാക്റ്റുകള്‍ തിരയുക"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> പുതിയ മിസ്‌ഡ് കോളുകൾ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ഇതുവരെ ആരും നിങ്ങളുടെ സ്പീഡ് ഡയലിൽ ഇല്ല"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"പ്രിയപ്പെട്ടത് ചേർക്കുക"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"നിങ്ങൾക്ക് ഇതുവരെയും കോൺടാക്റ്റുകൾ ഒന്നുമില്ല."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ഒരു കോണ്‍ടാക്റ്റ് ചേര്‍ക്കുക"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"എല്ലാ നമ്പറുകളും കാണാൻ ചിത്രം സ്‌പർശിക്കുക അല്ലെങ്കിൽ വീണ്ടും ക്രമീകരിക്കാൻ സ്‌പർശിച്ച് പിടിക്കുക"</string>
     <string name="remove_contact" msgid="2353580570488923668">"നീക്കംചെയ്യുക"</string>
+    <string name="select_all" msgid="408601760696146245">"എല്ലാം തിരഞ്ഞെടുക്കുക"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"വീഡിയോ കോള്‍"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ഒരു സന്ദേശം അയയ്‌ക്കുക"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"കോൾ വിശദാംശങ്ങൾ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ബ്ലോക്കുചെയ്ത നമ്പറുകൾ"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"ഇതിനകം തന്നെ <xliff:g id="NUMBER">%1$s</xliff:g> ബ്ലോക്കുചെയ്തിരിക്കുന്നു"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"കോളിംഗ് അക്കൗണ്ട്"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ഓണാക്കുക"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"അനുമതികൾ സജ്ജമാക്കുക"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"സ്പീഡ് ഡയൽ പ്രവർത്തനക്ഷമാക്കുന്നതിന്, \'കോൺടാക്റ്റുകൾ\' അനുമതി ഓണാക്കുക."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"നിങ്ങളുടെ കോൾ ലോഗ് കാണുന്നതിന്, \'ഫോൺ\' അനുമതി ഓണാക്കുക."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"നിങ്ങളുടെ കോൺടാക്റ്റുകൾ കാണുന്നതിന്, \'കോൺടാക്റ്റുകൾ\' അനുമതി ഓണാക്കുക."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"നിങ്ങളുടെ വോയ്‌സ്‌മെയിൽ ആക്സസ് ചെയ്യുന്നതിന്, \'ഫോൺ\' അനുമതി ഓണാക്കുക."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"നിങ്ങളുടെ കോൺടാക്റ്റുകൾ തിരയുന്നതിന് കോൺടാക്റ്റുകൾക്കുള്ള അനുമതികൾ ഓണാക്കുക."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"കോൾ വിളിക്കുന്നതിന്, \'ഫോൺ\' അനുമതി ഓണാക്കുക."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"സ്‌പാം"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ഓഫ്‌ലൈനായതിനാൽ കോൾ ചെയ്യാനാവില്ല"</string>
     <string name="about_phone_label" msgid="582991354677973731">"ആമുഖം"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"കാണുക"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"കോൾ ഇല്ലാതാക്കി. ഈ കോൾ ചെയ്യുമ്പോൾ പങ്കിട്ട അറ്റാച്ച്‌മെന്റുകൾ മെസേജിൽ കാണുകയും ഇല്ലാതാക്കുകയും ചെയ്യുക."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"കോളുകൾ ഇല്ലാതാക്കി. ഈ കോളുകൾ ചെയ്യുമ്പോൾ പങ്കിട്ട അറ്റാച്ച്‌മെന്റുകൾ മെസേജിൽ കാണുകയും ഇല്ലാതാക്കുകയും ചെയ്യുക."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-mn/strings.xml b/java/com/android/dialer/app/res/values-mn/strings.xml
index a07a826..e48c9b7 100644
--- a/java/com/android/dialer/app/res/values-mn/strings.xml
+++ b/java/com/android/dialer/app/res/values-mn/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Хүлээлт нэмэх"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Тохиргоо"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Шинэ UI үүсгэх товчлол"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Бүх харилцагчид"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Хүрэлтээр дуугардаг гар ашиглах"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Үргэлжилж буй дуудлага руу буцах"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Дуудлага нэмэх"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Ирж буй дуудлага"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Багц үйлдлийн горимд орж байна"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Багц үйлдлийн горимоос гарсан"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> сонгосон"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> сонголтыг болиулсан"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Дуут шууданг тоглуулах"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> харилцагчийг харах"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> руу залгах"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Дуут шуудан"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> минут <xliff:g id="SECONDS">%s</xliff:g> секунд"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"дуут шуудан"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"дуут шуудан"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Тийм"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Үгүй"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Багц үйлдлийн горимыг цуцлах"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Устгах"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Цуцлах"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Сонгосон <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>-г устгах уу?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> сонгосон"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Эдгээр дуут шууданг устгах уу? "</b>"</item>
+      <item quantity="one">"<b>"Энэ дуут шууданг устгах уу? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g>-д"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM картаас уншиж байна…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM картны харилцагчид"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ямар ч харилцагчдын апликейшн байхгүй байна."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Дуут хайлт хийх боломжгүй байна"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Утас аппликешныг идэвхгүйжүүлсэн тул утасны дуудлага хийх боломжгүй."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Харилцагчдаас хайх"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> шинэ аваагүй дуудлага"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Таны яаралтай залгах тохиргоон дээр одоогоор харилцагч байхгүй байна"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Таалагдсан хэсэгт нэмэх"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Танд одоогоор харилцагч байхгүй байна"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Харилцагч нэмэх"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Бүх дугаарыг харахын тулд зурганд хүрнэ үү эсвэл жагсаалтыг өөрчлөхийн тулд удаан дарна уу."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Хасах"</string>
+    <string name="select_all" msgid="408601760696146245">"Бүгдийг сонгох"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видео дуудлага"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Зурвас илгээх"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Дуудлагын мэдээлэл"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Блоклосон дугаар"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g>-г аль хэдийн блоклосон байна."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Дуудах бүртгэл"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Идэвхжүүлэх"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Зөвшөөрөл тохируулах"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Яаралтай дуудлагыг идэвхжүүлэхийн тулд Харилцагчдын зөвшөөрлийг идэвхжүүлнэ үү."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Дуудлагын жагсаалтыг харахын тулд утасны зөвшөөрлийг идэвхжүүлнэ үү."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Харилцагчдаа харахын тулд Харилцагчдын зөвшөөрлийг идэвхжүүлнэ үү."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Дуут шууданд хандахын тулд Утасны зөвшөөрлийг идэвхжүүлнэ үү."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Харилцагчаа хайхын тулд, Харилцагчийн жагсаалтын зөвшөөрлийг идэвхжүүлнэ үү."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Залгахын тулд Утасны зөвшөөрлийг идэвхжүүлнэ үү."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> офлайн, холбогдох боломжгүй байна"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Тухай"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Үзэх"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Дуудлагыг устгасан. Энэ дуудлагын явцад Зурвас дотор хуваалцсан хавсралтуудыг үзэх болон устгах."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Дуудлагуудыг устгасан. Энэ дуудлагын явцад Зурвас дотор хуваалцсан хавсралтуудыг үзэх болон устгах."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-mr/strings.xml b/java/com/android/dialer/app/res/values-mr/strings.xml
index 5aca7a5..f17f418 100644
--- a/java/com/android/dialer/app/res/values-mr/strings.xml
+++ b/java/com/android/dialer/app/res/values-mr/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"प्रतीक्षा करा जोडा"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"सेटिंग्ज"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"सिम्युलेटर"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"नवीन UI शॉर्टकट तयार करा"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"सर्व संपर्क"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"स्‍पर्श टोन कीपॅडचा वापर करा"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"चालू असलेल्या कॉलवर परत जा"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"कॉल जोडा"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"येणारे कॉल"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"मोठ्या प्रमाणात क्रिया मोडमध्ये प्रवेश करीत आहे"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"मोठ्या प्रमाणात क्रिया मोड सोडत आहे"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> निवडले"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ची निवड रद्द केली"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"व्हॉइसमेल प्ले करा"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> संपर्क पहा"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ला कॉल  करा"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"व्हॉइसमेल"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> सेकंद"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> मिनिट <xliff:g id="SECONDS">%s</xliff:g> सेकंद"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"व्हॉइसमेल"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"व्हॉइसमेल"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"होय"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"नाही"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"बॅच क्रिया मोड रद्द करा"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"हटवा"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"रद्द करा"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"निवडलेले <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> हटवायचेे?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> निवडले"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"हा व्हॉइसमेल हटवायचा? "</b>"</item>
+      <item quantity="other">"<b>"हे व्हॉइसमेल हटवायचे? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> रोजी <xliff:g id="TIME">%2$s</xliff:g> वाजता"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"सिम कार्ड मधून लोड करीत आहे..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"सिम कार्ड संपर्क"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"कोणताही संपर्क अॅप उपलब्ध नाही"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"व्हॉइस शोध उपलब्ध नाही"</string>
     <string name="call_not_available" msgid="7850148370757361155">"फोन अनुप्रयोग अक्षम केला गेला असल्याने फोन कॉल करणे शक्य नाही."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"संपर्क शोधा"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> नवीन सुटलेले कॉल"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"अद्याप आपल्‍या स्पीड डायलवर कोणीही नाही"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"एक आवडते जोडा"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"आपल्‍याकडे अद्याप कोणतेही संपर्क नाहीत"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"एक संपर्क जोडा"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"सर्व नंबर पाहण्यासाठी प्रतिमेस स्पर्श करा किंवा पुन्हा क्रम लावण्यासाठी स्पर्श करा आणि धरून ठेवा"</string>
     <string name="remove_contact" msgid="2353580570488923668">"काढा"</string>
+    <string name="select_all" msgid="408601760696146245">"सर्व निवडा"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"व्हिडिओ कॉल"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"एक संदेश पाठवा"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"कॉल तपशील"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"अवरोधित केलेले नंबर"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> आधीच अवरोधित केलेला आहे."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"कॉल करण्याची खाती"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"चालू करा"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"परवानग्या सेट करा"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"स्पीड डायल सक्षम करण्‍यासाठी, संपर्क परवानगी चालू करा."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"आपला कॉल लॉग पाहण्‍यासाठी, फोन परवानगी चालू करा."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"आपले संपर्क पाहण्‍यासाठी, संपर्क परवानगी चालू करा."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"आपल्‍या व्हॉइसमेलमध्‍ये प्रवेश करण्‍यासाठी, फोन परवानगी चालू करा."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"आपले संपर्क शोधण्‍यासाठी, संपर्क परवानग्या चालू करा."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"कॉल करण्यासाठी, फोन परवानगी चालू करा."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"स्पॅम"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ऑफलाइन आहे आणि त्यांच्याशी संपर्क साधू शकत नाही"</string>
     <string name="about_phone_label" msgid="582991354677973731">"बद्दल"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"पहा"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"कॉल हटविला. या कॉल दरम्यान Messages मध्ये सामायिक केलेली संलग्नके पहा आणि हटवा."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"कॉल हटविला. कॉल दरम्यान Messages मध्ये सामायिक केलेली संलग्नके पहा आणि हटवा."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ms/strings.xml b/java/com/android/dialer/app/res/values-ms/strings.xml
index 9dbe541..eba72ea 100644
--- a/java/com/android/dialer/app/res/values-ms/strings.xml
+++ b/java/com/android/dialer/app/res/values-ms/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Tambah penungguan"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Tetapan"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Buat Pintasan UI Baharu"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Semua kenalan"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Gunakan pad kekunci nada sentuh"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Kembali ke panggilan yang sedang berlangsung"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Tambah panggilan"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Panggilan masuk"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Memasuki mod tindakan pukal"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Meninggalkan mod tindakan pukal"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> dipilih"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> dinyahpilih"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Mainkan mel suara"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Lihat kenalan <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Panggil <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Mel suara"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> saat"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> saat"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"mel suara"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mel suara"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ya"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Tidak"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Batalkan mod tindakan kelompok"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Padam"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Batal"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Padam <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> yang dipilih?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> dipilih"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Padamkan mel suara ini? "</b>"</item>
+      <item quantity="one">"<b>"Padamkan mel suara ini? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> pada <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Memuatkan dari kad SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kenalan kad SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Tiada apl kenalan tersedia"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Carian suara tidak tersedia"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Tidak boleh membuat panggilan telefon kerana aplikasi Telefon telah dilumpuhkan."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Cari dalam kenalan"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> panggilan terlepas baharu"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Belum ada sesiapa pada dail pantas anda"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Tambahkan kegemaran"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Anda belum mempunyai sebarang kenalan"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Tambahkan kenalan"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Sentuh imej untuk melihat semua nombor atau sentuh &amp; tahan untuk menyusun semula"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Alih keluar"</string>
+    <string name="select_all" msgid="408601760696146245">"Pilih semua"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Panggilan video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Hantar mesej"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Butiran panggilan"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Nombor yang disekat"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> sudah disekat."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Akaun panggilan"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Hidupkan"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Tetapkan kebenaran"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Untuk mendayakan dail laju, hidupkan kebenaran Kenalan."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Untuk melihat log panggilan anda, hidupkan kebenaran Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Untuk melihat kenalan anda, hidupkan kebenaran Kenalan."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Untuk mengakses mel suara anda, hidupkan kebenaran Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Untuk mencari kenalan anda, hidupkan kebenaran Kenalan."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Untuk membuat panggilan, hidupkan kebenaran Telefon."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> di luar talian dan tidak dapat dihubungi"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Perihal"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Lihat"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Panggilan dipadam. Lihat dan padam lampiran yang dikongsi semasa panggilan ini dalam Mesej."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Panggilan dipadam. Lihat dan padam lampiran yang dikongsi semasa panggilan dalam Mesej."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-my/strings.xml b/java/com/android/dialer/app/res/values-my/strings.xml
index 2b51b20..857da2e 100644
--- a/java/com/android/dialer/app/res/values-my/strings.xml
+++ b/java/com/android/dialer/app/res/values-my/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"စောင့်ဆိုင်းခြင်း ထည့်ပါ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ဆက်တင်များ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"အသစ်ကဲ့သို့ တုပသည့်စနစ်"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"UI ဖြတ်လမ်းလင့်ခ်အသစ် လုပ်ရန်"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"လိပ်စာများအားလုံး"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"touch tone ကီးခလုတ် ကိုအသုံးပြုပါ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ဖုန်းပြန်ခေါ်မှု ပြုလုပ်နေစဉ်"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ဖုန်းခေါ်မှု ထပ်ထည့်ပါ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"အဝင်ခေါ်ဆိုမှုများ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"တပြိုင်နက်တည်း စုပြုံလုပ်ဆောင်ချက်မုဒ်ကို ထည့်သွင်းခြင်း"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"တပြိုင်နက်တည်း စုပြုံလုပ်ဆောင်ချက်မုဒ်မှ ထွက်လိုက်သည်"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"ရွေးချယ်ထားသော <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"မရွေးချယ်ထားသော <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"အသံပို့စာ နားထောင်ရန်"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> လိပ်စာကြည့်ရန်"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ကိုခေါ်ပါ"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"အသံစာပို့စနစ်"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> စက္ကန့်"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> မိနစ် <xliff:g id="SECONDS">%s</xliff:g> စက္ကန့်"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"အသံမေးလ်"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"အသံမေးလ်များ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yes"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"တပြိုင်နက်တည်း စုပြုံလုပ်ဆောင်ချက်များမုဒ်ကိ ပယ်ဖျက်ရန်"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ဖျက်ပါ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"မလုပ်တော့"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ရွေးထားသော <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ကို ဖျက်လိုပါသလား။"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ကို ရွေးချယ်ထားသည်"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ဤအသံမေးလ်များကို ဖျက်မလား။ "</b>"</item>
+      <item quantity="one">"<b>"ဤအသံမေးလ်ကို ဖျက်မလား။ "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g> ၌"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEIDနံပါတ်"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"ဆင်းမ်ကဒ်မှ ဖွင့်နေပါသည်..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"ဆင်းမ်ကဒ်မှ အဆက်အသွယ်များ"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"အဆက်အသွယ်များ app မရှိ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"အသံဖြင့် ရှာဖွေမှု မရှိ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ဖုန်း အပလီကေးရှင်းကို ပိတ်ထား၍ ဖုန်း ခေါ်ဆိုမှု မပြုလုပ်နိုင်ခဲ့ပါ။"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"အဆက်အသွယ်များရှာပါ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"လွတ်သွားသောဖုန်း <xliff:g id="NUMBER">%s</xliff:g> ခါ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"သင်၏အမြန်ခေါ်စာရင်းတွင် မည်သူမျှ မရှိသေးပါ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"အနှစ်သက်ဆုံးတစ်ခု ထည့်ရန်"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"သင့်တွင် မည်သည့်အဆက်အသွယ်မျှ မရှိသေးပါ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"အဆက်အသွယ်တစ်ယောက် ထည့်မည်"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"နံပါတ်အားလုံးကိုကြည့်ရန် ပုံကိုထိပါ (သို့) ပြန်စီရန် ထိပြီးဖိထားပါ"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ဖယ်ရှာခြင်း"</string>
+    <string name="select_all" msgid="408601760696146245">"အားလုံးကို ရွေးချယ်ပါ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ဗီဒီယို ခေါ်ဆိုမှု"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"စာ တစ်စောင် ပို့ပါ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ဖုန်းခေါ်မှု အသေးစိတ်အချက်အလက်"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ပိတ်ထားသည့် နံပါတ်များ"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> အားပိတ်ဆို့ထားပြီးပါပြီ။"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ခေါ်ဆိုသော အကောင့်များ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ဖွင့်ထားရန်"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ခွင့်ပြုချက်များ သတ်မှတ်မည်"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"မြန်နှုန်းမြင့်ဖုန်းခေါ်ဆိုမှုကို ဖွင့်ရန်၊ အဆက်အသွယ်ခွင့်ပြုချက်ကို ဖွင့်ပါ။"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ခေါ်ဆိုမှုမှတ်တမ်းကို ကြည့်ရန်၊ ဖုန်းခွင့်ပြုချက်ကို ဖွင့်ပါ။"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"အဆက်အသွယ်များကိုကြည့်ရန်၊ အဆက်အသွယ်ခွင့်ပြုချက်ကို ဖွင့်ပါ။"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"အသံမေးလ်ကိုအသုံးပြုရန်၊ ဖုန်းခွင့်ပြုချက်ကိုဖွင့်ပါ။"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"သင့်အဆက်အသွယ်များကို ရှာဖွေရန်၊ အဆက်အသွယ်ခွင့်ပြုချက်များကို ဖွင့်ပါ။"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ဖုန်းခေါ်ဆိုရန်၊ ဖုန်းခွင့်ပြုချက်ကိုဖွင့်ပါ။"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"စပမ်း"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> သည် အော့ဖ်လိုင်းဖြစ်နေသောကြောင့် ဆက်သွယ်၍ မရနိုင်ပါ"</string>
     <string name="about_phone_label" msgid="582991354677973731">"အကြောင်း"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"ကြည့်ရန်"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"ခေါ်ဆိုမှုကို ဖျက်လိုက်ပါပြီ။ မက်ဆေ့ဂျ်များရှိ ဤခေါ်ဆိုမှုအတောအတွင်း မျှဝေထားသော ပူးတွဲပါဖိုင်များကို ကြည့်ရှုပြီး ဖျက်ပါ။"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"ခေါ်ဆိုမှုကို ဖျက်လိုက်ပါပြီ။ မက်ဆေ့ဂျ်များရှိ ဤခေါ်ဆိုမှုများအတွင်း မျှဝေထားသော ပူးတွဲပါဖိုင်များကို ကြည့်ရှုပြီး ဖျက်ပါ။"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-nb/strings.xml b/java/com/android/dialer/app/res/values-nb/strings.xml
index d92edc6..4d2db16 100644
--- a/java/com/android/dialer/app/res/values-nb/strings.xml
+++ b/java/com/android/dialer/app/res/values-nb/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Legg til Vent"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Innstillinger"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Nytt grensesnitt – lag snarvei"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle kontakter"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Bruk tonetastatur"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Gå tilbake til aktiv samtale"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Legg til en samtale"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Innkommende samtaler"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Starter massehandlingsmodus"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Massehandlingsmodus er avsluttet"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Du har valgt <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Du har valgt bort <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Spill av talemelding"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Se kontakten <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ring <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Telefonsvarer"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sek"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"talepost"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"talepost"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Avbryt massehandlinsmodus"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Slett"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Avbryt"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Slett markert <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> er valgt"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vil du slette disse talemeldingene? "</b>"</item>
+      <item quantity="one">"<b>"Vil du slette denne talemeldingen? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Henter fra SIM-kort…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakter på SIM-kort"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ingen kontaktapper er tilgjengelige"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Talesøk er ikke tilgjengelig"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Kan ikke ringe fordi Telefon-appen er deaktivert."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Søk i kontakter"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nye tapte anrop"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Du har ingen på hurtigoppringning ennå"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Legg til en favoritt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du har ingen kontakter ennå"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Legg til en kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Trykk på bildet for å se alle numrene, eller trykk og hold for å omorganisere"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Fjern"</string>
+    <string name="select_all" msgid="408601760696146245">"Velg alle"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoanrop"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send en melding"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Samtaleinformasjon"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokkerte numre"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> er allerede blokkert."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Ringekontoer"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Slå på"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Angi tillatelser"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"For å slå på hurtigoppringning, slå på Kontakter-tillatelsen."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"For å se samtaleloggen din, slå på Telefon-tillatelsen."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"For å se kontaktene dine, slå på Kontakter-tillatelsen."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"For å få tilgang til talepostkassen, slå på Telefon-tillatelsen."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"For å søke i kontaktene dine, slå på tillatelser for Kontakter."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"For å ringe, slå på Telefon-tillatelsen."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Nettsøppel"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> er frakoblet og kan ikke nås"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Om"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Se"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Anropet er slettet. Se og slett vedleggene som ble delt i denne samtalen, i Meldinger."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Anropene er slettet. Se og slett vedleggene som ble delt i samtalene, i Meldinger."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ne/strings.xml b/java/com/android/dialer/app/res/values-ne/strings.xml
index 90a3016..11be00a 100644
--- a/java/com/android/dialer/app/res/values-ne/strings.xml
+++ b/java/com/android/dialer/app/res/values-ne/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"पर्खाइ थप्नुहोस्"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"सेटिङ्हरू"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"सिम्युलेटर"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"नयाँ UI सर्टकट सिर्जना गर्ने"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"सबै सम्पर्कहरू"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"स्पर्श टोन किप्याडको प्रयोग गर्नुहोस्"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"हुदै गरेको कलमा फर्कनुहोस्"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"कल थप्नुहोस्"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"आगमन कलहरू"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"बल्क कारबाही सम्बन्धी मोडमा प्रवेश गर्दै"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"बल्क कारबाही सम्बन्धी मोड छोडियो"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> चयन गरियो"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> चयन हटाइयो"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"भ्वाइसमेल बजाउनुहोस्"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> सम्पर्क हेर्नुहोस्"</string>
     <string name="description_call" msgid="1532402285334775372">"कल <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"भ्वाइसमेल"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> सेकेन्ड"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> मिनेट <xliff:g id="SECONDS">%s</xliff:g> सकेन्ड"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"भ्वाइस मेल"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"भ्वाइस मेलहरू"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"हो"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"होइन"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ब्याच सम्बन्धी कारबाहीको मोडलाई रद्द गर्नुहोस्"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"मेट्नुहोस्"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"रद्द गर्नुहोस्"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"चयन गरिएका <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> लाई मेटाउने हो?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> चयन गरियो"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"यी भ्वाइस मेलहरू मेट्ने हो? "</b>"</item>
+      <item quantity="one">"<b>"यो भ्वाइस मेल मेट्ने हो? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> मा <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM कार्डबाट लोड हुँदै"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM कार्ड सम्पर्कहरू"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"कुनै पनि सम्पर्क अनुप्रयोग उपलब्ध छैन"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"आवाज खोजी उपलब्ध छैन"</string>
     <string name="call_not_available" msgid="7850148370757361155">"फोन अनुप्रयोग असक्षम गरिएकोले फोन गर्न सकिँदैन।"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"सम्पर्कहरू खोज्नुहोस्"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> नयाँ छुटेका कलहरु"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"तपाईँको स्पिड डायलमा अझसम्म कोही छैन"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"एक मनपर्ने थप्नुहोस्"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"तपाईँसँग अझसम्म कुनै सम्पर्कहरू छैनन्"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"एउटा सम्पर्क थप्नुहोस्"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"सबै नम्बरहरू हेर्न छविलाई छुनुहोस् वा पुन:क्रमबद्ध गर्न छोइराख्नुहोस्"</string>
     <string name="remove_contact" msgid="2353580570488923668">"हटाउँनुहोस्"</string>
+    <string name="select_all" msgid="408601760696146245">"सबैलाई चयन गर्नुहोस्"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"भिडियो कल"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"सन्देश पठाउनुहोस्"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"कल विवरणहरु"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"रोकिएका नम्बरहरू"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> पहिले नै रोकिएको छ।"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"खाता कलिङ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"सक्रिय पार्नुहोस्"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"अनुमतिहरू सेट गर्नुहोस्"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"तीव्र डायल सक्षम गर्न, सम्पर्क अनुमति सक्षम गर्नुहोस्।"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"आफ्नो कल लग हेर्न, फोन अनुमति सक्रिय गर्नुहोस्।"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"आफ्नो सम्पर्क हेर्न सम्पर्क अनुमति सक्रिय गर्नुहोस्।"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"आफ्नो भ्वाइस मेल पहुँच गर्न, फोन अनुमति सक्रिय गर्नुहोस्"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"तपाईँको सम्पर्कहरू खोज गर्न सम्पर्क अनुमतिहरू सक्रिय गर्नुहोस्।"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"कल गर्न फोन अनुमति सक्रिय गर्नुहोस्।"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"स्प्याम"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> अफलाइन हुनुहुन्छ र वहाँलाई भेट्न सकिँदैन"</string>
     <string name="about_phone_label" msgid="582991354677973731">"बारेमा"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"हेर्नुहोस्"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"कल मेटाइयो। Messages मा गरिएको यो कलका क्रममा समावेश गरी आदान-प्रदान गरिएका कागजातलाई हेर्नुहोस् र मेटाउनुहोस्।"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"कलहरू मेटाइए। Messages मा गरिएका कलहरूमा समावेश गरी आदान-प्रदान गरिएका कागजातलाई हेर्नुहोस् र मेटाउनुहोस्।"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-nl/strings.xml b/java/com/android/dialer/app/res/values-nl/strings.xml
index 5f41b80..73cf75f 100644
--- a/java/com/android/dialer/app/res/values-nl/strings.xml
+++ b/java/com/android/dialer/app/res/values-nl/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Wachten toevoegen"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Instellingen"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Snelkoppeling voor nieuwe UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle contacten"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Toetsen voor toonkiezen gebruiken"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Terug naar actief gesprek"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Oproep toevoegen"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Inkomende oproepen"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Modus voor bulkacties openen"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Modus voor bulkacties verlaten"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> geselecteerd"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Selectie van <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> opgeheven"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Voicemail afspelen"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Contact <xliff:g id="NAME">%1$s</xliff:g> bekijken"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> bellen"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sec."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"voicemails"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nee"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Modus voor batchacties annuleren"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Verwijderen"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annuleren"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Geselecteerde <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> verwijderen?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> geselecteerd"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Deze voicemails verwijderen? "</b>"</item>
+      <item quantity="one">"<b>"Deze voicemail verwijderen? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> om <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Laden vanaf SIM-kaart..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contacten op SIM-kaart"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Geen app voor contacten beschikbaar"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Gesproken zoekopdracht niet beschikbaar"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Kan niet bellen omdat de Telefoon-app is uitgeschakeld."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Contacten zoeken"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nieuwe gemiste oproepen"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Er staat nog niemand in je snelkeuzelijst"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Een favoriet toevoegen"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Je hebt nog geen contacten"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Contact toevoegen"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tik op de afbeelding om alle nummers te bekijken of tik op de afbeelding en houd vast om opnieuw te rangschikken"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Verwijderen"</string>
+    <string name="select_all" msgid="408601760696146245">"Alles selecteren"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videogesprek"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Een bericht verzenden"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Oproepdetails"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Geblokkeerde nummers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is al geblokkeerd."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Oproepaccounts"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Inschakelen"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Toestemmingen instellen"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Als je de snelkeuzefunctie wilt inschakelen, schakel je de machtiging voor Contacten in."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Als je je gesprekkenlijst wilt bekijken, schakel je de machtiging voor Telefoon in."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Als je je contacten wilt bekijken, schakel je de machtiging voor Contacten in."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Als je je voicemail wilt beluisteren, schakel je de machtiging voor Telefoon in."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Als je naar contacten wilt zoeken, schakel je de contacttoestemming in."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Als je iemand wilt bellen, schakel je de machtiging voor Telefoon in."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> is offline en kan niet worden bereikt"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Over"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Weergeven"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Gesprek verwijderd. Bijlagen die in dit gesprek zijn gedeeld, kun je bekijken en verwijderen via Berichten."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Gesprekken verwijderd. Bijlagen die in deze gesprekken zijn gedeeld, kun je bekijken en verwijderen via Berichten."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-no/strings.xml b/java/com/android/dialer/app/res/values-no/strings.xml
index d92edc6..4d2db16 100644
--- a/java/com/android/dialer/app/res/values-no/strings.xml
+++ b/java/com/android/dialer/app/res/values-no/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Legg til Vent"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Innstillinger"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Nytt grensesnitt – lag snarvei"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle kontakter"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Bruk tonetastatur"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Gå tilbake til aktiv samtale"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Legg til en samtale"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Innkommende samtaler"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Starter massehandlingsmodus"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Massehandlingsmodus er avsluttet"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Du har valgt <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Du har valgt bort <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Spill av talemelding"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Se kontakten <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ring <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Telefonsvarer"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sek"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"talepost"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"talepost"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Avbryt massehandlinsmodus"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Slett"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Avbryt"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Slett markert <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> er valgt"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vil du slette disse talemeldingene? "</b>"</item>
+      <item quantity="one">"<b>"Vil du slette denne talemeldingen? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Henter fra SIM-kort…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakter på SIM-kort"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ingen kontaktapper er tilgjengelige"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Talesøk er ikke tilgjengelig"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Kan ikke ringe fordi Telefon-appen er deaktivert."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Søk i kontakter"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nye tapte anrop"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Du har ingen på hurtigoppringning ennå"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Legg til en favoritt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du har ingen kontakter ennå"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Legg til en kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Trykk på bildet for å se alle numrene, eller trykk og hold for å omorganisere"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Fjern"</string>
+    <string name="select_all" msgid="408601760696146245">"Velg alle"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoanrop"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send en melding"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Samtaleinformasjon"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokkerte numre"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> er allerede blokkert."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Ringekontoer"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Slå på"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Angi tillatelser"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"For å slå på hurtigoppringning, slå på Kontakter-tillatelsen."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"For å se samtaleloggen din, slå på Telefon-tillatelsen."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"For å se kontaktene dine, slå på Kontakter-tillatelsen."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"For å få tilgang til talepostkassen, slå på Telefon-tillatelsen."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"For å søke i kontaktene dine, slå på tillatelser for Kontakter."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"For å ringe, slå på Telefon-tillatelsen."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Nettsøppel"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> er frakoblet og kan ikke nås"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Om"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Se"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Anropet er slettet. Se og slett vedleggene som ble delt i denne samtalen, i Meldinger."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Anropene er slettet. Se og slett vedleggene som ble delt i samtalene, i Meldinger."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-pa/strings.xml b/java/com/android/dialer/app/res/values-pa/strings.xml
index 76d4b9b..74f25e6 100644
--- a/java/com/android/dialer/app/res/values-pa/strings.xml
+++ b/java/com/android/dialer/app/res/values-pa/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"ਉਡੀਕ ਜੋੜੋ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ਸੈਟਿੰਗਾਂ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"ਸਿਮੁਲੇਟਰ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ਨਵਾਂ UI ਸ਼ਾਰਟਕੱਟ ਬਣਾਓ"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ਸਾਰੇ ਸੰਪਰਕ"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ਟਚ ਟੋਨ ਕੀਪੈਡ ਵਰਤੋ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ਪ੍ਰਗਤੀ ਵਿੱਚ ਕਾਲ ਤੇ ਵਾਪਸ ਜਾਓ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ਕਾਲ ਜੋੜੋ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ਇਨਕਮਿੰਗ ਕਾਲਾਂ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ਬਲਕ ਕਾਰਵਾਈ ਮੋਡ ਵਿੱਚ ਦਾਖਲ ਹੋਇਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ਬਲਕ ਕਾਰਵਾਈ ਮੋਡ ਨੂੰ ਛੱਡਿਆ"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ਨੂੰ ਚੁਣਿਆ ਗਿਆ"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ਨੂੰ ਅਣ-ਚੁਣਿਆ ਕੀਤਾ ਗਿਆ"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ਵੌਇਸਮੇਲ ਪਲੇ ਕਰੋ"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"ਸੰਪਰਕ <xliff:g id="NAME">%1$s</xliff:g> ਦੇਖੋ"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ਨੂੰ ਕਾਲ ਕਰੋ"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ਵੌਇਸਮੇਲ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ਸਕਿੰਟ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> ਮਿੰਟ <xliff:g id="SECONDS">%s</xliff:g> ਸਕਿੰਟ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ਵੌਇਸਮੇਲ"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ਵੌਇਸਮੇਲਾਂ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ਹਾਂ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ਨਹੀਂ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ਬੈਚ ਕਾਰਵਾਈਆਂ ਮੋਡ ਨੂੰ ਰੱਦ ਕਰੋ"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ਮਿਟਾਓ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ਰੱਦ ਕਰੋ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ਕੀ ਚੁਣੀ(ਆਂ) ਹੋਈ(ਆਂ) <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ਨੂੰ ਚੁਣਿਆ ਗਿਆ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"ਕੀ ਇਸ ਵੌਇਸਮੇਲ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ? "</b>"</item>
+      <item quantity="other">"<b>"ਕੀ ਇਹਨਾਂ ਵੌਇਸਮੇਲਾਂ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ਨੂੰ <xliff:g id="TIME">%2$s</xliff:g> ਵਜੇ"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM ਕਾਰਡ ਵਿੱਚੋਂ ਲੋਡ ਕਰ ਰਿਹਾ ਹੈ…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM ਕਾਰਡ ਸੰਪਰਕ"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ਕੋਈ ਸੰਪਰਕ ਐਪ ਉਪਲਬਧ ਨਹੀਂ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ਵੌਇਸ ਖੋਜ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ਇੱਕ ਫੋਨ ਕਾਲ ਨਹੀਂ ਕਰ ਸਕਦਾ ਕਿਉਂਕਿ ਫੋਨ ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ ਅਯੋਗ ਬਣਾਇਆ ਗਿਆ ਹੈ।"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ਸੰਪਰਕ ਖੋਜੋ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ਨਵੀਆਂ ਮਿਸਡ ਕਾਲਾਂ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ਅਜੇ ਤੁਹਾਡੇ ਸਪੀਡ ਡਾਇਲ \'ਤੇ ਕੋਈ ਵੀ ਵਿਅਕਤੀ ਨਹੀਂ ਹੈ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ਕੋਈ ਮਨਪਸੰਦ ਸ਼ਾਮਲ ਕਰੋ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ਤੁਹਾਡੇ ਕੋਲ ਅਜੇ ਕੋਈ ਸੰਪਰਕ ਨਹੀਂ ਹਨ।"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ਕੋਈ ਸੰਪਰਕ ਸ਼ਾਮਲ ਕਰੋ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ਸਾਰੇ ਨੰਬਰਾਂ ਨੂੰ ਵੇਖਣ ਲਈ ਚਿਤਰ ਨੂੰ ਸਪਰਸ਼ ਕਰੋ ਜਾਂ ਦੁਬਾਰਾ ਕ੍ਰਮਬੱਧ ਕਰਨ ਲਈ ਸਪਰਸ਼ ਕਰੋ ਅਤੇ ਦਬਾਈ ਰੱਖੋ"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ਹਟਾਓ"</string>
+    <string name="select_all" msgid="408601760696146245">"ਸਭ ਚੁਣੋ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ਇੱਕ ਸੁਨੇਹਾ ਭੇਜੋ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ਕਾਲ ਵੇਰਵੇ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ਬਲੌਕ ਕੀਤੇ ਗਏ ਨੰਬਰ"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ਪਹਿਲਾਂ ਹੀ ਬਲੌਕ ਕੀਤਾ ਹੋਇਆ ਹੈ।"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ਕਾਲਿੰਗ ਖਾਤੇ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ਚਾਲੂ ਕਰੋ"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ਅਨੁਮਤੀਆਂ ਸੈੱਟ ਕਰੋ"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ਸਪੀਡ ਡਾਇਲ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਲਈ, ਸੰਪਰਕ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ਆਪਣਾ ਕਾਲ ਲੌਗ ਵੇਖਣ ਲਈ, ਫ਼ੋਨ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ਆਪਣੇ ਸੰਪਰਕਾਂ ਨੂੰ ਵੇਖਣ ਲਈ, ਸੰਪਰਕ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ਆਪਣੀ ਵੌਇਸਮੇਲ ਐਕਸੈਸ ਕਰਨ ਲਈ, ਫ਼ੋਨ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ਆਪਣੇ ਸੰਪਰਕਾਂ ਦੀ ਖੋਜ ਕਰਨ ਲਈ,, ਸੰਪਰਕ ਅਨੁਮਤੀਆਂ ਨੂੰ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ਕਾਲ ਕਰਨ ਲਈ, ਫ਼ੋਨ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"ਸਪੈਮ"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ਔਫਲਾਈਨ ਹੈ ਅਤੇ ਉਸ \'ਤੇ ਪਹੁੰਚ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ"</string>
     <string name="about_phone_label" msgid="582991354677973731">"ਇਸ ਬਾਰੇ"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"ਦੇਖੋ"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"ਕਾਲ ਮਿਟਾਈ ਗਈ। ਇਸ ਕਾਲ ਦੌਰਾਨ &amp;quot;ਸੁਨੇਹੇ&amp;quot; ਐਪ ਵਿੱਚ ਸਾਂਝੀਆਂ ਕੀਤੀਆਂ ਅਟੈਚਮੈਂਟਾਂ ਨੂੰ ਦੇਖੋ ਅਤੇ ਮਿਟਾਓ।"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"ਕਾਲ ਮਿਟਾਈ ਗਈ। ਕਾਲਾਂ ਦੌਰਾਨ &amp;quot;ਸੁਨੇਹੇ&amp;quot; ਐਪ ਵਿੱਚ ਸਾਂਝੀਆਂ ਕੀਤੀਆਂ ਅਟੈਚਮੈਂਟਾਂ ਨੂੰ ਦੇਖੋ ਅਤੇ ਮਿਟਾਓ।"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-pl/strings.xml b/java/com/android/dialer/app/res/values-pl/strings.xml
index 76adfe5..17cc09e 100644
--- a/java/com/android/dialer/app/res/values-pl/strings.xml
+++ b/java/com/android/dialer/app/res/values-pl/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj oczekiwanie"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ustawienia"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Symulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Utwórz skrót do nowego interfejsu"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Wszystkie kontakty"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Użyj klawiatury tonowej"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Wróć do aktywnego połączenia"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj połączenie"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Połączenia przychodzące"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Włączono tryb działań zbiorczych"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Wyłączono tryb działań zbiorczych"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Wybrano: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Anulowano wybór: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Odtwórz pocztę głosową"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Wyświetl kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Zadzwoń do: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Poczta głosowa"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"wiadomości głosowe"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"wiadomości głosowe"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Tak"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nie"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Anuluj tryb działań zbiorczych"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Usuń"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Anuluj"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Usunąć wybrane <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Wybrane: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="few">"<b>"Usunąć te wiadomości głosowe? "</b>"</item>
+      <item quantity="many">"<b>"Usunąć te wiadomości głosowe? "</b>"</item>
+      <item quantity="other">"<b>"Usunąć te wiadomości głosowe? "</b>"</item>
+      <item quantity="one">"<b>"Usunąć tę wiadomość głosową? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> o <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"Numer MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Wczytuję z karty SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakty z karty SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nie jest dostępna aplikacja do obsługi kontaktów"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Wyszukiwanie głosowe jest niedostępne"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nie można zadzwonić, ponieważ aplikacja Telefon została wyłączona."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Przeszukuj kontakty"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Nowe nieodebrane połączenia: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Lista szybkiego wybierania jest pusta"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodaj do ulubionych"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nie masz jeszcze żadnych kontaktów"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodaj kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Kliknij obraz, by zobaczyć wszystkie numery, lub kliknij go i przytrzymaj, by zmienić kolejność"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Usuń"</string>
+    <string name="select_all" msgid="408601760696146245">"Zaznacz wszystkie"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Rozmowa wideo"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Wyślij wiadomość"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Szczegóły połączenia"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Zablokowane numery"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Numer <xliff:g id="NUMBER">%1$s</xliff:g> jest już zablokowany."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Konta telefoniczne"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Włącz"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ustaw uprawnienia"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Aby włączyć szybkie wybieranie, włącz uprawnienie Kontakty."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Aby zobaczyć swój rejestr połączeń, włącz uprawnienie Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Aby zobaczyć swoje kontakty, włącz uprawnienie Kontakty."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Aby uzyskać dostęp do poczty głosowej, włącz uprawnienie Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Aby wyszukać kontakty, włącz uprawnienia Kontakty."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Aby nawiązać połączenie, włącz uprawnienie Telefon."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Użytkownik <xliff:g id="NAME">%1$s</xliff:g> jest offline i nie można się z nim skontaktować"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Informacje"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Wyświetl"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Połączenie zostało usunięte. Załączniki udostępnione podczas tego połączenia możesz wyświetlić i usunąć w Wiadomościach."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Połączenia zostały usunięte. Załączniki udostępnione podczas połączeń możesz wyświetlić i usunąć w Wiadomościach."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-pt-rBR/strings.xml b/java/com/android/dialer/app/res/values-pt-rBR/strings.xml
index 780ca07..0e2ed7b 100644
--- a/java/com/android/dialer/app/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/app/res/values-pt-rBR/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Adicionar espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configurações"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Criar atalho para a nova IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos os contatos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado multifrequencial"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Retornar para a chamada em espera"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Ad. cham."</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chamadas recebidas"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando no modo de ação em massa"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saindo do modo de ação em massa"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> selecionado"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> não selecionado"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproduzir mensagem de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visualizar contato <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ligar para <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correio de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> seg"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> m <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"correio de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"correios de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sim"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Não"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar modo de ações em lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Excluir"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Excluir a seleção de <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Itens selecionados: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Excluir este correio de voz? "</b>"</item>
+      <item quantity="other">"<b>"Excluir estes correios de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> às <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Carregando do cartão SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contatos do cartão SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nenhum app de contatos disponível"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"A pesquisa por voz não está disponível"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Não é possível fazer uma chamada porque o app Telefone foi desativado."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pesquisar contatos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> novas chamadas perdidas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ainda não há ninguém na sua discagem rápida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Adicionar favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Você ainda não tem contatos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Adicionar um contato"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toque na imagem para ver todos os números ou toque e segure para reordenar"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remover"</string>
+    <string name="select_all" msgid="408601760696146245">"Selecionar tudo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar uma mensagem"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalhes da chamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"O número <xliff:g id="NUMBER">%1$s</xliff:g> já está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Contas de chamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ativar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Definir permissões"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para ativar a discagem rápida, ative a permissão para o app Contatos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver seu registro de chamadas, ative a permissão para o app Telefone."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver seus contatos, ative a permissão para o app Contatos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acessar seu correio de voz, ative a permissão para o app Telefone."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para pesquisar seus contatos, ative as permissões para \"Contatos\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para fazer uma chamada, ative a permissão para o app Telefone."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> está off-line e não é possível entrar em contato"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Sobre"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ver"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"A chamada foi excluída. Veja e exclua os anexos compartilhados durante a chamada no Mensagens."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"As chamadas foram excluídas. Veja e exclua os anexos compartilhados durante as chamadas no Mensagens."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-pt-rPT/strings.xml b/java/com/android/dialer/app/res/values-pt-rPT/strings.xml
index 95fa75c..0d2c464 100644
--- a/java/com/android/dialer/app/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/app/res/values-pt-rPT/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Adicionar espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Definições"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Criar novo atalho de IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos os contactos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Utilizar teclado numérico com tons de toque"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Voltar à chamada em curso"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Adicionar chamada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chamadas recebidas"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"A entrar no modo de ação em massa…"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saiu do modo de ação em massa"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> selecionado"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> não selecionado"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproduzir mensagem de correio de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ver o contacto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ligar a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correio de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> seg"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> seg."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"mensagem de correio de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mensagens de correio de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sim"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Não"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar modo de ações em lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Eliminar"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Pretende eliminar a(s) <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> selecionada(s)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selecionada(s)"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Pretende eliminar esta(s) mensagem(ns) de correio de voz? "</b>"</item>
+      <item quantity="other">"<b>"Pretende eliminar estas mensagens de correio de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> às <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"A carregar a partir do cartão SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactos no cartão SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Não existe nenhuma aplicação de contactos disponível"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Pesquisa por voz não disponível"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Não é possível efetuar uma chamada porque a aplicação Telefone foi desativada."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pesquisar contactos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> chamadas não atendidas novas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ainda não tem ninguém na marcação rápida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Adicionar um favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Ainda não tem nenhum contacto"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Adicionar um contacto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toque na imagem para ver todos os números ou toque sem soltar para reordenar"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remover"</string>
+    <string name="select_all" msgid="408601760696146245">"Selecionar tudo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar uma mensagem"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalhes da chamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> já está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Contas de chamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ativar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Definir autorizações"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para ativar a marcação rápida, ative a autorização Contactos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver o registo de chamadas, ative a autorização Telemóvel."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver os seus contactos, ative a autorização Contactos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para aceder ao correio de voz, ative a autorização Telemóvel."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para pesquisar os seus contactos, ative as autorizações Contactos."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para efetuar uma chamada, ative a autorização Telemóvel."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> está offline e não pode ser contactado"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Acerca de"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ver"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"A chamada foi eliminada. Veja e elimine os anexos partilhados durante esta chamada na aplicação Mensagens."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"As chamadas foram eliminadas. Veja e elimine os anexos partilhados durante as chamadas na aplicação Mensagens."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-pt/strings.xml b/java/com/android/dialer/app/res/values-pt/strings.xml
index 780ca07..0e2ed7b 100644
--- a/java/com/android/dialer/app/res/values-pt/strings.xml
+++ b/java/com/android/dialer/app/res/values-pt/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Adicionar espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configurações"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Criar atalho para a nova IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos os contatos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado multifrequencial"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Retornar para a chamada em espera"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Ad. cham."</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chamadas recebidas"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando no modo de ação em massa"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saindo do modo de ação em massa"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> selecionado"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> não selecionado"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproduzir mensagem de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visualizar contato <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ligar para <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correio de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> seg"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> m <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"correio de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"correios de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sim"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Não"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar modo de ações em lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Excluir"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Excluir a seleção de <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Itens selecionados: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Excluir este correio de voz? "</b>"</item>
+      <item quantity="other">"<b>"Excluir estes correios de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> às <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Carregando do cartão SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contatos do cartão SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nenhum app de contatos disponível"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"A pesquisa por voz não está disponível"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Não é possível fazer uma chamada porque o app Telefone foi desativado."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pesquisar contatos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> novas chamadas perdidas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ainda não há ninguém na sua discagem rápida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Adicionar favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Você ainda não tem contatos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Adicionar um contato"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toque na imagem para ver todos os números ou toque e segure para reordenar"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remover"</string>
+    <string name="select_all" msgid="408601760696146245">"Selecionar tudo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar uma mensagem"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalhes da chamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"O número <xliff:g id="NUMBER">%1$s</xliff:g> já está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Contas de chamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ativar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Definir permissões"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para ativar a discagem rápida, ative a permissão para o app Contatos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver seu registro de chamadas, ative a permissão para o app Telefone."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver seus contatos, ative a permissão para o app Contatos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acessar seu correio de voz, ative a permissão para o app Telefone."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para pesquisar seus contatos, ative as permissões para \"Contatos\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para fazer uma chamada, ative a permissão para o app Telefone."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> está off-line e não é possível entrar em contato"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Sobre"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ver"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"A chamada foi excluída. Veja e exclua os anexos compartilhados durante a chamada no Mensagens."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"As chamadas foram excluídas. Veja e exclua os anexos compartilhados durante as chamadas no Mensagens."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ro/strings.xml b/java/com/android/dialer/app/res/values-ro/strings.xml
index 725ff4a..b9a4cd2 100644
--- a/java/com/android/dialer/app/res/values-ro/strings.xml
+++ b/java/com/android/dialer/app/res/values-ro/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Adăugați interval de așteptare"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Setări"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Creați comandă rapidă IU nouă"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Toată agenda"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Tastatura tactilă cu sunet"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Reveniți la apelul în curs"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Adăugați un apel"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Apeluri de intrare"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Se intră în modul acțiune în bloc"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Ați ieșit din modul acțiune în bloc"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"S-a selectat <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"S-a deselectat <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Redați mesajul vocal"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Afișați persoana din agendă <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Apelați <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Mesagerie vocală"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> secunde"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sec."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"mesagerie vocală"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mesaje vocale"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nu"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Anulați modul de acțiuni în lot"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Ștergeți"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Anulați"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Ștergeți cele <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> selectate?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selectate"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="few">"<b>"Ștergeți aceste mesaje vocale? "</b>"</item>
+      <item quantity="other">"<b>"Ștergeți aceste mesaje vocale? "</b>"</item>
+      <item quantity="one">"<b>"Ștergeți acest mesaj vocal? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> la <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Se încarcă de pe cardul SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Persoanele din agendă de pe cardul SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nu este disponibilă nicio aplicație pentru agendă"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Căutarea vocală nu este disponibilă"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nu se poate efectua un apel telefonic, deoarece aplicația Telefon a fost dezactivată."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Căutați în Agendă"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> apeluri nepreluate noi"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Nicio persoană de contact setată pentru apelarea rapidă"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Adăugați o persoană de contact preferată"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nu aveți încă persoane de contact"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Adăugați o persoană de contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Atingeți imaginea pentru a vedea toate numerele sau atingeți lung pentru reordonare"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eliminați"</string>
+    <string name="select_all" msgid="408601760696146245">"Selectați tot"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Apel video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Trimiteți un mesaj"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detaliile apelului"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numere blocate"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> este deja blocat."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Conturi pentru apelare"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activați"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Setați permisiunile"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Pentru a activa apelarea rapidă, activați permisiunea Agendă."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Pentru a vedea jurnalul de apeluri, activați permisiunea Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Pentru a vedea persoanele de contact, activați permisiunea Agendă."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Pentru a accesa mesageria vocală, activați permisiunea Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Pentru a căuta în persoanele de contact, activați permisiunea Agendă."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Pentru a apela, activați permisiunea Telefon."</string>
@@ -232,4 +238,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> este offline și nu poate fi contactat(ă)"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Despre"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Afișați"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Apelul a fost șters. Afișați și ștergeți atașamentele trimise în timpul acestui apel în Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Apelurile au fost șterse. Afișați și ștergeți atașamentele trimise în timpul apelurilor în Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ru/strings.xml b/java/com/android/dialer/app/res/values-ru/strings.xml
index 557832b..eaeea67 100644
--- a/java/com/android/dialer/app/res/values-ru/strings.xml
+++ b/java/com/android/dialer/app/res/values-ru/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Добавить паузу"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Настройки"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Создать ярлык для нового интерфейса"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Все контакты"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Панель тонального набора"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Вернуться к текущему вызову"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Добавить вызов"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Входящие вызовы"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Вы вошли в режим массового действия"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Вы вышли из режима массового действия"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Выбран объект <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Выбор объекта <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> отменен"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Прослушать голосовую почту"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Просмотреть данные: <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Вызов: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Голосовая почта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин. <xliff:g id="SECONDS">%s</xliff:g> сек."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"голосовое сообщение"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"голосовые сообщения"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Да"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Нет"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Отмена режима массового действия"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Удалить"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Отмена"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Удалить <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Выбрано: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Удалить эти голосовые сообщения? "</b>"</item>
+      <item quantity="few">"<b>"Удалить эти голосовые сообщения? "</b>"</item>
+      <item quantity="many">"<b>"Удалить эти голосовые сообщения? "</b>"</item>
+      <item quantity="other">"<b>"Удалить эти голосовые сообщения? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> в <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Загрузка с SIM-карты…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакты на SIM-карте"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Нет приложения для работы с контактами"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Голосовой поиск недоступен"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Нельзя совершать телефонные звонки, поскольку приложение \"Телефон\" отключено."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Поиск в контактах"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Пропущенных вызовов: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Нет номеров для быстрого набора"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Настроить быстрый набор"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Нет контактов"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Добавить контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Коснитесь изображения, чтобы увидеть все номера, или нажмите и удерживайте, чтобы изменить порядок"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Удалить"</string>
+    <string name="select_all" msgid="408601760696146245">"Выбрать все"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видеовстреча"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Отправить сообщение"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Сведения о вызове"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Заблокированные номера"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> уже заблокирован."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Аккаунты для звонков"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Включить"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Задать разрешения"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Чтобы настроить быстрый набор, предоставьте приложению разрешение \"Контакты\"."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Чтобы открыть список вызовов, предоставьте приложению разрешение \"Телефон\"."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Чтобы открыть список контактов, предоставьте приложению разрешение \"Контакты\"."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Чтобы получить доступ к голосовой почте, предоставьте приложению разрешение \"Телефон\"."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Для поиска контактов включите разрешение \"Контакты\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Чтобы позвонить, предоставьте приложению разрешение \"Телефон\"."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> сейчас офлайн и не ответит на вызов"</string>
     <string name="about_phone_label" msgid="582991354677973731">"О приложении"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Посмотреть"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Вызов удален. Посмотреть и удалить прикрепленные к нему файлы можно в приложении \"Сообщения\"."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Вызовы удалены. Посмотреть и удалить прикрепленные к ним файлы можно в приложении \"Сообщения\"."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-si/strings.xml b/java/com/android/dialer/app/res/values-si/strings.xml
index 329d89e..b03b15d 100644
--- a/java/com/android/dialer/app/res/values-si/strings.xml
+++ b/java/com/android/dialer/app/res/values-si/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"රැඳී සිටීම එක් කරන්න"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"සැකසීම්"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"සමාකෘතිය"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"නව UI කෙටිමග තනන්න"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"සියලුම සම්බන්ධතා"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ස්පර්ශ නාද යතුරුපෑඩය භාවිතා කරන්න"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"පවතින ඇමතුමට නැවත යන්න"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ඇමතුමක් එක් කරන්න"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"එන ඇමතුම්"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"තොග ක්‍රියා ප්‍රකාරය ඇතුළු කරමින්"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"තොග ක්‍රියා ප්‍රකාරය හැර යන ලදී"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> තෝරා ගන්නා ලදී"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> තෝරා ගැනීම ඉවත් කරන ලදී"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"හඬ තැපෑල ධාවනය කිරීම"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> සම්බන්ධතාවය බලන්න"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> අමතන්න"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"හඬ තැපෑල"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"තත් <xliff:g id="SECONDS">%s</xliff:g>"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"මිනි <xliff:g id="MINUTES">%s</xliff:g> තත් <xliff:g id="SECONDS">%s</xliff:g>"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"හඬ තැපෑල"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"හඬ තැපැල්"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ඔව්"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"නැත"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"කාණ්ඩ ක්‍රියා ප්‍රකාරය අවලංගු කරන්න"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"මකන්න"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"අවලංගු කරන්න"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"තෝරා ගත් <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> මකන්නද?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> තෝරා ගන්නා ලදි"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"මෙම හඬ තැපැල් මකන්නද? "</b>"</item>
+      <item quantity="other">"<b>"මෙම හඬ තැපැල් මකන්නද? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> දින <xliff:g id="TIME">%2$s</xliff:g>ට"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM පතෙන් පූරණය කරමින්…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM පත් සම්බන්ධතා"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"සබඳතා යෙදුමක් ලබාගත නොහැකිය"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"හඬ සෙවුම ලබාගත නොහැකිය"</string>
     <string name="call_not_available" msgid="7850148370757361155">"දුරකථන යෙදුම අබල කර ඇති නිසා දුරකථන ඇමතුම ලබාගැනීම කළ නොහැක."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"සම්බන්ධතා සෙවීම"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"නව මඟ හැරුණු ඇමතුම් <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ඔබගේ වේග ඩයල් එකේ තවමත් කවුරුවත් නැහැ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ප්‍රියතම ලෙස එක් කරන්න"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ඔබ තවමත් සම්බන්ධතා නැහැ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"සම්බන්ධතාවයක් එක් කරන්න"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"සියලු අංක බැලීමට රූපය ස්පර්ශ කරන්න නැතහොත් නැවත අනුපිළිවෙළට සැකසීමට ස්පර්ශ කර අල්ලාගෙන සිටින්න"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ඉවත් කරන්න"</string>
+    <string name="select_all" msgid="408601760696146245">"සියල්ල තෝරන්න"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"වීඩියෝ ඇමතුම"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"පණිවිඩයක් යවන්න"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ඇමතුම් විස්තර"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"අවහිර කළ අංක"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> දැනටමත් අවහිර කර ඇත."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ගිණුම් ඇමතීම"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ක්‍රියාත්මක කරන්න"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"අවසර සකසන්න"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"වේග ඩයල් කිරීම සබල කිරීමට, සම්බන්ධතා අවසරය ක්‍රියාත්මක කරන්න."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ඔබේ ඇමතුම් ලොගය බැලීමට, දුරකථන අවසරය ක්‍රියාත්මක කරන්න."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ඔබේ සම්බන්ධතා බැලීමට, සම්බන්ධතා අවසරය ක්‍රියාත්මක කරන්න."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ඔබේ හඬ තැපෑල වෙත ප්‍රවේශ වීමට, දුරකථන අවසරය ක්‍රියාත්මක කරන්න."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ඔබේ සම්බන්ධතා සෙවීමට, සම්බන්ධතා අවසර ක්‍රියාත්මක කරන්න."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ඇමතුමක් ලබා ගැනීමට, දුරකථන අවසරය ක්‍රියාත්මක කරන්න."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"අයාචිත තැපෑල"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> නොබැඳි අතර ළඟා වීමට නොහැකිය"</string>
     <string name="about_phone_label" msgid="582991354677973731">"ගැන"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"බලන්න"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"ඇමතුම මකන ලදී. Messages වල මෙම ඇමතුම අතරතුර බෙදා ගත් ඇමුණුම් බලා මකන්න."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"ඇමතුම මකන ලදී. Messages වල මෙම ඇමතුම් අතරතුර බෙදා ගත් ඇමුණුම් බලා මකන්න."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-sk/strings.xml b/java/com/android/dialer/app/res/values-sk/strings.xml
index 60b63d5..a2c6c47 100644
--- a/java/com/android/dialer/app/res/values-sk/strings.xml
+++ b/java/com/android/dialer/app/res/values-sk/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Pridať čakanie"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Nastavenia"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulátor"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Vyt. skratku na nové rozhranie"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Všetky kontakty"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Použiť dotykovú tónovú klávesnicu"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Návrat k prebiehajúcemu hovoru"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Pridať hovor"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Prichádzajúce hovory"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Vstupuje sa do režimu hromadných akcií"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Odišli ste z režimu hromadných akcií"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Položka <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> bola vybraná"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Výber položky <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> bol zrušený"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Prehrať hlasovú správu"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Zobraziť kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Zavolať kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Hlasová schránka"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"hlasová správa"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"hlasové správy"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Áno"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nie"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Zrušiť režim hromadných akcií"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Odstrániť"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Zrušiť"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Chcete odstrániť vybraté položky (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Vybraté: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="few">"<b>"Chcete odstrániť tieto hlasové správy? "</b>"</item>
+      <item quantity="many">"<b>"Chcete odstrániť tieto hlasové správy? "</b>"</item>
+      <item quantity="other">"<b>"Chcete odstrániť tieto hlasové správy? "</b>"</item>
+      <item quantity="one">"<b>"Chcete odstrániť túto hlasovú správu? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> o <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Prebieha načítavanie z SIM karty..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakty na SIM karte"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nie je k dispozícii žiadna aplikácia na kontakty"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Hlasové vyhľadávanie nie je k dispozícii"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nie je možné volať, pretože aplikácia Telefón bola deaktivovaná."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Hľadať v kontaktoch"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Nové zmeškané hovory: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"V rýchlej voľbe zatiaľ nemáte žiadny kontakt"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Pridať obľúbený kontakt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Zatiaľ nemáte žiadne kontakty"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Pridať kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Klepnutím na obrázok môžete zobraziť všetky čísla. Pridržaním obrázka môžete zmeniť poradie."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Odstrániť"</string>
+    <string name="select_all" msgid="408601760696146245">"Vybrať všetko"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videohovor"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Odoslať správu"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Podrobnosti hovoru"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokované čísla"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Číslo <xliff:g id="NUMBER">%1$s</xliff:g> je už blokované."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Telefónne účty"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Zapnúť"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Nastaviť povolenia"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Ak chcete aktivovať rýchlu voľbu, zapnite povolenie Kontakty."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Ak si chcete zobraziť denník hovorov, zapnite povolenie Telefón."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Ak si chcete zobraziť kontakty, zapnite povolenie Kontakty."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ak chcete používať hlasovú schránku, zapnite povolenie Telefón."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Ak chcete hľadať kontakty, zapnite povolenie Kontakty."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Ak chcete volať, zapnite povolenie Telefón."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> je offline a nedá sa zastihnúť"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Informácie"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Zobraziť"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Hovor bol odstránený. Prílohy zdieľané počas neho si môžete pozrieť a odstrániť v aplikácii Správy."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Hovory boli odstránené. Prílohy zdieľané počas nich si môžete pozrieť a odstrániť v aplikácii Správy."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-sl/strings.xml b/java/com/android/dialer/app/res/values-sl/strings.xml
index b46b99a..64e9bda 100644
--- a/java/com/android/dialer/app/res/values-sl/strings.xml
+++ b/java/com/android/dialer/app/res/values-sl/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj premor"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Nastavitve"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Ustvari bliž. za novi up. vm."</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Vsi stiki"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Uporabi številčnico za tonsko klicanje"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Nazaj na klic, ki poteka"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj klic"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Dohodni klici"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Prehod v način množičnega dejanja"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Prehod iz načina množičnega dejanja"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Izbrano: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Preklican izbor: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Predvajanje sporočil glasovne pošte"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ogled stika <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Pokliči <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Glasovna pošta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"sporočilo v odzivniku"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"sporočila v odzivniku"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Prekliči način množičnega dejanja"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Izbriši"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Prekliči"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Želite izbrisati <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Št. izbranih: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Želite izbrisati ta sporočila v odzivniku? "</b>"</item>
+      <item quantity="two">"<b>"Želite izbrisati ta sporočila v odzivniku? "</b>"</item>
+      <item quantity="few">"<b>"Želite izbrisati ta sporočila v odzivniku? "</b>"</item>
+      <item quantity="other">"<b>"Želite izbrisati ta sporočila v odzivniku? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ob <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Nalaganje s kartice SIM ..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Stiki na kartici SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ni aplikacije za stike"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Glasovno iskanje ni na voljo"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Ni mogoče opraviti telefonskega klica, ker je aplikacija Telefon onemogočena."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Iskanje stikov"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Št. novih zgrešenih klicev: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Na seznamu za hitro klicanje nimate še nikogar"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodajte priljubljenega"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nimate še stikov"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodajte stik"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Dotaknite se slike, da prikažete vse številke, ali pa se je dotaknite in pridržite, da spremenite vrstni red."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Odstrani"</string>
+    <string name="select_all" msgid="408601760696146245">"Izberi vse"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoklic"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Pošljite sporočilo"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Podrobnosti klica"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokirane številke"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Telefonska številka <xliff:g id="NUMBER">%1$s</xliff:g> je že blokirana."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Računi za klicanje"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Vklop"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Nastavi dovoljenja"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Če želite omogočiti hitro klicanje, vklopite dovoljenje za stike."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Če si želite ogledati dnevnik klicev, vklopite dovoljenje za telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Če si želite ogledati stike, vklopite dovoljenje za stike."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Če želite dostopati do sporočil v odzivniku, vklopite dovoljenje za telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Če želite iskati po stikih, vklopite dovoljenje za stike."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Če želite klicati, vklopite dovoljenje za telefon."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Vsiljena pošta"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Oseba <xliff:g id="NAME">%1$s</xliff:g> nima vzpostavljene povezave in ni dosegljiva"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Vizitka"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Prikaži"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Klic je izbrisan. Priloge, ki so bile dane v skupno rabo v tem klicu, si lahko ogledate in izbrišete v aplikaciji Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Klici so izbrisani. Priloge, ki so bile dane v skupno rabo v teh klicih, si lahko ogledate in izbrišete v aplikaciji Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-sq/strings.xml b/java/com/android/dialer/app/res/values-sq/strings.xml
index 6a274fc..8f43ba7 100644
--- a/java/com/android/dialer/app/res/values-sq/strings.xml
+++ b/java/com/android/dialer/app/res/values-sq/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Shto një pritje"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Cilësimet"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simuluesi"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Krijo një shkurtore për ndërfaqen e re të përdoruesit"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Të gjitha kontaktet"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Përdor bllokun e tasteve"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Kthehu te telefonata"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Shto një telefonatë"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Telefonatat hyrëse"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Po hyn në modalitetin e veprimit në masë"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"U largove nga modaliteti i veprimit në masë"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"U zgjodh <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Zgjedhja e <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> u anulua"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Luaj postën zanore"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Shiko kontaktin <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Telefono <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Posta zanore"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sekonda"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. e <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"posta zanore"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"postat zanore"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Po"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Jo"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Anulo modalitetin e veprimeve në grup"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Fshi"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Anulo"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Të fshihen <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> të zgjedhura?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> të zgjedhura"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Të fshihen këto posta zanore? "</b>"</item>
+      <item quantity="one">"<b>"Të fshihet kjo postë zanore? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> në <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Po ngarkon nga karta SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontaktet e kartës SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nuk mund të përdoret asnjë aplikacion për kontaktet"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Kërkimi me zë nuk mundësohet"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefonata nuk mund të bëhet sepse aplikacioni \"Telefoni\" është i çaktivizuar."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Kërko për kontakte"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> telefonata të reja të humbura"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Askush nuk është ende në thirrjen tënde të shpejtuar"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Shto një të preferuar"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nuk ke ende kontakte"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Shto një kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Prek imazhin për të parë të gjithë numrat ose mbaje të shtypur për ta pozicionuar përsëri"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Hiq"</string>
+    <string name="select_all" msgid="408601760696146245">"Zgjidh të gjitha"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Telefonatë me video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Dërgo një mesazh"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detajet e telefonatës"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numrat e bllokuar"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> është i bllokuar tashmë."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Llogaritë e telefonatave"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktivizo"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Cakto lejet"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Për të aktivizuar thirrjen e shpejtuar, aktivizo lejen e Kontakteve."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Për të parë evidencën e telefonatave, aktivizo lejen e Telefonit."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Për të parë kontaktet, aktivizo lejen e Kontakteve."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Për të pasur qasje në postën zanore, aktivizo lejen e Telefonit."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Për të kërkuar kontaktet, aktivizo lejet e Kontakteve"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Për të kryer një telefonatë, aktivizo lejen e Telefonit."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"E bezdisshme"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> është jashtë linje dhe nuk mund të kontaktohet"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Rreth"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Shiko"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Telefonata u fshi. Shiko dhe fshi bashkëngjitjet e ndara gjatë kësaj telefonate te Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Telefonatat u fshinë. Shiko dhe fshi bashkëngjitjet e ndara gjatë telefonatave te Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-sr/strings.xml b/java/com/android/dialer/app/res/values-sr/strings.xml
index 0def958..d5fec5d 100644
--- a/java/com/android/dialer/app/res/values-sr/strings.xml
+++ b/java/com/android/dialer/app/res/values-sr/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Додај чекање"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Подешавања"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулатор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Направите пречицу за нови UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Сви контакти"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Употребите бројчаник за тонско бирање"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Врати се на позив који је у току"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Додај позив"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Долазни позиви"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Улазите у режим групних радњи"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Изашли сте из режима групних радњи"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Изабрано је <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Опозван је избор <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Пуштање говорне поште"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Прикажи контакт <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Позови <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Говорна пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин <xliff:g id="SECONDS">%s</xliff:g> сек"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"говорну поруку"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"говорне поруке"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Да"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Не"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Откажите режим групних радњи"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Избриши"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Откажи"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Желите ли да избришете изабрану(е) <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Изабраних: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Желите ли да избришете ове говорне поруке? "</b>"</item>
+      <item quantity="few">"<b>"Желите ли да избришете ове говорне поруке? "</b>"</item>
+      <item quantity="other">"<b>"Желите ли да избришете ове говорне поруке? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> у <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Учитава се са SIM картице…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакти на SIM картици"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Нема доступне апликације за контакте"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Гласовна претрага није доступна"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Није могуће упутити телефонски позив јер је апликација Телефон онемогућена."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Претражи контакте"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Нових пропуштених позива: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Немате ниједан контакт на брзом бирању"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Додај омиљен контакт"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Још увек немате ниједан контакт"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Додај контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Додирните слику да бисте видели све бројеве или додирните и задржите да бисте им променили распоред"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Уклони"</string>
+    <string name="select_all" msgid="408601760696146245">"Изабери све"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видео позив"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Пошаљи поруку"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Детаљи позива"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Блокирани бројеви"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> је већ блокиран."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Налози за позивање"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Укључи"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Подеси дозволе"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Да бисте омогућили брзо бирање, укључите дозволу за Контакте."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Да бисте видели евиденцију позива, укључите дозволу за Телефон."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Да бисте видели контакте, укључите дозволу за Контакте."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Да бисте приступили говорној пошти, укључите дозволу за Телефон."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Да бисте претражили контакте, укључите дозволе за Контакте."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Да бисте упутили позив, укључите дозволу за Телефон."</string>
@@ -232,4 +238,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Непожељан"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> је офлајн и не можете да га/је контактирате"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Основни подаци"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Прикажи"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Позив је избрисан. Прегледајте и избришите прилоге дељене током овог позива у Messages-у."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Позиви су избрисани. Прегледајте и избришите прилоге дељене током позива у Messages-у."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-sv/strings.xml b/java/com/android/dialer/app/res/values-sv/strings.xml
index 75aa731..02b7002 100644
--- a/java/com/android/dialer/app/res/values-sv/strings.xml
+++ b/java/com/android/dialer/app/res/values-sv/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Lägg till väntetid"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Inställningar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Skapa genväg till anv.gränssn."</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alla kontakter"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Använd tonvalstelefon"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Återvänd till pågående samtal"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Lägg t. samt."</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Inkommande samtal"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Öppnar läget för massåtgärd"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Stängde läget för massåtgärd"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Markerade <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Avmarkerade <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Spela upp röstmeddelande"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visa kontakten <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ring <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Röstbrevlåda"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sekund"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sek"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"röstbrevlåda"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"röstmeddelanden"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nej"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Avbryt läget för massåtgärd"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Radera"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Avbryt"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vill du radera markerade <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> har markerats"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vill du ta bort dessa röstmeddelanden? "</b>"</item>
+      <item quantity="one">"<b>"Vill du ta bort det här röstmeddelandet? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Läser in från SIM-kort…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakter från SIM-kort"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Det finns inga appar för kontakter"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Röstsökning är inte tillgänglig"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Det går inte att ringa eftersom appen Telefon har inaktiverats."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Sök efter kontakter"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nya missade samtal"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Du har ingen kontakt som snabbval ännu"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Lägg till en favorit"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du har inga kontakter ännu"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Lägg till en kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tryck på bilden för att visa alla nummer eller tryck länge för att ändra ordningen"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ta bort"</string>
+    <string name="select_all" msgid="408601760696146245">"Markera alla"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videosamtal"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Skicka ett meddelande"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Samtalsinfo"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blockerade nummer"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> är redan blockerat."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Konton för samtal"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktivera"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ange behörigheter"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Du måste aktivera behörigheten Kontakter för att kunna använda snabbuppringning."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Du måste aktivera behörigheten Telefon för att kunna visa samtalsloggen."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Du måste aktivera behörigheten Kontakter för att kunna visa kontakterna."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Du måste aktivera behörigheten Telefon för att kunna komma åt röstmeddelanden."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Aktivera behörigheter för Kontakter om du vill söka bland kontakterna."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Du måste aktivera behörigheten Telefon för att kunna ringa."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> är offline och går inte att nå"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Om"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Visa"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Samtalet har raderats. Visa och radera bilagor som delats under samtalet i Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Samtalen har raderats. Visa och radera bilagor som delats under samtal i Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-sw/strings.xml b/java/com/android/dialer/app/res/values-sw/strings.xml
index d3b8392..1255af4 100644
--- a/java/com/android/dialer/app/res/values-sw/strings.xml
+++ b/java/com/android/dialer/app/res/values-sw/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Ongeza kusubiri"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Mipangilio"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Kielelezo"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Unda Mkato Mpya wa Kiolesura"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Anwani zote"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Tumia kibao cha kuchapa cha sauti na kugusa"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Rudi kwa simu inayoendelea"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Ongeza simu"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Simu zinazoingia"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Unaingia katika hali ya kutekeleza vitendo vingi"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Umeondoka katika hali ya kutekeleza vitendo vingi"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Umeteua <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Umebatilisha uteuzi wa <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Sikiliza ujumbe wa sauti"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Angalia anwani <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Pigia <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Ujumbe wa sauti"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"Sekunde <xliff:g id="SECONDS">%s</xliff:g>"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"Dak <xliff:g id="MINUTES">%s</xliff:g> sek <xliff:g id="SECONDS">%s</xliff:g>"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ujumbe wa sauti"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ujumbe wa sauti"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ndiyo"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Hapana"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Ghairi hali ya kutekeleza vitendo vingi"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Futa"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Ghairi"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Je, ungependa kufuta <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> uliochagua?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> zimechaguliwa"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Je, unataka kufuta kila ujumbe wa sauti ulioonyeshwa? "</b>"</item>
+      <item quantity="one">"<b>"Je, unataka kufuta ujumbe huu wa sauti? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> saa <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Inapakia kutoka SIM kadi..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Anwani za SIM kadi"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Hakuna programu za mawasiliano zinazopatikana"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Kutafuta kwa kutamka hakupatikani"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Haiwezi kupiga simu kwa sababu programu ya Simu imezimwa."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Tafuta anwani"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Simu <xliff:g id="NUMBER">%s</xliff:g> za karibuni ambazo hazikujibiwa"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Hakuna mtu aliye katika orodha yako ya watu unaowasiliana nao zaidi"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Ongeza anwani unazopenda zaidi"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Bado huna anwani zozote"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Ongeza anwani"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Gusa picha ili uone nambari zote ama uguse na kushikilia ili upange upya"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ondoa"</string>
+    <string name="select_all" msgid="408601760696146245">"Chagua zote"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Hangout ya Video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Tuma SMS"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Maelezo ya simu"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Nambari zilizozuiwa"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> tayari imezuiwa."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Akaunti za simu"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Washa"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Weka ruhusa"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Ili kuwasha kipengele cha unaowasiliana nao zaidi, washa ruhusa ya Anwani."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Ili uone rekodi yako ya nambari za simu, washa ruhusa ya Simu."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Ili uone anwani zako, washa ruhusa ya Anwani."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ili ufikie ujumbe wako wa sauti, washa ruhusa ya Simu."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Ili utafute anwani zako, washa ruhusa za Anwani."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Ili upige simu, washa ruhusa ya Simu."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Taka"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> hayuko mtandaoni na hapatikani"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Kuhusu"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Angalia"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Mazungumzo ya simu yamefutwa. Angalia na ufute viambatisho vilivyoshirikiwa kwenye mazungumzo haya ya simu katika Programu ya Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Mazungumzo ya simu yamefutwa. Angalia na ufute viambatisho vilivyoshirikiwa kwenye mazungumzo ya simu katika Programu ya Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ta/strings.xml b/java/com/android/dialer/app/res/values-ta/strings.xml
index afb852b..61e7644 100644
--- a/java/com/android/dialer/app/res/values-ta/strings.xml
+++ b/java/com/android/dialer/app/res/values-ta/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"காத்திருப்பைச் சேர்"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"அமைப்பு"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"சிமுலேட்டர்"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"புதிய UI குறுக்குவழியை உருவாக்கு"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"எல்லா தொடர்புகளும்"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"டச் டோன் விசைப்பலகையைப் பயன்படுத்தவும்"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"செயலிலுள்ள அழைப்பிற்குத் திரும்பு"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"அழைப்பைச் சேர்"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"உள்வரும் அழைப்புகள்"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"மொத்தச் செயல் பயன்முறையில் நுழைகிறீர்கள்"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"மொத்தச் செயல் பயன்முறையிலிருந்து வெளியேறிவிட்டீர்கள்"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"தேர்ந்தெடுத்த <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"தேர்வுநீக்கிய <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"குரலஞ்சலை இயக்கு"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> தொடர்பைக் காட்டு"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ஐ அழை"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"குரலஞ்சல்"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> வி"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> நிமிடம் <xliff:g id="SECONDS">%s</xliff:g> வினாடி"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"குரலஞ்சல்"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"குரலஞ்சல்கள்"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ஆம்"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"வேண்டாம்"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"தொகுப்புச் செயல்கள் பயன்முறையை ரத்துசெய்யும்"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"நீக்கு"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ரத்துசெய்"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"தேர்ந்தெடுத்த <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ஐ நீக்கவா?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> தேர்ந்தெடுக்கப்பட்டன"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"இந்தக் குரலஞ்சல்களை நீக்கவா? "</b>"</item>
+      <item quantity="one">"<b>"இந்தக் குரலஞ்சலை நீக்கவா? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> அன்று <xliff:g id="TIME">%2$s</xliff:g> மணிக்கு"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"சிம் கார்டிலிருந்து ஏற்றுகிறது…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"சிம் கார்டின் தொடர்புகள்"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"தொடர்புகள் பயன்பாடு எதுவுமில்லை"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"குரல் தேடல் இல்லை"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Phone பயன்பாடு முடக்கப்பட்டுள்ளதால், ஃபோன் அழைப்பைச் செய்ய முடியாது."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"தொடர்புகளைத் தேடு"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> புதிய தவறிய அழைப்புகள்"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"இன்னும் விரைவு டயலில் யாரையும் சேர்க்கவில்லை"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"முக்கியமானவர்களைச் சேர்"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"இதுவரை எந்தத் தொடர்புகளும் இல்லை"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ஒரு தொடர்பைச் சேர்க்கவும்"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"எல்லா எண்களையும் பார்க்க, படத்தைத் தொடவும் அல்லது மறுவரிசைப்படுத்த, தொட்டுப் பிடித்திருக்கவும்"</string>
     <string name="remove_contact" msgid="2353580570488923668">"அகற்று"</string>
+    <string name="select_all" msgid="408601760696146245">"அனைத்தையும் தேர்ந்தெடு"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"வீடியோ அழைப்பு"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"செய்தி அனுப்பவும்"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"அழைப்பு விவரங்கள்"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"தடுக்கப்பட்ட எண்கள்"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ஏற்கனவே தடுக்கப்பட்டுள்ளது."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"அழைப்பு கணக்குகள்"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"இயக்கு"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"அனுமதிகளை அமை"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"விரைவு டயலை இயக்க, தொடர்புகள் அனுமதியை இயக்கவும்."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"அழைப்புப் பதிவைப் பார்க்க, ஃபோன் அனுமதியை இயக்கவும்."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"தொடர்புகளைப் பார்க்க, தொடர்புகள் அனுமதியை இயக்கவும்."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"குரலஞ்சலை அணுக, ஃபோன் அனுமதியை இயக்கவும்."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"தொடர்புகளைத் தேட, தொடர்புகள் அனுமதிகளை இயக்கவும்."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"அழைக்க, ஃபோன் அனுமதியை இயக்கவும்."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"ஸ்பேம்"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ஆஃப்லைனில் உள்ளதால், தொடர்புகொள்ள முடியாது"</string>
     <string name="about_phone_label" msgid="582991354677973731">"அறிமுகம்"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"காட்டு"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"அழைப்பு நீக்கப்பட்டது. இந்த அழைப்பின் போது பகிர்ந்த இணைப்புகளை மெசேஜஸ் பயன்பாட்டில் பார்க்கலாம், நீக்கலாம்."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"அழைப்புகள் நீக்கப்பட்டன. அழைப்புகளின் போது பகிர்ந்த இணைப்புகளை மெசேஜஸ் பயன்பாட்டில் பார்க்கலாம், நீக்கலாம்."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-te/strings.xml b/java/com/android/dialer/app/res/values-te/strings.xml
index ffc046f..3fb0c62 100644
--- a/java/com/android/dialer/app/res/values-te/strings.xml
+++ b/java/com/android/dialer/app/res/values-te/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"నిరీక్షణ సమయాన్ని జోడించు"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"సెట్టింగ్‌లు"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"సిములేటర్"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"కొత్త UI సత్వరమార్గం సృష్టించు"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"అన్ని పరిచయాలు"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"టచ్ టోన్ కీప్యాడ్‌ను ఉపయోగించండి"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ప్రోగ్రెస్‌లో ఉన్న కాల్‌కు వెళ్లు"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"కాల్‌ను జోడించు"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ఇన్‌కమింగ్ కాల్‌లు"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"బల్క్ చర్య మోడ్‌లోకి ప్రవేశిస్తున్నారు"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"బల్క్ చర్య మోడ్ నుండి నిష్క్రమించారు"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ఎంచుకోబడింది"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ఎంపిక తీసివేయబడింది"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"వాయిస్ మెయిల్ ప్లే చేయండి"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> పరిచయాన్ని వీక్షించండి"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g>కు కాల్ చేయి"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"వాయిస్ మెయిల్"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> సెక"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> నిమి <xliff:g id="SECONDS">%s</xliff:g> సెక"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"వాయిస్ మెయిల్"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"వాయిస్ మెయిల్‌లు"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"అవును"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"వద్దు"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"సమూహ చర్యల మోడ్‌ను రద్దు చేస్తుంది"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"తొలగించు"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"రద్దు చేయి"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ఎంచుకున్న <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ను తొలగించాలా?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ఎంచుకోబడ్డాయి"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ఈ వాయిస్ మెయిల్‌లను తొలగించాలా? "</b>"</item>
+      <item quantity="one">"<b>"ఈ వాయిస్ మెయిల్‌ను తొలగించాలా? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g>కి"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"సిమ్ కార్డు నుండి లోడ్ చేస్తోంది…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"సిమ్ కార్డు పరిచయాలు"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"పరిచయాల అనువర్తనం ఏదీ అందుబాటులో లేదు"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"వాయిస్ శోధన అందుబాటులో లేదు"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ఫోన్ అనువర్తనం నిలిపివేయబడినందున ఫోన్ కాల్ చేయలేరు."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"పరిచయాలను శోధించు"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> కొత్త సమాధానం ఇవ్వని కాల్‌లు"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"మీ స్పీడ్ డయల్‌లో ఇంకా ఎవరూ లేరు"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ఇష్టమైన వారిని జోడించండి"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"మీకు ఇప్పటికీ పరిచయాలేవీ లేవు"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"పరిచయాన్ని జోడించండి"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"అన్ని నంబర్‌లను చూడటానికి చిత్రాన్ని తాకండి లేదా క్రమం మార్చడానికి తాకి, కాసేపు అలాగే ఉంచండి"</string>
     <string name="remove_contact" msgid="2353580570488923668">"తీసివేయి"</string>
+    <string name="select_all" msgid="408601760696146245">"అన్నీ ఎంచుకోండి"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"వీడియో కాల్"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"సందేశాన్ని పంపు"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"కాల్ వివరాలు"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"బ్లాక్ చేయబడిన నంబర్‌లు"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ఇప్పటికే బ్లాక్ చేయబడింది."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"కాల్ చేసే ఖాతాలు"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ఆన్ చేయి"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"అనుమతులను సెట్ చేయి"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"స్పీడ్ డయల్‌ను ప్రారంభించడానికి, పరిచయాల అనుమతిని ఆన్ చేయండి."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"మీ కాల్ లాగ్‌ను చూడటానికి, ఫోన్ అనుమతిని ఆన్ చేయండి."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"మీ పరిచయాలను చూడటానికి, పరిచయాల అనుమతిని ఆన్ చేయండి."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"మీ వాయిస్ మెయిల్‌ను ప్రాప్యత చేయడానికి, ఫోన్ అనుమతిని ఆన్ చేయండి."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"మీ పరిచయాలను శోధించడానికి, పరిచయాల అనుమతులను ఆన్ చేయండి."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"కాల్ చేయడానికి, ఫోన్ అనుమతిని ఆన్ చేయండి."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"స్పామ్"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ఆఫ్‌లైన్‌లో ఉన్నందున వారిని చేరుకోవడం సాధ్యపడదు"</string>
     <string name="about_phone_label" msgid="582991354677973731">"పరిచయం"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"వీక్షించండి"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"కాల్ తొలగించబడింది. ఈ కాల్‌లో భాగస్వామ్యం చేయబడిన జోడింపులను సందేశాల అనువర్తనంలో వీక్షించండి మరియు తొలగించండి."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"కాల్ తొలగించబడింది. కాల్‌ల్లో భాగస్వామ్యం చేయబడిన జోడింపులను సందేశాల అనువర్తనంలో వీక్షించండి మరియు తొలగించండి."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-th/strings.xml b/java/com/android/dialer/app/res/values-th/strings.xml
index 13916a5..43eef67 100644
--- a/java/com/android/dialer/app/res/values-th/strings.xml
+++ b/java/com/android/dialer/app/res/values-th/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"เพิ่มการรอ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"การตั้งค่า"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"เครื่องมือจำลอง"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"สร้างทางลัด UI ใหม่"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"รายชื่อติดต่อทั้งหมด"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ใช้ปุ่มกดสัญญาณเสียง"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"กลับไปคุยสายต่อ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"เพิ่มการโทร"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"สายโทรเข้า"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"กำลังเข้าสู่โหมดการดำเนินการแบบกลุ่ม"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ออกจากโหมดการทำงานแบบกลุ่มแล้ว"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"เลือก <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> แล้ว"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"ยกเลิกการเลือก <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> แล้ว"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"เล่นข้อความเสียง"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"ดูรายชื่อติดต่อ <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"โทรหา <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ข้อความเสียง"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> วินาที"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> นาที <xliff:g id="SECONDS">%s</xliff:g> วินาที"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ข้อความเสียง"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ข้อความเสียง"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ใช่"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ไม่"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ยกเลิกโหมดการทำงานแบบกลุ่ม"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ลบ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ยกเลิก"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ลบ<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ที่เลือกหรือไม่"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"เลือกไว้ <xliff:g id="NUMBER">%1$s</xliff:g> รายการ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ลบข้อความเสียงเหล่านี้ไหม "</b>"</item>
+      <item quantity="one">"<b>"ลบข้อความเสียงนี้ไหม "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"วันที่ <xliff:g id="DATE">%1$s</xliff:g> เวลา <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"กำลังโหลดจากซิมการ์ด…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"รายชื่อบนซิมการ์ด"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ไม่มีแอปรายชื่อติดต่อที่พร้อมใช้งาน"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"การค้นหาด้วยเสียงไม่พร้อมใช้งาน"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ไม่สามารถโทรศัพท์ได้เนื่องจากแอปพลิเคชันโทรศัพท์ถูกปิดใช้งาน"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ค้นหารายชื่อติดต่อ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"สายที่ไม่ได้รับใหม่ <xliff:g id="NUMBER">%s</xliff:g> สาย"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ยังไม่ได้กำหนดผู้ใดในการโทรด่วน"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"เพิ่มรายการโปรด"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"คุณยังไม่มีรายชื่อติดต่อ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"เพิ่มรายชื่อติดต่อ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"แตะรูปภาพเพื่อดูหมายเลขทั้งหมด หรือแตะค้างไว้เพื่อจัดเรียงใหม่"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ลบ"</string>
+    <string name="select_all" msgid="408601760696146245">"เลือกทั้งหมด"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"แฮงเอาท์วิดีโอ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ส่งข้อความ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"รายละเอียดการโทร"</string>
@@ -201,7 +208,7 @@
     <string name="voicemail_settings_label" msgid="4594299554519920570">"ข้อความเสียง"</string>
     <string name="voicemail_settings_select_sim_title" msgid="129296966967476845">"เลือกซิมสำหรับการตั้งค่าข้อความเสียง"</string>
     <string name="blocked_numbers_disabled_emergency_header_label" msgid="6936696532562923971">"การบล็อกสายเรียกเข้าปิดชั่วคราว"</string>
-    <string name="blocked_numbers_disabled_emergency_desc" msgid="5484785225285297040">"ระบบปิดใช้การบล็อกสายเรียกเข้าเนื่องจากคุณติดต่อบริการฉุกเฉินจากโทรศัพท์เครื่องนี้ภายใน 48 ชั่วโมงที่ผ่านมา ระบบจะเปิดใช้คุณลักษณะนี้อีกครั้งโดยอัตโนมัติเมื่อครบ 48 ชั่วโมง"</string>
+    <string name="blocked_numbers_disabled_emergency_desc" msgid="5484785225285297040">"ระบบปิดใช้การบล็อกสายเรียกเข้าเนื่องจากคุณติดต่อบริการฉุกเฉินจากโทรศัพท์เครื่องนี้ภายใน 48 ชั่วโมงที่ผ่านมา ระบบจะเปิดใช้ฟีเจอร์นี้อีกครั้งโดยอัตโนมัติเมื่อครบ 48 ชั่วโมง"</string>
     <string name="import_send_to_voicemail_numbers_label" msgid="7821890095264297681">"นำเข้าหมายเลข"</string>
     <string name="blocked_call_settings_import_description" msgid="1819412052545228965">"ก่อนหน้านี้คุณได้ทำเครื่องหมายว่าให้ส่งผู้โทรบางคนไปยังข้อความเสียงโดยอัตโนมัติผ่านแอปอื่นๆ"</string>
     <string name="blocked_call_settings_view_numbers_button" msgid="3332727948554356704">"ดูหมายเลข"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"หมายเลขที่ถูกบล็อก"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ถูกบล็อกอยู่แล้ว"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"บัญชีการโทร"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"เปิด"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ตั้งค่าสิทธิ์"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"หากต้องการเปิดใช้การโทรด่วน ให้เปิดสิทธิ์เข้าถึงรายชื่อติดต่อ"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"หากต้องการดูประวัติการโทร ให้เปิดสิทธิ์เข้าถึงโทรศัพท์"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"หากต้องการดูรายชื่อติดต่อ ให้เปิดสิทธิ์เข้าถึงรายชื่อติดต่อ"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"หากต้องการเข้าถึงข้อความเสียง ให้เปิดสิทธิ์เข้าถึงโทรศัพท์"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"หากต้องการค้นหารายชื่อติดต่อ ให้เปิดสิทธิ์เข้าถึงรายชื่อติดต่อ"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"หากต้องการโทรออก ให้เปิดสิทธิ์เข้าถึงโทรศัพท์"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"สแปม"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ออฟไลน์อยู่และไม่สามารถติดต่อได้"</string>
     <string name="about_phone_label" msgid="582991354677973731">"เกี่ยวกับ"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"ดู"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"ลบการโทรแล้ว ดูและลบไฟล์แนบที่แชร์ระหว่างการโทรนี้ใน Messages"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"ลบการโทรแล้ว ดูและลบไฟล์แนบที่แชร์ระหว่างการโทรใน Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-tl/strings.xml b/java/com/android/dialer/app/res/values-tl/strings.xml
index cc44cb5..f6f1a67 100644
--- a/java/com/android/dialer/app/res/values-tl/strings.xml
+++ b/java/com/android/dialer/app/res/values-tl/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Magdagdag ng paghihintay"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Mga Setting"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Gawa ng Shortcut ng Bagong UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Lahat ng mga contact"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Gumamit ng touch tone na keypad"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Bumalik sa kasalukuyang tawag"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Mag-add: tawag"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Mga paparating na tawag"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Pumapasok sa bulk action mode"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Umalis sa bulk action mode"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Napili <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Inalis sa pagkakapili <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"I-play ang voicemail"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Tingnan ang contact na si <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Tawagan si <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mga voicemail"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Oo"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Hindi"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Kanselahin ang batch actions mode"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"I-delete"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Kanselahin"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"I-delete ang napiling <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ang napili"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"I-delete ang mga voicemail na ito? "</b>"</item>
+      <item quantity="other">"<b>"I-delete ang mga voicemail na ito? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ng <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Naglo-load mula sa SIM card…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Mga contact sa SIM card"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Walang available na app ng mga contact"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Hindi available ang paghahanap gamit ang boses"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Hindi makagawa ng tawag sa telepono dahil naka-disable ang application na Telepono."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Maghanap ng mga contact"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> (na) bagong hindi nasagot na tawag"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Wala pang tao sa iyong speed dial"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Magdagdag ng paborito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Wala ka pang sinumang mga contact"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Magdagdag ng contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Pindutin ang larawan upang makita ang lahat ng numero o pindutin nang matagal upang ayusing muli"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Alisin"</string>
+    <string name="select_all" msgid="408601760696146245">"Piliin lahat"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Mag-video call"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Magpadala ng mensahe"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Mga detalye ng tawag"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Mga naka-block na numero"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Naka-block na ang <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Account sa pagtawag"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"I-on"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Magtakda ng mga pahintulot"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Upang i-enable ang speed dial, i-on ang pahintulot ng Mga Contact."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Upang makita ang iyong log ng tawag, i-on ang pahintulot ng Telepono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Upang makita ang iyong mga contact, i-on ang pahintulot ng Mga Contact."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Upang ma-access ang iyong voicemail, i-on ang pahintulot ng Telepono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Upang hanapin ang iyong mga contact, i-on ang mga pahintulot sa Mga Contact."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Upang tumawag, i-on ang pahintulot ng Telepono."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"Offline si <xliff:g id="NAME">%1$s</xliff:g> at hindi makontak"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Tungkol dito"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Tingnan"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Dinelete ang tawag. Tingnan at i-delete ang mga attachment na ibinahagi sa tawag na ito sa Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Dinelete ang mga tawag. Tingnan at i-delete ang mga attachment na ibinahagi sa mga tawag sa Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-tr/strings.xml b/java/com/android/dialer/app/res/values-tr/strings.xml
index 2f6f704..cd46bf0 100644
--- a/java/com/android/dialer/app/res/values-tr/strings.xml
+++ b/java/com/android/dialer/app/res/values-tr/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Bekleme ekle"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ayarlar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simülatör"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Kull. Arayüzü Kısayolu Oluştur"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tüm kişiler"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Telefon tuş takımını kullan"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Çağrıya dön"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Çağrı ekle"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Gelen çağrılar"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Toplu işlem moduna giriliyor"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Toplu işlem modundan çıkıldı"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Seçildi: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Seçimi kaldırıldı: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Sesli mesajı oynat"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Kişiyi görüntüle: <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ara: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Sesli Mesaj"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sn."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> dk. <xliff:g id="SECONDS">%s</xliff:g> sn."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"sesli mesaj"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"sesli mesajlar"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Evet"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Hayır"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Toplu işlemler modu iptal edilir"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Sil"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"İptal"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Seçili <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> silinsin mi?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> öğe seçildi"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Bu sesli mesajlar silinsin mi? "</b>"</item>
+      <item quantity="one">"<b>"Bu sesli mesaj silinsin mi? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM karttan yükleniyor..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM kart kişileri"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Kullanılabilir rehber uygulaması yok"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Sesli arama kullanılamaz"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefon uygulaması devre dışı bırakıldığından telefon edilemiyor."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Kişilerde ara"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> yeni cevapsız çağrı"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Hızlı arama listenizde henüz kimse yok"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Favori ekle"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Henüz kayıtlı kişi yok"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Kişi ekle"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tüm numaraları görmek için resme dokunun veya yeniden sıralamak için dokunup basılı tutun"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Kaldır"</string>
+    <string name="select_all" msgid="408601760696146245">"Tümünü seç"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video görüşmesi"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"İleti gönder"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Çağrı ayrıntıları"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Engellenen numaralar"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> numaralı telefon zaten engellendi."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Çağrı hesapları"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aç"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"İzinleri ayarla"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Hızlı aramayı etkinleştirmek için Kişiler iznini açın."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Çağrı günlüğünüzü görmek için Telefon iznini açın."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kişilerinizi görmek için Kişiler iznini açın."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Sesli mesajınıza erişmek için Telefon iznini açın."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kişilerinizde arama yapmak için Kişiler izinlerini açın."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Telefon etmek için Telefon iznini açın."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> çevrimdışı olduğundan ulaşılamıyor"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Hakkında"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Göster"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Çağrı silindi. Bu çağrı sırasında paylaşılan ekleri Mesajlar\'da görebilir ve silebilirsiniz."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Çağrılar silindi. Çağrılar sırasında paylaşılan ekleri Mesajlar\'da görebilir ve silebilirsiniz."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-uk/strings.xml b/java/com/android/dialer/app/res/values-uk/strings.xml
index 9a79012..e2ae399 100644
--- a/java/com/android/dialer/app/res/values-uk/strings.xml
+++ b/java/com/android/dialer/app/res/values-uk/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Додати паузу"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Налаштування"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Створити ярлик для нової дії"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Усі контакти"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Використовувати тональний набір"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Повернутися до поточного виклику"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Додати виклик"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Вхідні виклики"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Перехід у режим масових дій"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Ви вийшли з режиму масових дій"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Вибрано користувача <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Скасовано вибір користувача <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Відтворити голосову пошту"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Переглянути контакт <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Набрати <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Голосова пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> с"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> хв <xliff:g id="SECONDS">%s</xliff:g> с"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"голосова пошта"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"голосова пошта"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Так"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ні"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Скасувати режим масових дій"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Видалити"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Скасувати"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Видалити вибране (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Вибрано <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Видалити ці повідомлення голосової пошти? "</b>"</item>
+      <item quantity="few">"<b>"Видалити ці повідомлення голосової пошти? "</b>"</item>
+      <item quantity="many">"<b>"Видалити ці повідомлення голосової пошти? "</b>"</item>
+      <item quantity="other">"<b>"Видалити ці повідомлення голосової пошти? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> о <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Завантаж. із SIM-карти…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакти SIM-карти"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Немає додатка з контактами"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Голосовий пошук недоступний"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Не вдається здійснити дзвінок, оскільки додаток Телефон вимкнено."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Пошук контактів"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Нових пропущених дзвінків: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Немає номерів для швидкого набору"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Додати номер"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Ще немає контактів"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Додати контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Торкніться зображення, щоб побачити всі номери, або натисніть і утримуйте, щоб змінити порядок."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Видалити"</string>
+    <string name="select_all" msgid="408601760696146245">"Вибрати все"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Відеодзвінок"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Надіслати повідомлення"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Деталі виклику"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Заблоковані номери"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Номер <xliff:g id="NUMBER">%1$s</xliff:g> уже заблоковано."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Обл. записи для дзвінків"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Увімкнути"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Налаштувати дозволи"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Щоб активувати швидкий набір, увімкніть дозвіл \"Контакти\"."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Щоб переглянути журнал викликів, увімкніть дозвіл \"Телефон\"."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Щоб переглянути контакти, увімкніть дозвіл \"Контакти\"."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Щоб користуватися голосовою поштою, увімкніть дозвіл \"Телефон\"."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Щоб шукати контакти, увімкніть дозвіл \"Контакти\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Щоб зателефонувати, увімкніть дозвіл \"Телефон\"."</string>
@@ -234,4 +241,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Спам"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> не в мережі, неможливо встановити зв’язок"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Про додаток"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Переглянути"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Виклик видалено. Переглянути й видалити файли, надіслані під час цього виклику, можна в Повідомленнях."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Виклики видалено. Переглянути й видалити файли, надіслані під час цих викликів, можна в Повідомленнях."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-ur/strings.xml b/java/com/android/dialer/app/res/values-ur/strings.xml
index 2519871..f713f4c 100644
--- a/java/com/android/dialer/app/res/values-ur/strings.xml
+++ b/java/com/android/dialer/app/res/values-ur/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"انتظار شامل کریں"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ترتیبات"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"‏نیا UI شارٹ کٹ تخلیق کریں"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"سبھی رابطے"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ٹچ ٹون کی پیڈ کا استعمال کریں"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"جاری کال پر واپس لوٹیں"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"کال شامل کریں"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"آنے والی کالیں"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"بلک کاروائی موڈ میں داخل ہو رہا ہے"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"بلک کاروائی موڈ چھوڑ دیا"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"منتخب کردہ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"غیر منتخب کردہ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"صوتی میل چلائیں"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"رابطہ <xliff:g id="NAME">%1$s</xliff:g> دیکھیں"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> کو کال کریں"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"صوتی میل"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> سیکنڈ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> منٹ <xliff:g id="SECONDS">%s</xliff:g> سیکنڈ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"صوتی میل"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"صوتی میلز"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ہاں"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"نہیں"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"بیچ کاروائی موڈ منسوخ کریں"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"حذف کریں"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"منسوخ کریں"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"منتخب کردہ <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> حذف کریں؟"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> منتخب کردہ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ان صوتی میلز کو حذف کریں؟ "</b>"</item>
+      <item quantity="one">"<b>"اس صوتی میل کو حذف کریں؟ "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> بوقت <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"‏SIM کارڈ سے لوڈ ہو رہا ہے…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"‏SIM کارڈ کے رابطے"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"رابطوں کی کوئی ایپ دستیاب نہیں ہے"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"صوتی تلاش دستیاب نہیں ہے"</string>
     <string name="call_not_available" msgid="7850148370757361155">"فون کال نہیں کی جا سکتی ہے کیونکہ فون ایپلیکیشن کو غیر فعال کر دیا گیا ہے۔"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"رابطے تلاش کریں"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> نئی چھوٹی ہوئی کالیں"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"آپ کے اسپیڈ ڈائل پر ابھی تک کوئی نہیں ہے"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ایک پسندیدہ شامل کریں"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"آپ کے پاس ابھی تک کوئی رابطے نہیں ہیں"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ایک رابطہ شامل کریں"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"سبھی نمبرز دیکھنے کیلئے تصویر ٹچ کریں یا دوبارہ ترتیب دینے کیلئے ٹچ کریں اور پکڑے رہیں"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ہٹائیں"</string>
+    <string name="select_all" msgid="408601760696146245">"سبھی کو منتخب کریں"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ویڈیو کال"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"پیغام بھیجیں"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"کال کی تفصیلات"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"مسدود کردہ نمبرز"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> پہلے ہی مسدود ہے۔"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"کالنگ اکاؤنٹس"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"آن کریں"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"اجازتیں طے کریں"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"اسپیڈ ڈائل کو فعال کرنے کیلئے رابطوں کی اجازت آن کریں۔"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"اپنا کال لاگ دیکھنے کیلئے فون کی اجازت آن کریں۔"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"اپنے رابطے دیکھنے کیلئے رابطوں کی اجازت آن کریں۔"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"اپنی صوتی میل تک رسائی کیلئے فون کی اجازت آن کریں۔"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"اپنے رابطوں کو تلاش کرنے کیلئے رابطوں کی اجازتیں آن کریں۔"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"کال کرنے کیلئے فون کی اجازت آن کریں۔"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"سپام"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> آف لائن ہے اور اس تک پہنچا نہیں جا سکتا"</string>
     <string name="about_phone_label" msgid="582991354677973731">"تفصیل"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"دیکھیں"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"کال حذف ہو گئی۔ اس کال کے دوران اشتراک کردہ منسلکہ جات کو \'پیغامات \' میں ملاحظہ کریں اور حذف کریں۔"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"کالیں حذف ہو گئیں۔ کالوں کے دوران اشتراک کردہ منسلکہ جات کو \'پیغامات \' میں ملاحظہ کریں اور حذف کریں۔"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-uz/strings.xml b/java/com/android/dialer/app/res/values-uz/strings.xml
index 705cae7..2825391 100644
--- a/java/com/android/dialer/app/res/values-uz/strings.xml
+++ b/java/com/android/dialer/app/res/values-uz/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Kutishni qo‘shish"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Sozlamalar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulyator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Yangi interfeys uchun yorliq"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Barcha kontaktlar"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Tovushli raqam tergich"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Amaldagi chaqiruvga qaytish"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Chaqiruv qo‘shish"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Kiruvchi qo‘ng‘iroqlar"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Yoppasiga bajariladigan amallar rejimiga o‘tilmoqda"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Yoppasiga bajariladigan amallar rejimidan chiqib ketildi"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> tanlandi"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> tanlovi bekor qilindi"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Ovozli xabarni eshitish"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> kontaktini ko‘rish"</string>
     <string name="description_call" msgid="1532402285334775372">"Qo‘ng‘iroq: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Ovozli pochta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> soniya"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> daq <xliff:g id="SECONDS">%s</xliff:g> son"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ovozli xabar"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ovozli xabarlar"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ha"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Yo‘q"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Yoppasiga bajariladigan amallar rejimini bekor qilish"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"O‘chirish"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Bekor qilish"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Tanlangan <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> o‘chirib tashlansinmi?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Tanlandi: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Bu ovozli xabarlar o‘chirib tashlansinmi? "</b>"</item>
+      <item quantity="one">"<b>"Bu ovozli xabar o‘chirib tashlansinmi? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM kartadan yuklanmoqda…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM karta kontaktlari"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Hech qanday kontakt ilovasi yo‘q"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Ovozli qidiruv mavjud emas"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefon ilovasi o‘chirib qo‘yilgani sababli telefon qo‘ng‘iroqlarini amalga oshirib bo‘lmaydi."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Kontaktlar ichidan qidirish"</string>
@@ -145,15 +153,14 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ta javobsiz chaqiruv"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Tezkor terish uchun hech kim yo‘q"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Tezkor raqam terishni sozlang"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Sizda hali hech qanday kontakt yo‘q"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Yangi kontakt qo‘shing"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Barcha raqamlarni ko‘rish uchun rasm ustiga bosing yoki joyini o‘zgartirish uchun rasmni bosib turing."</string>
     <string name="remove_contact" msgid="2353580570488923668">"O‘chirish"</string>
+    <string name="select_all" msgid="408601760696146245">"Hammasini tanlash"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video qo‘ng‘iroq"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Xabar yuborish"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Chaqiruv tafsilotlari"</string>
     <string name="call_log_action_share_voicemail" msgid="8888250682433873454">"Yuborish:"</string>
-    <string name="call_log_action_call" msgid="682724094251540583">"Qo‘ng‘iroq qilish: <xliff:g id="NAMEORNUMBER">^1</xliff:g>"</string>
+    <string name="call_log_action_call" msgid="682724094251540583">"Chaqiruv: <xliff:g id="NAMEORNUMBER">^1</xliff:g>"</string>
     <string name="description_incoming_missed_call" msgid="8292535799379230029">"Javobsiz chaqiruv: <xliff:g id="NAMEORNUMBER">^1</xliff:g>, <xliff:g id="TYPEORLOCATION">^2</xliff:g>, <xliff:g id="TIMEOFCALL">^3</xliff:g>, <xliff:g id="PHONEACCOUNT">^4</xliff:g>."</string>
     <string name="description_incoming_answered_call" msgid="3920182963103160610">"Qo‘ng‘iroqqa javob berildi: <xliff:g id="NAMEORNUMBER">^1</xliff:g>, <xliff:g id="TYPEORLOCATION">^2</xliff:g>, <xliff:g id="TIMEOFCALL">^3</xliff:g>, <xliff:g id="PHONEACCOUNT">^4</xliff:g>."</string>
     <string name="description_unread_voicemail" msgid="145170985013419170">"O‘qilmagan ovozli xabar (<xliff:g id="NAMEORNUMBER">^1</xliff:g>, <xliff:g id="TYPEORLOCATION">^2</xliff:g>, <xliff:g id="TIMEOFCALL">^3</xliff:g>, <xliff:g id="PHONEACCOUNT">^4</xliff:g>)."</string>
@@ -161,7 +168,7 @@
     <string name="description_outgoing_call" msgid="543952487882919924">"Chaqiruv: <xliff:g id="NAMEORNUMBER">^1</xliff:g>. <xliff:g id="TYPEORLOCATION">^2</xliff:g>, <xliff:g id="TIMEOFCALL">^3</xliff:g>, <xliff:g id="PHONEACCOUNT">^4</xliff:g>."</string>
     <string name="call_log_via_number" msgid="1340307109806397650">"<xliff:g id="NUMBER">%1$s</xliff:g> raqami orqali"</string>
     <string name="call_log_via_number_phone_account" msgid="7698459003033083416">"<xliff:g id="PHONEACCOUNT">%1$s</xliff:g>, <xliff:g id="NUMBER">%2$s</xliff:g> raqami orqali"</string>
-    <string name="description_call_action" msgid="4042796498169106545">"Qo‘ng‘iroq qilish: <xliff:g id="NAMEORNUMBER">^1</xliff:g>"</string>
+    <string name="description_call_action" msgid="4042796498169106545">"Chaqiruv: <xliff:g id="NAMEORNUMBER">^1</xliff:g>"</string>
     <string name="description_video_call_action" msgid="1237090968588659650">"Video qo‘ng‘iroq qilish: <xliff:g id="NAMEORNUMBER">^1</xliff:g>."</string>
     <string name="description_voicemail_action" msgid="3290143432403538524">"<xliff:g id="NAMEORNUMBER">^1</xliff:g> kontaktidan kelgan ovozli xabarni tinglash"</string>
     <string name="description_voicemail_play" msgid="737337291418966183">"<xliff:g id="NAMEORNUMBER">^1</xliff:g> tomonidan yuborilgan ovozli xabarni eshitish"</string>
@@ -213,14 +220,12 @@
     <string name="block_list" msgid="4701585783411870782">"Bloklangan raqamlar"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> raqami allaqachon bloklangan."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Chaqiruv uchun hisoblar"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Yoqish"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ruxsatnomalarni sozlash"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Tezkor raqam terish uchun “Kontaktlar” ruxsatnomasini yoqing."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Qo‘ng‘iroqlaringiz ro‘yxatini ko‘rish uchun “Telefon” ruxsatnomasini yoqing."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kontaktlaringizni ko‘rish uchun “Kontaktlar” ruxsatnomasini yoqing."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ovozli pochtaga kirish uchun “Telefon” ruxsatnomasini yoqing."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kontaktlarni qidirish uchun “Kontaktlar” ruxsatnomasini yoqing."</string>
-    <string name="permission_place_call" msgid="8686908130349369423">"Qo‘ng‘iroq qilish uchun “Telefon” ruxsatnomasini yoqing."</string>
+    <string name="permission_place_call" msgid="8686908130349369423">"Chaqiruv uchun “Telefon” ruxsatnomasini yoqing."</string>
     <string name="toast_cannot_write_system_settings" msgid="1108307781918782515">"Telefon ilovasida tizim sozlamalarini o‘zgartirish uchun ruxsat yo‘q."</string>
     <string name="blocked_number_call_log_label" msgid="4212282846299997693">"Bloklandi"</string>
     <string name="call_log_action_block_report_number" msgid="7302636538668696729">"Bloklash/spam deb belgilash"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> hozir oflayn va u bilan bog‘lanishning imkoni yo‘q"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Ilova haqida"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Ko‘rish"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Chaqiruv o‘chirildi. Android Xabarlar ilovasi orqali bu qo‘ng‘iroq davomida ulashilgan biriktirmalarni ko‘rish va o‘chirsh mumkin."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Chaqiruvlar o‘chirildi. Android Xabarlar ilovasi orqali bu qo‘ng‘iroqlar davomida ulashilgan biriktirmalarni ko‘rish va o‘chirsh mumkin."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-vi/strings.xml b/java/com/android/dialer/app/res/values-vi/strings.xml
index 5a60e0a..94f421f 100644
--- a/java/com/android/dialer/app/res/values-vi/strings.xml
+++ b/java/com/android/dialer/app/res/values-vi/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Thêm chờ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Cài đặt"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Trình mô phỏng"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Tạo phím tắt giao diện người dùng mới"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tất cả liên hệ"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Sử dụng bàn phím số cảm ứng có âm"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Quay lại cuộc gọi đang thực hiện"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Thêm cuộc gọi"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Cuộc gọi đến"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Truy cập chế độ tác vụ hàng loạt"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Đã rời khỏi chế độ tác vụ hàng loạt"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Đã chọn <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Đã bỏ chọn <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Phát thư thoại"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Xem thông tin liên hệ của <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Gọi <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Thư thoại"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> giây"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> phút <xliff:g id="SECONDS">%s</xliff:g> giây"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"thư thoại"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"thư thoại"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Có"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Không"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Hủy chế độ tác vụ hàng loạt"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Xóa"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Hủy"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Xóa <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> đã chọn?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Đã chọn <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Xóa các thư thoại này? "</b>"</item>
+      <item quantity="one">"<b>"Xóa thư thoại này? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> lúc <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Đang tải từ thẻ SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Danh bạ trên thẻ SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Không có ứng dụng danh bạ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Không có tính năng tìm kiếm bằng giọng nói"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Không thể thực hiện cuộc gọi điện thoại vì ứng dụng Điện thoại đã bị tắt."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Tìm kiếm trong danh bạ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> cuộc gọi nhỡ mới"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Chưa có ai trong danh bạ quay số nhanh của bạn"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Thêm liên hệ quay số nhanh yêu thích"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Bạn chưa có bất kỳ liên hệ nào"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Thêm liên hệ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Chạm vào hình ảnh để xem tất cả các số hoặc chạm và giữ để sắp xếp lại"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Xóa"</string>
+    <string name="select_all" msgid="408601760696146245">"Chọn tất cả"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Cuộc gọi điện video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Gửi tin nhắn"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Chi tiết cuộc gọi"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Số bị chặn"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> đã bị chặn."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Tài khoản gọi"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Bật"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Đặt quyền"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Để bật quay số nhanh, bật quyền đối với Danh bạ."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Để xem nhật ký cuộc gọi của bạn, bật quyền đối với Điện thoại."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Để xem danh bạ của bạn, bật quyền đối với Danh bạ."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Để truy cập thư thoại của bạn, bật quyền đối với Điện thoại."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Để tìm kiếm liên hệ của bạn, hãy bật quyền đối với Danh bạ."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Để thực hiện cuộc gọi, bật quyền đối với Điện thoại."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Spam"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g> ngoại tuyến và không liên hệ được"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Giới thiệu"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Xem"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Đã xóa cuộc gọi. Hãy xem và xóa tệp đính kèm được chia sẻ trong cuộc gọi này trong Messages."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Đã xóa cuộc gọi. Hãy xem và xóa tệp đính kèm được chia sẻ trong các cuộc gọi này trong Messages."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-zh-rCN/strings.xml b/java/com/android/dialer/app/res/values-zh-rCN/strings.xml
index 98abc39..4a5dd6e 100644
--- a/java/com/android/dialer/app/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/app/res/values-zh-rCN/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"延长等待时间"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"设置"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"模拟器"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"创建可在新界面中使用的快捷键"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"所有联系人"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"使用按键式键盘"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"返回正在进行的通话"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"添加通话"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"来电"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"正在进入批量操作模式"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"已退出批量操作模式"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"已选择 <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"已取消选择 <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"播放语音邮件"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"查看联系人<xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"呼叫<xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"语音信箱"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> 分钟 <xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"语音邮件"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"语音邮件"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"是"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"否"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"取消批量操作模式"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"删除"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"取消"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"要删除所选的<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>吗？"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"已选择 <xliff:g id="NUMBER">%1$s</xliff:g> 封"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"要删除这些语音邮件吗？"</b>"</item>
+      <item quantity="one">"<b>"要删除这封语音邮件吗？"</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g><xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"正从 SIM 卡中加载..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM卡联系人"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"没有可用的通讯录应用"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"无法使用语音搜索"</string>
     <string name="call_not_available" msgid="7850148370757361155">"“电话”应用已被停用，因此无法拨打电话。"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"搜索联系人"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g>个新的未接电话"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"尚未给任何联系人设定快速拨号"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"添加常用联系人"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"您还没有任何联系人"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"添加联系人"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"触摸图片可查看所有号码，触摸并按住可重新排序"</string>
     <string name="remove_contact" msgid="2353580570488923668">"移除"</string>
+    <string name="select_all" msgid="408601760696146245">"全选"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"视频通话"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"发送短信"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"通话详情"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"已屏蔽的号码"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> 已被屏蔽。"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"通话帐号"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"开启"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"设置权限"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"要启用快速拨号功能，请开启“通讯录”权限。"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"要查看您的通话记录，请开启“电话”权限。"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"要查看您的联系人，请开启“通讯录”权限。"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"要使用您的语音信箱，请开启“电话”权限。"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"要搜索您的联系人，请开启“通讯录”权限。"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"要拨打电话，请开启“电话”权限。"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"骚扰电话号码"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g>不在线，无法接通"</string>
     <string name="about_phone_label" msgid="582991354677973731">"应用信息"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"查看"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"通话已删除。请前往“信息”应用查看和删除通过此通话分享的附件。"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"通话已删除。请前往“信息”应用查看和删除通过通话分享的附件。"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-zh-rHK/strings.xml b/java/com/android/dialer/app/res/values-zh-rHK/strings.xml
index 2a96ce0..3228d43 100644
--- a/java/com/android/dialer/app/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/app/res/values-zh-rHK/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"新增插播功能"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"設定"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"模擬器"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"建立新使用者介面捷徑"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"所有聯絡人"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"使用觸控音頻按鍵"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"返回進行中的通話"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"新增通話"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"來電"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"正在進入大量操作模式"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"已離開大量操作模式"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"已選取<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"已取消選取<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"播放語音留言"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"查看聯絡人<xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"打電話給<xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"留言"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> 分 <xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"留言"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"留言"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"是"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"否"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"取消批量操作模式"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"刪除"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"取消"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"要刪除所選的<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>嗎？"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"已選取 <xliff:g id="NUMBER">%1$s</xliff:g> 個"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"要刪除這些留言嗎？"</b>"</item>
+      <item quantity="one">"<b>"要刪除此留言嗎？"</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g><xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"正在從 SIM 卡載入..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM 卡聯絡人"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"沒有可用的聯絡人應用程式"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"無法使用語音搜尋"</string>
     <string name="call_not_available" msgid="7850148370757361155">"由於「電話」應用程式已停用，因此無法打電話。"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"搜尋聯絡人"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> 個新的未接來電"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"快速撥號名單中沒有聯絡人"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"新增常用聯絡人"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"暫時沒有聯絡人"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"新增聯絡人"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"輕觸圖片以查看所有電話號碼，或輕觸並按住圖片以重新排序"</string>
     <string name="remove_contact" msgid="2353580570488923668">"移除"</string>
+    <string name="select_all" msgid="408601760696146245">"全選"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"視像通話"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"傳送訊息"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"通話詳情"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"已封鎖的號碼"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"已封鎖 <xliff:g id="NUMBER">%1$s</xliff:g>。"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"通話帳戶"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"開放權限"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"設定權限"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"如要啟用快速撥號功能，請開放「通訊錄」權限。"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"如要查看通話記錄，請開放「手機」權限。"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"如要查看聯絡人，請開放「通訊錄」權限。"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"如要存取留言信箱，請開放「手機」權限。"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"如要搜尋聯絡人，請開啟「通訊錄」權限。"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"如要撥打電話，請開放「手機」權限。"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"垃圾號碼"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g>已離線，無法取得聯繫"</string>
     <string name="about_phone_label" msgid="582991354677973731">"關於"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"查看"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"已刪除通話。在「訊息」中查看及刪除此通話期間所分享的附件。"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"已刪除通話。在「訊息」中查看及刪除通話期間所分享的附件。"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-zh-rTW/strings.xml b/java/com/android/dialer/app/res/values-zh-rTW/strings.xml
index 9174521..160ea1f 100644
--- a/java/com/android/dialer/app/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/app/res/values-zh-rTW/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"延長等待時間"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"設定"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"模擬工具"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"建立新版 UI 捷徑"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"所有聯絡人"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"使用觸控音按鍵"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"返回進行中的通話"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"新增通話"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"來電"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"已進入大量操作模式"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"已離開大量操作模式"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"已選取：<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"已取消選取：<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"播放語音留言"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"查看聯絡人<xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"撥電話給<xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"語音留言"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> 分 <xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"語音留言"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"語音留言"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"是"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"否"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"取消批次操作模式"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"刪除"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"取消"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"要刪除選取的<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>嗎？"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"已選取 <xliff:g id="NUMBER">%1$s</xliff:g> 個"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"要刪除這些語音留言嗎？"</b>"</item>
+      <item quantity="one">"<b>"要刪除這則語音留言嗎？"</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g><xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"從  SIM 卡讀取中…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM 卡聯絡人"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"沒有可用的聯絡人應用程式"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"無法使用語音搜尋"</string>
     <string name="call_not_available" msgid="7850148370757361155">"「電話」應用程式已遭停用，因此無法撥打電話。"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"搜尋聯絡人"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> 通新的未接來電"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"您的快速撥號功能尚未設定任何聯絡人"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"新增常用聯絡人"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"您尚未加入任何聯絡人"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"新增聯絡人"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"輕觸圖片即可查看所有號碼，按住則可重新排序"</string>
     <string name="remove_contact" msgid="2353580570488923668">"移除"</string>
+    <string name="select_all" msgid="408601760696146245">"全選"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"視訊通話"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"傳送簡訊"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"通話詳細資料"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"已封鎖的號碼"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> 已在封鎖清單中。"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"通話帳戶"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"開啟"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"設定權限"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"如要啟用快速撥號，請開啟「聯絡人」存取權限。"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"如要查看您的通話紀錄，請開啟「電話」存取權限。"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"如要查看您的聯絡人，請開啟「聯絡人」存取權限。"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"如要存取您的語音信箱，請開啟「電話」存取權限。"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"如要搜尋您的聯絡人，請開啟「聯絡人」存取權限。"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"如要撥打電話，請開啟「電話」存取權限。"</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"騷擾/廣告電話"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"<xliff:g id="NAME">%1$s</xliff:g>已離線，無法接聽來電"</string>
     <string name="about_phone_label" msgid="582991354677973731">"關於"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"查看"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"已刪除這筆通話紀錄。你可以在「訊息」應用程式中查看及刪除通話期間分享的附件。"</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"已刪除這些通話紀錄。你可以在「訊息」應用程式中查看及刪除通話期間分享的附件。"</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values-zu/strings.xml b/java/com/android/dialer/app/res/values-zu/strings.xml
index 9c8a6b8..3110bd4 100644
--- a/java/com/android/dialer/app/res/values-zu/strings.xml
+++ b/java/com/android/dialer/app/res/values-zu/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Yengeza ukulinda"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Izilungiselelo"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Isilingisi"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Dala isinqamuleli esisha se-UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Bonke othintana nabo"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Sebenzisa ikhiphedi yethoni yokuthinta"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Buyela kukholi eqhubekayo"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Yengeza ikholi"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Amakholi angenayo"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Kungenwa kumodi yesenzo senqwaba"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Ishiye imodi yesenzo senqwaba"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Kukhethwe i-<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Akukhethiwe i-<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Dlala i-imeyli yezwi"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Bheka oxhumana naye <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Shayela <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Ivoyisimeyili"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> isekhondi"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> amaminithi <xliff:g id="SECONDS">%s</xliff:g> amasekhondi"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ivoyisimeyili"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ama-meyli ezwi"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yebo"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Cha"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Khansela imodi lezenzo zeqoqo"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Susa"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Khansela"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Susa okukhethiwe <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Engu-<xliff:g id="NUMBER">%1$s</xliff:g> ekhethiwe"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Sula lawa mavoyisimeyili? "</b>"</item>
+      <item quantity="other">"<b>"Sula lawa mavoyisimeyili? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ngo-<xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"I-MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Ilayisha kusuka ekhadini le-SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Othintana nabo bekhadi le-SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Alukho uhlelo lokusebenza loxhumana nabo olutholakalayo"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Usesho lwezwi alutholakali"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Ayikwazi ukwenza ikholi yefoni ngoba uhlelo lokusebenza lwefoni likhutshaziwe."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Sesha othintana nabo"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> amakholi amasha owaphuthelwe"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Akekho umuntu osekudayeleni kwakho okusheshayo okwamanje"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Engeza intandokazi"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Awunabo oxhumana nabo okwamanje"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Engeza oxhumana naye"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Thinta isithombe ukuze ubone zonke izinombolo noma thinta bese ubambe ukuze uhlele kabusha"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Susa"</string>
+    <string name="select_all" msgid="408601760696146245">"Khetha konke"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Ikholi yevidiyo"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Thumela umlayezo"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Imininingwane yekholi"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Izinombolo ezivinjiwe"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> isivinjiwe kakade."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Ama-akhawunti wokushaya"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Vula"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Setha izimvume"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Nika amandla ukudayela okusheshayo, vula imvume yoxhumana nabo."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Ukuze ubone irekhodi lakho lamakholi, vuma imvume yefoni."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Ukuze ubone oxhumana nabo, vula imvume yoxhumana nabo."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ukuze ufinyelele ivoyisimeyili, vula imvume yefoni."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Ukuze useshe oxhumana nabo, vula izimvume zoxhumana nabo."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Ukuze ubeke ikholi, vula imvume yefoni."</string>
@@ -230,4 +235,7 @@
     <string name="spam_number_call_log_label" msgid="2678431398326811131">"Ugaxekile"</string>
     <string name="call_composer_connection_failed" msgid="6776461585447831242">"U-<xliff:g id="NAME">%1$s</xliff:g> akaxhunyiwe kwi-inthanethi futhi akakwazi ukufinyelelwa"</string>
     <string name="about_phone_label" msgid="582991354677973731">"Mayelana"</string>
+    <string name="view_conversation" msgid="7895904782094119702">"Buka"</string>
+    <string name="ec_data_deleted" msgid="4794880345545827107">"Ikholi isusiwe. Buka uphinde ususe okunamathiselwe ku-imeyili okwabiwe ngesikhathi sale kholi kumilayezo."</string>
+    <string name="multiple_ec_data_deleted" msgid="2971579891973176316">"Amakholi asusiwe. Buka uphinde ususe okunamathiselwe kwi-imeyili okwabiwe ngesikhathi samakholi kumilayezo."</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values/colors.xml b/java/com/android/dialer/app/res/values/colors.xml
index cf6b926..2f6d87b 100644
--- a/java/com/android/dialer/app/res/values/colors.xml
+++ b/java/com/android/dialer/app/res/values/colors.xml
@@ -52,8 +52,6 @@
   <!-- Colour of voicemail progress bar to the left of position indicator. -->
   <color name="voicemail_playback_seek_bar_already_played">@color/dialer_theme_color</color>
 
-  <!-- Background color of new dialer activity -->
-  <color name="background_dialer_light">#fafafa</color>
   <!-- Background color for search results and call details -->
   <color name="background_dialer_results">#f9f9f9</color>
   <color name="background_dialer_call_log">@color/background_dialer_light</color>
@@ -69,8 +67,6 @@
   <!-- Undo dialogue color -->
   <color name="undo_dialogue_text_color">#4d4d4d</color>
 
-  <color name="empty_list_text_color">#b2b2b2</color>
-
   <color name="remove_text_color">#ffffff</color>
 
   <!-- Text color for the "Remove" text when a contact is dragged on top of the remove view -->
diff --git a/java/com/android/dialer/app/res/values/dimens.xml b/java/com/android/dialer/app/res/values/dimens.xml
index 7da29c7..90a8bb8 100644
--- a/java/com/android/dialer/app/res/values/dimens.xml
+++ b/java/com/android/dialer/app/res/values/dimens.xml
@@ -24,6 +24,11 @@
   -->
   <dimen name="remove_text_size">16dp</dimen>
 
+  <!-- Select All/Multi Select -->
+  <dimen name="select_all_text_size">14sp</dimen>
+  <dimen name="select_all_icon_padding">16dp</dimen>
+  <dimen name="select_all_text_left_padding">18dp</dimen>
+
   <!-- Call Log -->
   <dimen name="call_log_horizontal_margin">8dp</dimen>
   <dimen name="call_log_call_action_size">32dp</dimen>
@@ -105,9 +110,6 @@
   <!-- Length of dialpad's shadows in dialer. -->
   <dimen name="shadow_length">10dp</dimen>
 
-  <dimen name="empty_list_message_top_padding">20dp</dimen>
-  <dimen name="empty_list_message_text_size">16sp</dimen>
-
   <!-- Dimensions for individual preference cards -->
   <dimen name="preference_padding_top">16dp</dimen>
   <dimen name="preference_padding_bottom">16dp</dimen>
diff --git a/java/com/android/dialer/app/res/values/strings.xml b/java/com/android/dialer/app/res/values/strings.xml
index 9e1fdeb..5549881 100644
--- a/java/com/android/dialer/app/res/values/strings.xml
+++ b/java/com/android/dialer/app/res/values/strings.xml
@@ -114,7 +114,7 @@
   <!-- Title of the notification of new voicemails. [CHAR LIMIT=30] -->
   <plurals name="notification_voicemail_title">
     <item quantity="one">Voicemail</item>
-        <item quantity="other">
+    <item quantity="other">
             <xliff:g id="count">%1$d</xliff:g>
             Voicemails
         </item>
@@ -131,12 +131,12 @@
 
        [CHAR LIMIT=10]
    -->
-    <string name="notification_voicemail_callers_list"><xliff:g id="newer_callers">%1$s</xliff:g>,
+  <string name="notification_voicemail_callers_list"><xliff:g id="newer_callers">%1$s</xliff:g>,
         <xliff:g id="older_caller">%2$s</xliff:g>
     </string>
 
   <!-- Text used in the ticker to notify the user of the latest voicemail. [CHAR LIMIT=30] -->
-    <string name="notification_new_voicemail_ticker">New voicemail from
+  <string name="notification_new_voicemail_ticker">New voicemail from
         <xliff:g id="caller">%1$s</xliff:g>
     </string>
 
@@ -165,7 +165,7 @@
   <string name="call_log_missed_header">Missed calls only</string>
 
   <!-- The counter for calls in a group and the date of the latest call as shown in the call log [CHAR LIMIT=15] -->
-    <string name="call_log_item_count_and_date">(<xliff:g id="count">%1$d</xliff:g>)
+  <string name="call_log_item_count_and_date">(<xliff:g id="count">%1$d</xliff:g>)
         <xliff:g id="date">%2$s</xliff:g>
     </string>
 
@@ -258,6 +258,9 @@
        and testing. [CHAR LIMIT=30]-->
   <string name="simulator_submenu_label">Simulator</string>
 
+  <!-- Label for the menu item that installs a shortcut for the new UI. [CHAR LIMIT=30] -->
+  <string name="new_ui_launcher_shortcut_label">Create New UI Shortcut</string>
+
   <!-- Menu item to display all contacts [CHAR LIMIT=30] -->
   <string name="menu_allContacts">All contacts</string>
 
@@ -279,6 +282,34 @@
   <!-- Description for incoming calls going to voice mail vs. not -->
   <string name="actionIncomingCall">Incoming calls</string>
 
+  <!-- String describing the user entering bulk action mode.
+
+    Note: AccessibilityServices use this attribute to announce what the view represents.
+          This is especially valuable for views without textual representation like ImageView.
+-->
+  <string name="description_entering_bulk_action_mode">Entering bulk action mode</string>
+
+  <!-- String describing the user leaving bulk action mode.
+
+    Note: AccessibilityServices use this attribute to announce what the view represents.
+          This is especially valuable for views without textual representation like ImageView.
+-->
+  <string name="description_leaving_bulk_action_mode">Left bulk action mode</string>
+
+  <!-- String describing the button to select an entry for bulk action.
+
+      Note: AccessibilityServices use this attribute to announce what the view represents.
+            This is especially valuable for views without textual representation like ImageView.
+  -->
+  <string name="description_selecting_bulk_action_mode">Selected <xliff:g id="nameOrNumber">%1$s</xliff:g></string>
+
+  <!-- String describing the button to unselect an entry for bulk action.
+
+      Note: AccessibilityServices use this attribute to announce what the view represents.
+            This is especially valuable for views without textual representation like ImageView.
+  -->
+  <string name="description_unselecting_bulk_action_mode">Unselected <xliff:g id="nameOrNumber">%1$s</xliff:g></string>
+
   <!-- String describing the icon in the call log used to play a voicemail.
 
       Note: AccessibilityServices use this attribute to announce what the view represents.
@@ -362,12 +393,23 @@
   <!-- A nicely formatted call duration displayed when viewing call details. For example "42 min 28 sec" -->
   <string name="callDetailsDurationFormat"><xliff:g example="42" id="minutes">%s</xliff:g> min <xliff:g example="28" id="seconds">%s</xliff:g> sec</string>
 
-  <string name="voicemailMultiSelectVoicemail">voicemail</string>
-  <string name="voicemailMultiSelectVoicemails">voicemails</string>
-  <string name="voicemailMultiSelectDeleteConfirm">Yes</string>
-  <string name="voicemailMultiSelectDeleteCancel">No</string>
+  <!-- String describing the cancel button in multi select.
+       Note: AccessibilityServices uses this attribute to announce what the view represents.
+       [CHAR LIMIT=NONE] -->
+  <string name="description_cancel_multi_select">Cancel batch actions mode</string>
+
+  <string name="voicemailMultiSelectDeleteConfirm">Delete</string>
+  <string name="voicemailMultiSelectDeleteCancel">Cancel</string>
   <string name="voicemailMultiSelectDialogTitle">Delete selected <xliff:g id="voicemailorvoicemails">%1$s</xliff:g>?</string>
 
+  <string name="voicemailMultiSelectActionBarTitle"><xliff:g id="number">%1$s</xliff:g> selected</string>
+
+  <!-- Alert dialog title to accept or decline deleting voicemail(s). -->
+  <plurals name="delete_voicemails_confirmation_dialog_title">
+    <item quantity="one"><b>Delete this voicemail? </b></item>
+    <item quantity="other"><b>Delete these voicemails? </b></item>
+  </plurals>
+
   <!-- The string 'Today'. This value is used in the voicemailCallLogDateTimeFormat rather than an
        explicit date string, e.g. Jul 25, 2014, in the event that a voicemail was created on the
        current day -->
@@ -411,9 +453,6 @@
   <!-- Dialog title displayed when loading a phone number from the SIM card for speed dial -->
   <string name="simContacts_title">SIM card contacts</string>
 
-  <!-- Message displayed when there is no application available to handle the add contact menu option. [CHAR LIMIT=NONE] -->
-  <string name="add_contact_not_available">No contacts app available</string>
-
   <!-- Message displayed when there is no application available to handle voice search. [CHAR LIMIT=NONE] -->
   <string name="voice_search_not_available">Voice search not available</string>
 
@@ -484,7 +523,7 @@
   <string name="favorite_hidden_undo">Undo</string>
 
   <!-- Shortcut item used to call a number directly from search -->
-    <string name="search_shortcut_call_number">Call
+  <string name="search_shortcut_call_number">Call
         <xliff:g id="number">%s</xliff:g>
     </string>
 
@@ -514,12 +553,6 @@
   <!-- Shown as an action when there are no speed dial favorites -->
   <string name="speed_dial_empty_add_favorite_action">Add a favorite</string>
 
-  <!-- Shown when there are no contacts in the all contacts list. -->
-  <string name="all_contacts_empty">You don\'t have any contacts yet</string>
-
-  <!-- Shown as an action when the all contacts list is empty -->
-  <string name="all_contacts_empty_add_contact_action">Add a contact</string>
-
   <!-- Shows up as a tooltip to provide a hint to the user that the profile pic in a contact
        card can be tapped to bring up a list of all numbers, or long pressed to start reordering
        [CHAR LIMIT=NONE]
@@ -529,6 +562,9 @@
   <!-- Remove button that shows up when contact is long-pressed. [CHAR LIMIT=NONE] -->
   <string name="remove_contact">Remove</string>
 
+  <!-- Select all text that shows up when in multi select mode. [CHAR LIMIT=NONE] -->
+  <string name="select_all">Select all</string>
+
   <!-- Button text for the "video call" displayed underneath an entry in the call log.
        Tapping causes a video call to be placed to the caller represented by the call log entry.
        [CHAR LIMIT=30] -->
@@ -550,13 +586,13 @@
 
   <!-- Button text for the button displayed underneath an entry in the call log, which when
        tapped triggers a return call to the named user. [CHAR LIMIT=30] -->
-    <string name="call_log_action_call">
+  <string name="call_log_action_call">
         Call <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
   <!-- String describing an incoming missed call entry in the call log.
-       Note: AccessibilityServices uses this attribute to announce what the view represents.
-       [CHAR LIMIT=NONE] -->
+     Note: AccessibilityServices uses this attribute to announce what the view represents.
+     [CHAR LIMIT=NONE] -->
   <string name="description_incoming_missed_call">Missed call from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>, <xliff:g example="Mobile" id="typeOrLocation">^2</xliff:g>, <xliff:g example="2 min ago" id="timeOfCall">^3</xliff:g>, <xliff:g example="on SIM 1" id="phoneAccount">^4</xliff:g>.</string>
 
   <!-- String describing an incoming answered call entry in the call log.
@@ -592,7 +628,7 @@
        action triggers a return call to the named user.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_call_action">
+  <string name="description_call_action">
         Call <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
@@ -600,7 +636,7 @@
        action triggers a return video call to the named person/number.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_video_call_action">
+  <string name="description_video_call_action">
         Video call <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>.
     </string>
 
@@ -609,21 +645,21 @@
        triggers playing back the voicemail.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_voicemail_action">
+  <string name="description_voicemail_action">
         Listen to voicemail from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
   <!-- String describing the "play voicemail" action for an entry in the call log.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_voicemail_play">
+  <string name="description_voicemail_play">
         Play voicemail from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
   <!-- String describing the "pause voicemail" action for an entry in the call log.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_voicemail_pause">
+  <string name="description_voicemail_pause">
         Pause voicemail from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
@@ -631,7 +667,7 @@
   <!-- String describing the "delete voicemail" action for an entry in the call log.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_voicemail_delete">
+  <string name="description_voicemail_delete">
         Delete voicemail from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
@@ -645,14 +681,14 @@
 
   <!-- Description for the "create new contact" action for an entry in the call log. This action
        opens a screen for creating a new contact for this name or number. [CHAR LIMIT=NONE] -->
-    <string name="description_create_new_contact_action">
+  <string name="description_create_new_contact_action">
         Create contact for <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
   <!-- Description for the "add to existing contact" action for an entry in the call log. This
        action opens a screen for adding this name or number to an existing contact.
        [CHAR LIMIT=NONE] -->
-    <string name="description_add_to_existing_contact_action">
+  <string name="description_add_to_existing_contact_action">
         Add <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g> to existing contact
     </string>
 
@@ -660,7 +696,7 @@
        displays the call details screen for an entry in the call log.  This shows the calls to
        and from the specified number associated with the call log entry.
        [CHAR LIMIT=NONE] -->
-    <string name="description_details_action">
+  <string name="description_details_action">
         Call details for <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
@@ -769,14 +805,14 @@
 
   <!-- Label for a section describing that call blocking is temporarily disabled because an
        emergency call was made. [CHAR LIMIT=50] -->
-    <string name="blocked_numbers_disabled_emergency_header_label">
+  <string name="blocked_numbers_disabled_emergency_header_label">
         Call blocking temporarily off
     </string>
 
   <!-- Description that call blocking is temporarily disabled because the user called an
        emergency number, and explains that call blocking will be re-enabled after a buffer
        period has passed. [CHAR LIMIT=NONE] -->
-    <string name="blocked_numbers_disabled_emergency_desc">
+  <string name="blocked_numbers_disabled_emergency_desc">
         Call blocking has been disabled because you contacted emergency services from this phone
         within the last 48 hours. It will be automatically reenabled once the 48 hour period
         expires.
@@ -789,7 +825,7 @@
   <!-- Text informing the user they have previously marked contacts to be sent to voicemail.
        This will be followed by two buttons, 1) to view who is marked to be sent to voicemail
        and 2) importing these settings to Dialer's block list. [CHAR LIMIT=NONE] -->
-    <string name="blocked_call_settings_import_description">
+  <string name="blocked_call_settings_import_description">
         You previously marked some callers to be automatically sent to voicemail via other apps.
     </string>
 
@@ -811,13 +847,13 @@
 
   <!-- Footer message of number blocking screen with visual voicemail active.
       [CHAR LIMIT=NONE] -->
-    <string name="block_number_footer_message_vvm">
+  <string name="block_number_footer_message_vvm">
         Calls from these numbers will be blocked and voicemails will be automatically deleted.
     </string>
 
   <!-- Footer message of number blocking screen with no visual voicemail.
        [CHAR LIMIT=NONE] -->
-    <string name="block_number_footer_message_no_vvm">
+  <string name="block_number_footer_message_no_vvm">
          Calls from these numbers will be blocked, but they may still be able to leave you voicemails.
     </string>
 
@@ -826,7 +862,7 @@
 
   <!-- Error message shown when user tries to add a number to the block list that was already
       blocked. [CHAR LIMIT=64] -->
-    <string name="alreadyBlocked"><xliff:g example="(555) 555-5555" id="number">%1$s</xliff:g>
+  <string name="alreadyBlocked"><xliff:g example="(555) 555-5555" id="number">%1$s</xliff:g>
         is already blocked.</string>
 
   <!-- Label for the phone account settings [CHAR LIMIT=30] -->
@@ -841,9 +877,6 @@
   <!-- Internal key for DTMF tone length preference. -->
   <string name="dtmf_tone_length_preference_key" translatable="false">button_dtmf_settings</string>
 
-  <!-- The label of the button used to turn on a single permission [CHAR LIMIT=30]-->
-  <string name="permission_single_turn_on">Turn on</string>
-
   <!--  The label of the button used to turn on multiple permissions [CHAR LIMIT=30]-->
   <string name="permission_multiple_turn_on">Set permissions</string>
 
@@ -853,9 +886,6 @@
   <!-- Shown as a prompt to turn on the phone permission to enable the call log [CHAR LIMIT=NONE]-->
   <string name="permission_no_calllog">To see your call log, turn on the Phone permission.</string>
 
-  <!-- Shown as a prompt to turn on the contacts permission to show all contacts [CHAR LIMIT=NONE]-->
-  <string name="permission_no_contacts">To see your contacts, turn on the Contacts permission.</string>
-
   <!-- Shown as a prompt to turn on the phone permission to show voicemails [CHAR LIMIT=NONE]-->
   <string name="permission_no_voicemail">To access your voicemail, turn on the Phone permission.</string>
 
@@ -900,4 +930,14 @@
   <!-- Label for setting that shows more information about the Phone app [CHAR LIMIT=30] -->
   <string name="about_phone_label">About</string>
 
+  <!-- Button text to prompt a user to open an sms conversation [CHAR LIMIT=NONE] -->
+  <string name="view_conversation">View</string>
+
+  <!-- If a user deletes a call that has attachments (photo, message, ect) bundled with it, they need
+        to be told that they need to go to the SMS app to delete the attachments. [CHAR LIMIT=NONE] -->
+  <string name="ec_data_deleted">Call deleted. View and delete attachments shared during this call in Messages.</string>
+
+  <!-- If a user deletes a call that has attachments (photo, message, ect) bundled with it, they need
+        to be told that they need to go to the SMS app to delete the attachments. [CHAR LIMIT=NONE] -->
+  <string name="multiple_ec_data_deleted">Calls deleted. View and delete attachments shared during calls in Messages.</string>
 </resources>
diff --git a/java/com/android/dialer/app/res/values/styles.xml b/java/com/android/dialer/app/res/values/styles.xml
index 7adf7ca..e0122e8 100644
--- a/java/com/android/dialer/app/res/values/styles.xml
+++ b/java/com/android/dialer/app/res/values/styles.xml
@@ -16,6 +16,11 @@
   -->
 <resources>
 
+  <style name="AlertDialogCustom" parent="Theme.AppCompat.Light.Dialog.Alert">
+    <item name="android:colorPrimary">@color/dialtacts_theme_color</item>
+    <item name="android:colorAccent">@color/dialtacts_theme_color</item>
+  </style>
+
   <style name="DialtactsTheme" parent="DialerThemeBase">
 
     <!-- Styles that require AppCompat compatibility, remember to update both sets -->
@@ -25,13 +30,13 @@
     <item name="windowActionModeOverlay">true</item>
     <item name="android:actionBarStyle">@style/DialtactsActionBarStyle</item>
     <item name="actionBarStyle">@style/DialtactsActionBarStyle</item>
+    <item name="actionModeStyle">@style/ActionModeStyle</item>
+    <item name="android:actionModeStyle">@style/ActionModeStyle</item>
 
     <item name="android:windowContentOverlay">@null</item>
     <item name="android:overlapAnchor">true</item>
-    <item name="android:homeAsUpIndicator">@drawable/ic_back_arrow</item>
 
     <item name="android:listViewStyle">@style/ListViewStyle</item>
-    <item name="section_header_background">@drawable/list_title_holo</item>
     <item name="list_section_header_height">32dip</item>
     <item name="list_item_padding_top">7dp</item>
     <item name="list_item_padding_right">24dp</item>
@@ -66,7 +71,7 @@
     <item name="android:textAppearanceButton">@style/DialerButtonTextStyle</item>
 
     <!-- Video call icon -->
-    <item name="list_item_video_call_icon_size">32dip</item>
+    <item name="list_item_video_call_icon_size">48dip</item>
     <item name="list_item_video_call_icon_margin">8dip</item>
 
     <item name="dialpad_style">@style/Dialpad.Light</item>
@@ -129,6 +134,12 @@
     <item name="contentInsetStart">@dimen/actionbar_contentInsetStart</item>
   </style>
 
+  <style name="ActionModeStyle" parent="Widget.AppCompat.ActionMode">
+    <item name="android:background">@color/actionbar_background_color</item>
+    <item name="background">@color/actionbar_background_color</item>
+    <item name="closeItemLayout">@layout/action_mode_close_button</item>
+  </style>
+
   <style name="DialtactsActionBarWithoutTitleStyle" parent="DialtactsActionBarStyle">
     <!-- Styles that require AppCompat compatibility, remember to update both sets -->
     <item name="android:displayOptions"></item>
diff --git a/java/com/android/dialer/app/res/xml/sound_settings.xml b/java/com/android/dialer/app/res/xml/sound_settings.xml
index 796ed2e..d9afb74 100644
--- a/java/com/android/dialer/app/res/xml/sound_settings.xml
+++ b/java/com/android/dialer/app/res/xml/sound_settings.xml
@@ -25,13 +25,13 @@
     android:ringtoneType="ringtone"
     android:title="@string/ringtone_title"/>
 
-  <CheckBoxPreference
+  <SwitchPreference
     android:defaultValue="false"
     android:key="@string/vibrate_on_preference_key"
     android:persistent="false"
     android:title="@string/vibrate_on_ring_title"/>
 
-  <CheckBoxPreference
+  <SwitchPreference
     android:defaultValue="true"
     android:key="@string/play_dtmf_preference_key"
     android:persistent="false"
diff --git a/java/com/android/dialer/app/settings/AppCompatPreferenceActivity.java b/java/com/android/dialer/app/settings/AppCompatPreferenceActivity.java
index 2c46438..e8e4256 100644
--- a/java/com/android/dialer/app/settings/AppCompatPreferenceActivity.java
+++ b/java/com/android/dialer/app/settings/AppCompatPreferenceActivity.java
@@ -18,7 +18,6 @@
 import android.content.res.Configuration;
 import android.os.Bundle;
 import android.preference.PreferenceActivity;
-import android.support.v7.app.ActionBar;
 import android.support.v7.app.AppCompatDelegate;
 import android.support.v7.widget.Toolbar;
 import android.view.MenuInflater;
@@ -49,10 +48,6 @@
     getDelegate().onPostCreate(savedInstanceState);
   }
 
-  public ActionBar getSupportActionBar() {
-    return getDelegate().getSupportActionBar();
-  }
-
   public void setSupportActionBar(Toolbar toolbar) {
     getDelegate().setSupportActionBar(toolbar);
   }
diff --git a/java/com/android/dialer/app/settings/DialerSettingsActivity.java b/java/com/android/dialer/app/settings/DialerSettingsActivity.java
index f1c270c..6036c85 100644
--- a/java/com/android/dialer/app/settings/DialerSettingsActivity.java
+++ b/java/com/android/dialer/app/settings/DialerSettingsActivity.java
@@ -36,7 +36,6 @@
 import com.android.dialer.app.R;
 import com.android.dialer.blocking.FilteredNumberCompat;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.proguard.UsedByReflection;
 import com.android.voicemail.VoicemailClient;
 import com.android.voicemail.VoicemailComponent;
@@ -83,14 +82,12 @@
     soundSettingsHeader.id = R.id.settings_header_sounds_and_vibration;
     target.add(soundSettingsHeader);
 
-    if (CompatUtils.isMarshmallowCompatible()) {
-      Header quickResponseSettingsHeader = new Header();
-      Intent quickResponseSettingsIntent =
-          new Intent(TelecomManager.ACTION_SHOW_RESPOND_VIA_SMS_SETTINGS);
-      quickResponseSettingsHeader.titleRes = R.string.respond_via_sms_setting_title;
-      quickResponseSettingsHeader.intent = quickResponseSettingsIntent;
-      target.add(quickResponseSettingsHeader);
-    }
+    Header quickResponseSettingsHeader = new Header();
+    Intent quickResponseSettingsIntent =
+        new Intent(TelecomManager.ACTION_SHOW_RESPOND_VIA_SMS_SETTINGS);
+    quickResponseSettingsHeader.titleRes = R.string.respond_via_sms_setting_title;
+    quickResponseSettingsHeader.intent = quickResponseSettingsIntent;
+    target.add(quickResponseSettingsHeader);
 
     TelephonyManager telephonyManager =
         (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
diff --git a/java/com/android/dialer/app/settings/SoundSettingsFragment.java b/java/com/android/dialer/app/settings/SoundSettingsFragment.java
index 83ce453..dcfb7a5 100644
--- a/java/com/android/dialer/app/settings/SoundSettingsFragment.java
+++ b/java/com/android/dialer/app/settings/SoundSettingsFragment.java
@@ -23,11 +23,11 @@
 import android.os.Handler;
 import android.os.Message;
 import android.os.Vibrator;
-import android.preference.CheckBoxPreference;
 import android.preference.ListPreference;
 import android.preference.Preference;
 import android.preference.PreferenceFragment;
 import android.preference.PreferenceScreen;
+import android.preference.SwitchPreference;
 import android.provider.Settings;
 import android.telephony.CarrierConfigManager;
 import android.telephony.TelephonyManager;
@@ -68,8 +68,8 @@
           updateRingtonePreferenceSummary();
         }
       };
-  private CheckBoxPreference mVibrateWhenRinging;
-  private CheckBoxPreference mPlayDtmfTone;
+  private SwitchPreference mVibrateWhenRinging;
+  private SwitchPreference mPlayDtmfTone;
   private ListPreference mDtmfToneLength;
 
   @Override
@@ -87,9 +87,9 @@
 
     mRingtonePreference = findPreference(context.getString(R.string.ringtone_preference_key));
     mVibrateWhenRinging =
-        (CheckBoxPreference) findPreference(context.getString(R.string.vibrate_on_preference_key));
+        (SwitchPreference) findPreference(context.getString(R.string.vibrate_on_preference_key));
     mPlayDtmfTone =
-        (CheckBoxPreference) findPreference(context.getString(R.string.play_dtmf_preference_key));
+        (SwitchPreference) findPreference(context.getString(R.string.play_dtmf_preference_key));
     mDtmfToneLength =
         (ListPreference)
             findPreference(context.getString(R.string.dtmf_tone_length_preference_key));
diff --git a/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java b/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java
index 9d07ec5..b86ce82 100644
--- a/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java
+++ b/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java
@@ -27,7 +27,7 @@
 import android.support.v4.os.UserManagerCompat;
 import android.telecom.PhoneAccountHandle;
 import android.telephony.TelephonyManager;
-import com.android.dialer.app.calllog.DefaultVoicemailNotifier;
+import com.android.dialer.app.calllog.LegacyVoicemailNotifier;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.PerAccountSharedPreferences;
@@ -35,7 +35,7 @@
 
 /**
  * Receives {@link TelephonyManager#ACTION_SHOW_VOICEMAIL_NOTIFICATION}, and forwards to {@link
- * DefaultVoicemailNotifier}. Will ignore the notification if the account has visual voicemail.
+ * LegacyVoicemailNotifier}. Will ignore the notification if the account has visual voicemail.
  * Legacy voicemail is the traditional, non-visual, dial-in voicemail.
  */
 @TargetApi(VERSION_CODES.O)
@@ -43,6 +43,15 @@
 
   private static final String LEGACY_VOICEMAIL_COUNT = "legacy_voicemail_count";
 
+  /**
+   * Hidden extra for {@link TelephonyManager#ACTION_SHOW_VOICEMAIL_NOTIFICATION} for whether the
+   * notification is just a refresh or for a new voicemail. The phone should not play a ringtone or
+   * vibrate during a refresh if the notification is already showing.
+   *
+   * <p>TODO(b/62202833): make public
+   */
+  private static final String EXTRA_IS_REFRESH = "is_refresh";
+
   @Override
   public void onReceive(Context context, Intent intent) {
     LogUtil.i(
@@ -51,7 +60,6 @@
 
     PhoneAccountHandle phoneAccountHandle =
         Assert.isNotNull(intent.getParcelableExtra(TelephonyManager.EXTRA_PHONE_ACCOUNT_HANDLE));
-
     int count = intent.getIntExtra(TelephonyManager.EXTRA_NOTIFICATION_COUNT, -1);
 
     if (!hasVoicemailCountChanged(context, phoneAccountHandle, count)) {
@@ -70,14 +78,13 @@
 
     if (count == 0) {
       LogUtil.i("LegacyVoicemailNotificationReceiver.onReceive", "clearing notification");
-      new DefaultVoicemailNotifier(context).cancelLegacyNotification();
+      LegacyVoicemailNotifier.cancelNotification(context);
       return;
     }
 
-    if (UserManagerCompat.isUserUnlocked(context)
-        && VoicemailComponent.get(context)
-            .getVoicemailClient()
-            .isActivated(context, phoneAccountHandle)) {
+    if (VoicemailComponent.get(context)
+        .getVoicemailClient()
+        .isActivated(context, phoneAccountHandle)) {
       LogUtil.i(
           "LegacyVoicemailNotificationReceiver.onReceive",
           "visual voicemail is activated, ignoring notification");
@@ -91,13 +98,14 @@
         intent.getParcelableExtra(TelephonyManager.EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT);
 
     LogUtil.i("LegacyVoicemailNotificationReceiver.onReceive", "sending notification");
-    new DefaultVoicemailNotifier(context)
-        .notifyLegacyVoicemail(
-            phoneAccountHandle,
-            count,
-            voicemailNumber,
-            callVoicemailIntent,
-            voicemailSettingIntent);
+    LegacyVoicemailNotifier.showNotification(
+        context,
+        phoneAccountHandle,
+        count,
+        voicemailNumber,
+        callVoicemailIntent,
+        voicemailSettingIntent,
+        intent.getBooleanExtra(EXTRA_IS_REFRESH, false));
   }
 
   private static boolean hasVoicemailCountChanged(
diff --git a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java
index ea48c83..5c9bc01 100644
--- a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java
+++ b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java
@@ -47,12 +47,12 @@
 import com.android.dialer.app.R;
 import com.android.dialer.app.calllog.CallLogListItemViewHolder;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.AsyncTaskExecutor;
 import com.android.dialer.common.concurrent.AsyncTaskExecutors;
 import com.android.dialer.common.concurrent.DialerExecutor;
 import com.android.dialer.common.concurrent.DialerExecutors;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.constants.Constants;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
@@ -87,7 +87,6 @@
  * calls into this class from outside must be done from the main UI thread.
  */
 @NotThreadSafe
-@VisibleForTesting
 @TargetApi(VERSION_CODES.M)
 public class VoicemailPlaybackPresenter
     implements MediaPlayer.OnPreparedListener,
@@ -502,7 +501,7 @@
    * will call {@link #onError()} otherwise.
    */
   protected void prepareContent() {
-    if (mView == null) {
+    if (mView == null || mContext == null) {
       return;
     }
     LogUtil.d("VoicemailPlaybackPresenter.prepareContent", null);
@@ -548,7 +547,9 @@
     mView.setClipPosition(mPosition, mDuration.get());
     mView.enableUiElements();
     mView.setSuccess();
-    mMediaPlayer.seekTo(mPosition);
+    if (!mp.isPlaying()) {
+      mMediaPlayer.seekTo(mPosition);
+    }
 
     if (mIsPlaying) {
       resumePlayback();
diff --git a/java/com/android/dialer/app/voicemail/error/OmtpVoicemailMessageCreator.java b/java/com/android/dialer/app/voicemail/error/OmtpVoicemailMessageCreator.java
index 48602ea..909de70 100644
--- a/java/com/android/dialer/app/voicemail/error/OmtpVoicemailMessageCreator.java
+++ b/java/com/android/dialer/app/voicemail/error/OmtpVoicemailMessageCreator.java
@@ -47,6 +47,12 @@
   @Nullable
   public static VoicemailErrorMessage create(
       Context context, VoicemailStatus status, final VoicemailStatusReader statusReader) {
+    VoicemailErrorMessage tosMessage =
+        new VoicemailTosMessageCreator(context, status, statusReader).maybeCreateTosMessage();
+    if (tosMessage != null) {
+      return tosMessage;
+    }
+
     if (Status.CONFIGURATION_STATE_OK == status.configurationState
         && Status.DATA_CHANNEL_STATE_OK == status.dataChannelState
         && Status.NOTIFICATION_CHANNEL_STATE_OK == status.notificationChannelState) {
diff --git a/java/com/android/dialer/app/voicemail/error/VoicemailErrorAlert.java b/java/com/android/dialer/app/voicemail/error/VoicemailErrorAlert.java
index d045b1b..dbdf0f0 100644
--- a/java/com/android/dialer/app/voicemail/error/VoicemailErrorAlert.java
+++ b/java/com/android/dialer/app/voicemail/error/VoicemailErrorAlert.java
@@ -20,6 +20,7 @@
 import android.support.annotation.VisibleForTesting;
 import android.text.util.Linkify;
 import android.view.View;
+import android.widget.ImageView;
 import android.widget.TextView;
 import com.android.dialer.app.alert.AlertManager;
 import com.android.dialer.app.voicemail.error.VoicemailErrorMessage.Action;
@@ -132,6 +133,13 @@
     TextView secondaryButton = (TextView) view.findViewById(R.id.voicemail_tos_button_accept);
     secondaryButton.setText(secondaryAction.getText());
     secondaryButton.setOnClickListener(secondaryAction.getListener());
+
+    if (message.getImageResourceId() != null) {
+      ImageView voicemailTosImage = (ImageView) view.findViewById(R.id.voicemail_image);
+      voicemailTosImage.setImageResource(message.getImageResourceId());
+      voicemailTosImage.setVisibility(View.VISIBLE);
+    }
+
     return view;
   }
 
diff --git a/java/com/android/dialer/app/voicemail/error/VoicemailErrorMessage.java b/java/com/android/dialer/app/voicemail/error/VoicemailErrorMessage.java
index a0dd30f..92c787d 100644
--- a/java/com/android/dialer/app/voicemail/error/VoicemailErrorMessage.java
+++ b/java/com/android/dialer/app/voicemail/error/VoicemailErrorMessage.java
@@ -47,6 +47,7 @@
   private final List<Action> actions;
 
   private boolean modal;
+  private Integer imageResourceId;
 
   /** Something the user can click on to resolve an error, such as retrying or calling voicemail */
   public static class Action {
@@ -100,6 +101,16 @@
     return this;
   }
 
+  @Nullable
+  public Integer getImageResourceId() {
+    return imageResourceId;
+  }
+
+  public VoicemailErrorMessage setImageResourceId(Integer imageResourceId) {
+    this.imageResourceId = imageResourceId;
+    return this;
+  }
+
   public VoicemailErrorMessage(CharSequence title, CharSequence description, Action... actions) {
     this(title, description, Arrays.asList(actions));
   }
diff --git a/java/com/android/dialer/app/voicemail/error/VoicemailStatusCorruptionHandler.java b/java/com/android/dialer/app/voicemail/error/VoicemailStatusCorruptionHandler.java
index 2ff182b..3a169e4 100644
--- a/java/com/android/dialer/app/voicemail/error/VoicemailStatusCorruptionHandler.java
+++ b/java/com/android/dialer/app/voicemail/error/VoicemailStatusCorruptionHandler.java
@@ -26,8 +26,8 @@
 import android.telephony.TelephonyManager;
 import com.android.contacts.common.compat.TelephonyManagerCompat;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 
diff --git a/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java b/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java
new file mode 100644
index 0000000..f2cdaf6
--- /dev/null
+++ b/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java
@@ -0,0 +1,324 @@
+/*
+ * Copyright (C) 2017 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.dialer.app.voicemail.error;
+
+import android.app.AlertDialog;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.graphics.Typeface;
+import android.preference.PreferenceManager;
+import android.support.annotation.Nullable;
+import android.telecom.PhoneAccountHandle;
+import android.telephony.TelephonyManager;
+import android.text.SpannableString;
+import android.text.style.StyleSpan;
+import android.view.View;
+import android.view.View.OnClickListener;
+import com.android.contacts.common.compat.TelephonyManagerCompat;
+import com.android.dialer.app.voicemail.error.VoicemailErrorMessage.Action;
+import com.android.dialer.buildtype.BuildType;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.voicemail.VisualVoicemailTypeExtensions;
+import com.android.voicemail.VoicemailClient;
+import com.android.voicemail.VoicemailComponent;
+import java.util.Locale;
+
+/**
+ * Create error message from {@link VoicemailStatus} for voicemail. This is will show different
+ * terms of service for Verizon and for other carriers.
+ */
+public class VoicemailTosMessageCreator {
+  // Flag to check which version of the Verizon ToS that the user has accepted.
+  public static final String VVM3_TOS_VERSION_ACCEPTED_KEY = "vvm3_tos_version_accepted";
+
+  // Flag to check which version of the Google Dialer ToS that the user has accepted.
+  public static final String DIALER_TOS_VERSION_ACCEPTED_KEY = "dialer_tos_version_accepted";
+
+  public static final int CURRENT_VVM3_TOS_VERSION = 2;
+  public static final int CURRENT_DIALER_TOS_VERSION = 1;
+
+  private static final String ISO639_SPANISH = "es";
+
+  private final Context context;
+  private final VoicemailStatus status;
+  private final VoicemailStatusReader statusReader;
+  private final SharedPreferences preferences;
+
+  VoicemailTosMessageCreator(
+      final Context context,
+      final VoicemailStatus status,
+      final VoicemailStatusReader statusReader) {
+    this.context = context;
+    this.status = status;
+    this.statusReader = statusReader;
+    this.preferences = PreferenceManager.getDefaultSharedPreferences(context);
+  }
+
+  @Nullable
+  VoicemailErrorMessage maybeCreateTosMessage() {
+    // TODO: add filtering based on carrier
+    if (hasAcceptedTos()) {
+      return null;
+    }
+    // TODO: temporarily skip the terms of service for dogfood builds
+    if (BuildType.get() == BuildType.DOGFOOD) {
+      LogUtil.i(
+          "VoicemailTosMessageCreator.maybeCreateTosMessage",
+          "Skipping voicemail ToS for dogfood build");
+      return null;
+    }
+    logTosCreatedImpression();
+
+    return new VoicemailTosMessage(
+            getTosTitle(),
+            getTosMessage(),
+            new Action(
+                getDeclineText(),
+                new OnClickListener() {
+                  @Override
+                  public void onClick(View v) {
+                    LogUtil.i("VoicemailTosMessageCreator.maybeShowTosMessage", "decline clicked");
+                    PhoneAccountHandle handle =
+                        new PhoneAccountHandle(
+                            ComponentName.unflattenFromString(status.phoneAccountComponentName),
+                            status.phoneAccountId);
+                    logTosDeclinedImpression();
+                    showDeclineTosDialog(handle);
+                  }
+                }),
+            new Action(
+                getAcceptText(),
+                new OnClickListener() {
+                  @Override
+                  public void onClick(View v) {
+                    LogUtil.i("VoicemailTosMessageCreator.maybeShowTosMessage", "accept clicked");
+                    recordTosAcceptance();
+                    logTosAcceptedImpression();
+                    statusReader.refresh();
+                  }
+                },
+                true /* raised */))
+        .setModal(true)
+        .setImageResourceId(getTosImageId());
+  }
+
+  private void showDeclineTosDialog(final PhoneAccountHandle handle) {
+    if (isVvm3() && Vvm3VoicemailMessageCreator.PIN_NOT_SET == status.configurationState) {
+      LogUtil.i(
+          "VoicemailTosMessageCreator.showDeclineTosDialog", "PIN_NOT_SET, showing set PIN dialog");
+      showSetPinBeforeDeclineDialog();
+      return;
+    }
+    LogUtil.i(
+        "VoicemailTosMessageCreator.showDeclineVerizonTosDialog",
+        "showing decline ToS dialog, status=" + status);
+    final TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
+    AlertDialog.Builder builder = new AlertDialog.Builder(context);
+    builder.setMessage(getTosDeclinedDialogMessageId());
+    builder.setPositiveButton(
+        getTosDeclinedDialogDowngradeId(),
+        new DialogInterface.OnClickListener() {
+          @Override
+          public void onClick(DialogInterface dialog, int which) {
+            Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINED);
+            VoicemailClient voicemailClient = VoicemailComponent.get(context).getVoicemailClient();
+            if (voicemailClient.isVoicemailModuleEnabled()) {
+              voicemailClient.setVoicemailEnabled(context, status.getPhoneAccountHandle(), false);
+            } else {
+              TelephonyManagerCompat.setVisualVoicemailEnabled(telephonyManager, handle, false);
+            }
+          }
+        });
+
+    builder.setNegativeButton(
+        android.R.string.cancel,
+        new DialogInterface.OnClickListener() {
+          @Override
+          public void onClick(DialogInterface dialog, int which) {
+            dialog.dismiss();
+          }
+        });
+
+    builder.setCancelable(true);
+    builder.show();
+  }
+
+  private void showSetPinBeforeDeclineDialog() {
+    AlertDialog.Builder builder = new AlertDialog.Builder(context);
+    builder.setMessage(R.string.verizon_terms_and_conditions_decline_set_pin_dialog_message);
+    builder.setPositiveButton(
+        R.string.verizon_terms_and_conditions_decline_set_pin_dialog_set_pin,
+        new DialogInterface.OnClickListener() {
+          @Override
+          public void onClick(DialogInterface dialog, int which) {
+            Logger.get(context)
+                .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINE_CHANGE_PIN_SHOWN);
+            Intent intent = new Intent(TelephonyManager.ACTION_CONFIGURE_VOICEMAIL);
+            context.startActivity(intent);
+          }
+        });
+
+    builder.setNegativeButton(
+        android.R.string.cancel,
+        new DialogInterface.OnClickListener() {
+          @Override
+          public void onClick(DialogInterface dialog, int which) {
+            dialog.dismiss();
+          }
+        });
+
+    builder.setCancelable(true);
+    builder.show();
+  }
+
+  private boolean isVvm3() {
+    return VisualVoicemailTypeExtensions.VVM_TYPE_VVM3.equals(status.type);
+  }
+
+  private boolean useSpanish() {
+    return Locale.getDefault().getLanguage().equals(new Locale(ISO639_SPANISH).getLanguage());
+  }
+
+  private boolean hasAcceptedTos() {
+    if (isVvm3()) {
+      return preferences.getInt(VVM3_TOS_VERSION_ACCEPTED_KEY, 0) >= CURRENT_VVM3_TOS_VERSION;
+    } else {
+      return preferences.getInt(DIALER_TOS_VERSION_ACCEPTED_KEY, 0) >= CURRENT_DIALER_TOS_VERSION;
+    }
+  }
+
+  private void recordTosAcceptance() {
+    if (isVvm3()) {
+      preferences.edit().putInt(VVM3_TOS_VERSION_ACCEPTED_KEY, CURRENT_VVM3_TOS_VERSION).apply();
+    } else {
+      preferences
+          .edit()
+          .putInt(DIALER_TOS_VERSION_ACCEPTED_KEY, CURRENT_DIALER_TOS_VERSION)
+          .apply();
+    }
+  }
+
+  private void logTosCreatedImpression() {
+    if (isVvm3()) {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_V2_CREATED);
+    } else {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_DIALER_TOS_CREATED);
+    }
+  }
+
+  private void logTosDeclinedImpression() {
+    if (isVvm3()) {
+      Logger.get(context)
+          .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_V2_DECLINE_CLICKED);
+    } else {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_DIALER_TOS_DECLINE_CLICKED);
+    }
+  }
+
+  private void logTosAcceptedImpression() {
+    if (isVvm3()) {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_V2_ACCEPTED);
+    } else {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_DIALER_TOS_ACCEPTED);
+    }
+  }
+
+  private CharSequence getVvm3Tos() {
+    return useSpanish()
+        ? context.getString(R.string.verizon_terms_and_conditions_1_1_spanish)
+        : context.getString(R.string.verizon_terms_and_conditions_1_1_english);
+  }
+
+  private CharSequence getDialerTos() {
+    return useSpanish()
+        ? context.getString(R.string.dialer_terms_and_conditions_1_0_spanish)
+        : context.getString(R.string.dialer_terms_and_conditions_1_0_english);
+  }
+
+  private CharSequence getAcceptText() {
+    if (isVvm3()) {
+      return useSpanish()
+          ? context.getString(R.string.verizon_terms_and_conditions_accept_spanish)
+          : context.getString(R.string.verizon_terms_and_conditions_accept_english);
+    } else {
+      return useSpanish()
+          ? context.getString(R.string.dialer_terms_and_conditions_accept_spanish)
+          : context.getString(R.string.dialer_terms_and_conditions_accept_english);
+    }
+  }
+
+  private CharSequence getDeclineText() {
+    if (isVvm3()) {
+      return useSpanish()
+          ? context.getString(R.string.verizon_terms_and_conditions_decline_spanish)
+          : context.getString(R.string.verizon_terms_and_conditions_decline_english);
+    } else {
+      return useSpanish()
+          ? context.getString(R.string.dialer_terms_and_conditions_decline_spanish)
+          : context.getString(R.string.dialer_terms_and_conditions_decline_english);
+    }
+  }
+
+  private CharSequence getTosTitle() {
+    return isVvm3()
+        ? context.getString(R.string.verizon_terms_and_conditions_title)
+        : context.getString(R.string.dialer_terms_and_conditions_title);
+  }
+
+  private CharSequence getTosMessage() {
+    if (isVvm3()) {
+      // For verizon the TOS consist of three pieces: google dialer TOS, Verizon TOS message and
+      // Verizon TOS details.
+      CharSequence vvm3Details = getVvm3Tos();
+      CharSequence tos =
+          context.getString(
+              R.string.verizon_terms_and_conditions_message, getDialerTos(), vvm3Details);
+      // Make all text bold except the details.
+      SpannableString spannableTos = new SpannableString(tos);
+      spannableTos.setSpan(new StyleSpan(Typeface.BOLD), 0, tos.length() - vvm3Details.length(), 0);
+      return spannableTos;
+    } else {
+      // The TOS for everyone else there are no details, so just make everything bold.
+      CharSequence tos =
+          context.getString(R.string.dialer_terms_and_conditions_message, getDialerTos());
+      SpannableString spannableTos = new SpannableString(tos);
+      spannableTos.setSpan(new StyleSpan(Typeface.BOLD), 0, tos.length(), 0);
+      return spannableTos;
+    }
+  }
+
+  private int getTosDeclinedDialogMessageId() {
+    return isVvm3()
+        ? R.string.verizon_terms_and_conditions_decline_dialog_message
+        : R.string.dialer_terms_and_conditions_decline_dialog_message;
+  }
+
+  private int getTosDeclinedDialogDowngradeId() {
+    return isVvm3()
+        ? R.string.verizon_terms_and_conditions_decline_dialog_downgrade
+        : R.string.dialer_terms_and_conditions_decline_dialog_downgrade;
+  }
+
+  private Integer getTosImageId() {
+    return isVvm3() ? null : R.drawable.voicemail_tos_image;
+  }
+}
diff --git a/java/com/android/dialer/app/voicemail/error/Vvm3VoicemailMessageCreator.java b/java/com/android/dialer/app/voicemail/error/Vvm3VoicemailMessageCreator.java
index 132e8a3..e639eff 100644
--- a/java/com/android/dialer/app/voicemail/error/Vvm3VoicemailMessageCreator.java
+++ b/java/com/android/dialer/app/voicemail/error/Vvm3VoicemailMessageCreator.java
@@ -16,32 +16,19 @@
 
 package com.android.dialer.app.voicemail.error;
 
-import android.app.AlertDialog;
-import android.content.ComponentName;
 import android.content.Context;
-import android.content.DialogInterface;
 import android.content.Intent;
-import android.content.SharedPreferences;
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
-import android.preference.PreferenceManager;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.RequiresApi;
-import android.support.annotation.VisibleForTesting;
-import android.telecom.PhoneAccountHandle;
-import android.telephony.TelephonyManager;
 import android.view.View;
 import android.view.View.OnClickListener;
-import com.android.contacts.common.compat.TelephonyManagerCompat;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.app.voicemail.error.VoicemailErrorMessage.Action;
-import com.android.dialer.common.LogUtil;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
-import com.android.voicemail.VoicemailClient;
-import com.android.voicemail.VoicemailComponent;
-import java.util.Locale;
 
 /**
  * Create error message from {@link VoicemailStatus} for VVM3 visual voicemail. VVM3 is used only by
@@ -84,15 +71,13 @@
   public static final int PIN_NOT_SET = -100;
   public static final int SUBSCRIBER_UNKNOWN = -99;
 
-  private static final String ISO639_SPANISH = "es";
-  @VisibleForTesting static final String VVM3_TOS_ACCEPTANCE_FLAG_KEY = "vvm3_tos_acceptance_flag";
-
   @Nullable
   public static VoicemailErrorMessage create(
       final Context context,
       final VoicemailStatus status,
       final VoicemailStatusReader statusReader) {
-    VoicemailErrorMessage tosMessage = maybeShowTosMessage(context, status, statusReader);
+    VoicemailErrorMessage tosMessage =
+        new VoicemailTosMessageCreator(context, status, statusReader).maybeCreateTosMessage();
     if (tosMessage != null) {
       return tosMessage;
     }
@@ -299,135 +284,4 @@
           }
         });
   }
-
-  @Nullable
-  private static VoicemailErrorMessage maybeShowTosMessage(
-      final Context context,
-      final VoicemailStatus status,
-      final VoicemailStatusReader statusReader) {
-    final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
-    if (preferences.getBoolean(VVM3_TOS_ACCEPTANCE_FLAG_KEY, false)) {
-      return null;
-    }
-    Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_SHOWN);
-
-    CharSequence termsAndConditions;
-    CharSequence acceptText;
-    CharSequence declineText;
-    // TODO(b/29082671): use LocaleList
-    if (Locale.getDefault().getLanguage().equals(new Locale(ISO639_SPANISH).getLanguage())) {
-      // Spanish
-      termsAndConditions = context.getString(R.string.verizon_terms_and_conditions_1_1_spanish);
-      acceptText = context.getString(R.string.verizon_terms_and_conditions_accept_spanish);
-      declineText = context.getString(R.string.verizon_terms_and_conditions_decline_spanish);
-    } else {
-      termsAndConditions = context.getString(R.string.verizon_terms_and_conditions_1_1_english);
-      acceptText = context.getString(R.string.verizon_terms_and_conditions_accept_english);
-      declineText = context.getString(R.string.verizon_terms_and_conditions_decline_english);
-    }
-
-    return new VoicemailTosMessage(
-            context.getString(R.string.verizon_terms_and_conditions_title),
-            context.getString(R.string.verizon_terms_and_conditions_message, termsAndConditions),
-            new Action(
-                declineText,
-                new OnClickListener() {
-                  @Override
-                  public void onClick(View v) {
-                    LogUtil.i("Vvm3VoicemailMessageCreator.maybeShowTosMessage", "decline clicked");
-                    PhoneAccountHandle handle =
-                        new PhoneAccountHandle(
-                            ComponentName.unflattenFromString(status.phoneAccountComponentName),
-                            status.phoneAccountId);
-                    Logger.get(context)
-                        .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINE_CLICKED);
-                    showDeclineTosDialog(context, handle, status);
-                  }
-                }),
-            new Action(
-                acceptText,
-                new OnClickListener() {
-                  @Override
-                  public void onClick(View v) {
-                    LogUtil.i("Vvm3VoicemailMessageCreator.maybeShowTosMessage", "accept clicked");
-                    preferences.edit().putBoolean(VVM3_TOS_ACCEPTANCE_FLAG_KEY, true).apply();
-                    Logger.get(context)
-                        .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_ACCEPTED);
-                    statusReader.refresh();
-                  }
-                },
-                true /* raised */))
-        .setModal(true);
-  }
-
-  private static void showDeclineTosDialog(
-      final Context context, final PhoneAccountHandle handle, VoicemailStatus status) {
-    if (PIN_NOT_SET == status.configurationState) {
-      LogUtil.i(
-          "Vvm3VoicemailMessageCreator.showDeclineTosDialog",
-          "PIN_NOT_SET, showing set PIN dialog");
-      showSetPinBeforeDeclineDialog(context);
-      return;
-    }
-    LogUtil.i(
-        "Vvm3VoicemailMessageCreator.showDeclineTosDialog",
-        "showing decline ToS dialog, status=" + status);
-    final TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
-    AlertDialog.Builder builder = new AlertDialog.Builder(context);
-    builder.setMessage(R.string.verizon_terms_and_conditions_decline_dialog_message);
-    builder.setPositiveButton(
-        R.string.verizon_terms_and_conditions_decline_dialog_downgrade,
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int which) {
-            Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINED);
-            VoicemailClient voicemailClient = VoicemailComponent.get(context).getVoicemailClient();
-            if (voicemailClient.isVoicemailModuleEnabled()) {
-              voicemailClient.setVoicemailEnabled(context, status.getPhoneAccountHandle(), false);
-            } else {
-              TelephonyManagerCompat.setVisualVoicemailEnabled(telephonyManager, handle, false);
-            }
-          }
-        });
-
-    builder.setNegativeButton(
-        android.R.string.cancel,
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int which) {
-            dialog.dismiss();
-          }
-        });
-
-    builder.setCancelable(true);
-    builder.show();
-  }
-
-  private static void showSetPinBeforeDeclineDialog(final Context context) {
-    AlertDialog.Builder builder = new AlertDialog.Builder(context);
-    builder.setMessage(R.string.verizon_terms_and_conditions_decline_set_pin_dialog_message);
-    builder.setPositiveButton(
-        R.string.verizon_terms_and_conditions_decline_set_pin_dialog_set_pin,
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int which) {
-            Logger.get(context)
-                .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINE_CHANGE_PIN_SHOWN);
-            Intent intent = new Intent(TelephonyManager.ACTION_CONFIGURE_VOICEMAIL);
-            context.startActivity(intent);
-          }
-        });
-
-    builder.setNegativeButton(
-        android.R.string.cancel,
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int which) {
-            dialog.dismiss();
-          }
-        });
-
-    builder.setCancelable(true);
-    builder.show();
-  }
 }
diff --git a/java/com/android/dialer/app/voicemail/error/res/drawable/shadow.xml b/java/com/android/dialer/app/voicemail/error/res/drawable/shadow.xml
new file mode 100644
index 0000000..681c795
--- /dev/null
+++ b/java/com/android/dialer/app/voicemail/error/res/drawable/shadow.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2017 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.
+-->
+
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+       android:shape="rectangle">
+  <solid android:color="#42000000" />
+</shape>
diff --git a/java/com/android/dialer/app/voicemail/error/res/drawable/voicemail_tos_image.png b/java/com/android/dialer/app/voicemail/error/res/drawable/voicemail_tos_image.png
new file mode 100644
index 0000000..2e076c6
--- /dev/null
+++ b/java/com/android/dialer/app/voicemail/error/res/drawable/voicemail_tos_image.png
Binary files differ
diff --git a/java/com/android/dialer/app/voicemail/error/res/layout/voicemail_tos_fragment.xml b/java/com/android/dialer/app/voicemail/error/res/layout/voicemail_tos_fragment.xml
index c193eaa..ec8abed 100644
--- a/java/com/android/dialer/app/voicemail/error/res/layout/voicemail_tos_fragment.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/layout/voicemail_tos_fragment.xml
@@ -1,4 +1,18 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2017 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"
@@ -9,13 +23,21 @@
     android:layout_width="match_parent"
     android:layout_height="0dp"
     android:layout_weight="1"
-    android:paddingStart="16dp"
-    android:paddingEnd="16dp"
     android:orientation="vertical">
     <LinearLayout
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
+      android:paddingLeft="16dp"
+      android:paddingRight="16dp"
       android:orientation="vertical">
+      <ImageView
+        android:id="@+id/voicemail_image"
+        android:layout_width="@dimen/voicemail_tos_image_size"
+        android:layout_height="@dimen/voicemail_tos_image_size"
+        android:layout_gravity="center"
+        android:paddingTop="24dp"
+        android:visibility="gone"
+        android:importantForAccessibility="no"/>
       <TextView
         android:id="@+id/tos_message_title"
         android:textStyle="bold"
@@ -39,8 +61,9 @@
 
   <View
     android:layout_width="match_parent"
-    android:layout_height="1dp"
-    android:background="#D2D2D2"/>
+    android:layout_height="0.5dp"
+    android:elevation="1dp"
+    android:background="@drawable/shadow"/>
 
   <LinearLayout
     android:id="@+id/voicemail_tos_button"
@@ -48,10 +71,12 @@
     android:layout_height="wrap_content"
     android:paddingStart="16dp"
     android:paddingEnd="16dp"
+    android:paddingTop="20dp"
+    android:paddingBottom="20dp"
     android:orientation="horizontal">
     <TextView
       android:id="@+id/voicemail_tos_button_decline"
-      style="@style/ErrorActionStyle"
+      style="@style/ErrorActionDeclineStyle"
       android:background="?android:attr/selectableItemBackground"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
@@ -62,10 +87,10 @@
       android:layout_weight="1"/>
     <TextView
       android:id="@+id/voicemail_tos_button_accept"
-      style="@style/RaisedErrorActionStyle"
+      style="@style/ErrorActionStyle"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="@string/verizon_terms_and_conditions_accept_english"/>
   </LinearLayout>
 
-</LinearLayout>
\ No newline at end of file
+</LinearLayout>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-af/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-af/strings.xml
index 9c64735..ab951eb 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-af/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-af/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiveer tans visuele stemboodskapdiens"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Jy sal dalk nie stemboodskapkennisgewings ontvang totdat visuele stemboodskapdiens heeltemal geaktiveer is nie. Bel stemboodskapdiens om nuwe boodskappe te kry totdat stemboodskapdiens volledig geaktiveer is."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Kan nie visuele stemboodskapdiens aktiveer nie"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Maak seker jou foon het sellulêre verbinding en probeer weer."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Maak seker jou foon het ’n mobiele netwerkverbinding en probeer weer."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Skakel vliegtuigmodus af en probeer weer."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Geen verbinding nie"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Jy sal nie van nuwe stemboodskappe in kennis gestel word nie. As jy op Wi-Fi is, kan jy jou stemboodskapdiens nagaan deur nou te sinkroniseer."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Jy sal nie van nuwe stemboodskappe in kennis gestel word nie. As jy op Wi-Fi is, kan jy jou stemboodskapdiens nagaan deur nou te sinkroniseer."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Jy sal nie van nuwe stemboodskappe in kennis gestel word nie. Skakel vliegtuigmodus af om jou stemboodskapdiens te sinkroniseer."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Jou foon benodig \'n sellulêre dataverbinding om stemboodskapdiens na te gaan."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Jou foon benodig \'n mobiele dataverbinding om stemboodskapdiens na te gaan"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Kan nie visuele stemboodskapdiens aktiveer nie"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Kan nie visuele stemboodskapdiens opdateer nie"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Probeer weer wanneer jou Wi-Fi- of sellulêre verbinding beter is. Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Probeer weer wanneer jou sellulêredataverbinding beter is. Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Probeer weer wanneer jou Wi-Fi- of mobiele dataverbinding beter is. Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Probeer weer wanneer jou mobiele dataverbinding beter is. Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Kan nie visuele stemboodskapdiens opdateer nie"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Kan nie visuele stemboodskapdiens opdateer nie"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Iets het verkeerd geloop"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontak asseblief Kliëntediens by <xliff:g id="NUMBER">%1$s</xliff:g> en gee vir hulle die foutkode 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visuele stemboodskapdiens se bepalings en voorwaardes"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Jy moet Verizon Wireless se bepalings en voorwaardes aanvaar om visuele stemboodskapdiens te gebruik:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nJy moet Verizon Wireless se bepalings en voorwaardes aanvaar om visuele stemboodskappe te gebruik:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Skakel visuele stemboodskappe aan"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuele stemboodskapdiens sal gedeaktiveer word as die bepalings en voorwaardes afgekeur word."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Deaktiveer visuele stemboodskapdiens"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Stemboodskaptranskripsie sal gedeaktiveer word as die bepalings en voorwaardes afgekeur word."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Deaktiveer stemboodskaptranskripsie"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Stempos sal slegs toeganklik wees as jy *86 bel. Stel \'n nuwe stempos-PIN om voort te gaan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Stel PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-am/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-am/strings.xml
index 502b873..14482e9 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-am/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-am/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"እይታዊ የድምጽ መልዕክት በማግበር ላይ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"እይታዊ የድምጽ መልዕክት ሙሉ ለሙሉ እስከሚነቃ ድረስ የድምፅ መልዕክት ማሳወቂያዎችን ላይቀበሉ ይችላሉ። የድምጽ መልዕክት ሙሉ ለሙሉ እስኪያገብር ድረስ አዲስ መልዕክቶችን ለማምጣት ወደ ድምፅ መልዕክት ይደውሉ።"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"እይታዊ የድምጽ መልዕክትን ማግበር አይቻልም"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ስልክዎ የሴሉላር ግንኙነት እንዳለው ያረጋግጡና እንደገና ይሞክሩ።"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ስልክዎ የተንቀሳቃሽ ስልክ አውታረ መረብ ግንኙነት እንዳለው ያረጋግጡና እንደገና ይሞክሩ።"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"የአውሮፕላን ሁነታን ያጥፉ እና እንደገና ይሞክሩ።"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ምንም ግንኙነት የለም"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ለአዲስ የድምጽ መልዕክቶች ማሳወቂያ አይደርስዎትም። Wi-Fi ላይ ከሆኑ አሁን በማስመር የድምጽ መልዕክትን መፈተሽ ይችላሉ።"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ለአዲስ የድምጽ መልዕክቶች ማሳወቂያ አይደርስዎትም። Wi-Fi ላይ ከሆኑ አሁን በማስመር የድምጽ መልዕክትን መፈተሽ ይችላሉ።"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ለአዲስ የድምጽ መልዕክቶች ማሳወቂያ አይደርስዎትም። የድምጽ መልዕክትዎን ለማስመር የአውሮፕላን ሁነታን ያጥፉ።"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"የድምጽ መልዕክት ለመፈተሽ ስልክዎ የሴሉላር ውሂብ ያስፈልገዋል።"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"የድምጽ መልዕክትን ለመፈተሽ ስልክዎ የተንቀሳቃሽ ስልክ ውሂብ ግንኙነት ያስፈልገዋል።"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"እይታዊ የድምጽ መልዕክትን ማግበር አይቻልም"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"አሁንም ቢሆን የድምጽ መልዕክትን ለመፈተሽ መደወል ይችላሉ።"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"እይታዊ የድምጽ መልዕክትን ማዘመን አይቻልም"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"የWi-Fi ወይም ሴሉላር ግንኙነትዎ ሲሻሻል እንደገና ይሞክሩ። አሁንም ቢሆን የድምጽ መልዕክት ለመፈተሽ መደወል ይችላሉ።"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"የሴሉላር ውሂብዎ ሲሻሻል እንደገና ይሞክሩ። አሁንም ቢሆን የድምጽ መልዕክትዎን ለመፈተሽ መደወል ይችላሉ።"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"የWi‑Fi ወይም የተንቀሳቃሽ ስልክ ውሂብ ግንኙነትዎ ሲሻሻል እንደገና ይሞክሩ። አሁንም ቢሆን የድምጽ መልዕክትዎን ለመፈተሽ መደወል ይችላሉ።"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"የተንቀሳቃሽ ስልክ ውሂብ ግንኙነትዎ ሲሻሻል እንደገና ይሞክሩ። አሁንም ቢሆን የድምጽ መልዕክትዎን ለመፈተሽ መደወል ይችላሉ።"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"እይታዊ የድምጽ መልዕክትን ማዘመን አይቻልም"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"አሁንም ቢሆን የድምጽ መልዕክትን ለመፈተሽ መደወል ይችላሉ።"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"እይታዊ የድምጽ መልዕክትን ማዘመን አይቻልም"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"የሆነ ችግር ተፈጥሯል"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"እባክዎ የደንበኛ አገልግሎትን በ<xliff:g id="NUMBER">%1$s</xliff:g> ላይ ያግኙ እና የስህተት ቁጥሩ 9999 እንደሆነ ይንገሯቸው።"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visual Voicemail የአገልግሎት ውል"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"እይታዊ የድምጽ መልዕክትን ለመጠቀም የVerizon Wirelessን የአገልግሎት ውል መቀበል አለብዎ፦ \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nእይታዊ የድምጽ መልዕክትን ለመጠቀም የVerizon Wirelessን የአገልግሎት ውል መቀበል አለብዎ፦\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"እይታዊ የድምጽ መልዕክን አብራ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"የአገልግሎት ውሉ ተቀባይነት ካላገኘ እይታዊ የድምጽ መልዕክት ይወገዳል።"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"እይታዊ የድምጽ መልዕክትን አስወግድ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"የአገልግሎት ውል ተቀባይነት ካላገኙ፣ የድምጽ መልዕክት ወደ ጽሁፍ መለወጥ ይሰናከላል።"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"የድምጽ መልዕክትን ወደ ጽሁፍ መለወጥን አሰናክል"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"የድምጽ መልዕክት ላይ መድረስ የሚቻለው *86 በመደወል ብቻ ነው። ለመቀጠል አዲስ የድምጽ መልዕክት ፒን ያዘጋጁ።"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ፒን ያዘጋጁ"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ar/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ar/strings.xml
index 6d462ef..91f6398 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ar/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ar/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"تنشيط البريد الصوتي المرئي"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"قد لا تتلقّى إشعارات البريد الصوتي حتى يتم تنشيط البريد الصوتي المرئي تمامًا. يمكنك الاتصال بالبريد الصوتي لاسترداد الرسائل الجديدة إلى أن يتم تنشيط البريد الصوتي تمامًا."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"يتعذر تنشيط البريد الصوتي المرئي"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"تأكد من وجود اتصال جوال على هاتفك وحاول مرة أخرى."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"تأكد من أن هاتفك توجد به اتصال شبكة جوال وحاول مرة أخرى."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"أوقف تشغيل وضع الطائرة وحاول مرة أخرى."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"لا يتوفر اتصال"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"‏لن يتم إعلامك برسائل البريد الصوتي الجديدة. إذا كنت تستخدم شبكة Wi-Fi، فيمكنك التحقق من البريد الصوتي عن طريق إجراء المزامنة الآن."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"‏لن يتم إعلامك برسائل البريد الصوتي الجديدة. إذا كنت تستخدم شبكة Wi-Fi، فيمكنك التحقق من البريد الصوتي عن طريق إجراء المزامنة الآن."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"لن يتم إعلامك برسائل البريد الصوتي الجديدة. أوقف تشغيل وضع الطائرة لمزامنة بريدك الصوتي."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"يحتاج هاتفك إلى اتصال جوال للتحقق من البريد الصوتي."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"يحتاج هاتفك إلى اتصال بيانات جوال للتحقق من البريد الصوتي."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"يتعذر تنشيط البريد الصوتي المرئي"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"لا يزال بإمكانك إجراء الاتصال للتحقق من البريد الصوتي."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"يتعذر تحديث البريد الصوتي المرئي"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"‏حاول مرة أخرى عندما يكون لديك اتصال Wi-Fi أو جوال أفضل. لا يزال بإمكانك الاتصال والتحقق من البريد الصوتي."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"حاول مرة أخرى عندما يكون لديك اتصال جوال أفضل. لا يزال بإمكانك الاتصال والتحقق من البريد الصوتي."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"‏حاول مرة أخرى عندما يكون لديك اتصال Wi-Fi أو جوال أفضل. لا يزال بإمكانك الاتصال والتحقق من البريد الصوتي."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"حاول مرة أخرى عندما يكون لديك اتصال جوال أفضل. لا يزال بإمكانك الاتصال والتحقق من البريد الصوتي."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"يتعذر تحديث البريد الصوتي المرئي"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"لا يزال بإمكانك إجراء الاتصال للتحقق من البريد الصوتي."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"يتعذر تحديث البريد الصوتي المرئي"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"حدث خطأٌ ما"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"يُرجى الاتصال بخدمة العملاء على الرقم <xliff:g id="NUMBER">%1$s</xliff:g> وإبلاغهم أن رمز الخطأ هو 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"البنود والشروط للبريد الصوتي المرئي"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"‏يجب قبول البنود والشروط لاتصال Verizon اللاسلكي من أجل استخدام البريد الصوتي المرئي:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"‏%1$s\n\nينبغي لك قبول البنود والشروط التي تخص Verizon Wireless لاستخدام البريد الصوتي المرئي:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"تشغيل البريد الصوتي المرئي"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"سيتم تعطيل البريد الصوتي المرئي في حالة رفض البنود والشروط."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"تعطيل البريد الصوتي المرئي"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"سيتم تعطيل نسخ البريد الصوتي في حالة رفض البنود والشروط."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"تعطيل نسخ البريد الصوتي"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"يمكن الوصول إلى البريد الصوتي فقط عن طريق طلب *86. ينبغي تعيين رقم تعريف شخصي جديد للبريد الصوتي للمتابعة."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"تعيين رقم التعريف الشخصي"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-az/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-az/strings.xml
index 33ddafa..5847984 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-az/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-az/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Vizual Səsli Mesaj aktiv edilir"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Vizual səsli mesaj tam aktiv edilənə klim səsli mesaj bildirişi ala bilməzsiniz. Səsli mesaj tam aktiv edilənə kimi yeni mesajları əldə etmək üçün səsli poçta zəng edin."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizual Səsli Mesaj aktiv edilə bilmir"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Telefonunuzda mobil bağlantı olduğuna əmin olun və yenidən cəhd edin."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Əmin olun ki, telefonun şəbəkə bağlantısı var və yenidən cəhd edin."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Təyyarə rejimini deaktiv edin və yenidən cəhd edin."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Bağlantı yoxdur"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Yeni gələn səsli mesajlara görə bildiriş almayacaqsınız. Wi-Fi qoşuludursa, sinxronizasiya etməklə səsli mesajları yoxlaya bilərsiniz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Yeni gələn səsli e-məktublara görə bildiriş almayacaqsınız. Wi-Fi qoşuludursa, sinxronizasiya etməklə səsli e-məktubları yoxlaya bilərsiniz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Yeni gələn səsli mesajlara görə bildiriş almayacaqsınız. Səsli mesajları sinxronizasiya etmək üçün təyyarə rejimini deaktiv edin."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Səsli mesajları yoxlamaq üçün telefonda mobil data bağlantısı olmalıdır."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Səsli e-məktubları yoxlamaq üçün telefonda mobil data bağlantısı olmalıdır."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizual Səsli Mesaj aktiv edilə bilmir"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Səsli mesajları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizual səsli mesajları yeniləmək olmur"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fivə ya mobil data bağlantısı yaxşı olduqda bir daha yoxlayın. Səsli mesajları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Mobil data bağlantısı yaxşı olduqda bir daha yoxlayın. Səsli mesajları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi‑Fi və ya mobil data bağlantısı daha yaxşı olduqda yenidən cəhd edin. Səsli e-məktubları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Mobil data bağlantısı yaxşı olduqda bir daha yoxlayın. Səsli e-məktubları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizual səsli mesajları yeniləmək olmur"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Səsli mesajları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizual səsli mesajları yeniləmək olmur"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nəsə Xəta Oldu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Lütfən, <xliff:g id="NUMBER">%1$s</xliff:g> nömrəsi ilə Müştəri Xidmətinə zəng edin. Xəta kodu 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vizual Səsli Poçt Şərtləri və Qaydaları"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Vizual səsli poçtu istifadə etmək üçün Verizon Wireless şərtlər və qaydalarını qəbul etməlisiniz:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nGörünən səsli e-poçtdan istifadə etmək üçün Verizon Wireless\'in şərt və qaydalarını qəbul etməlisiniz:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Görünən Səsli e-poçtu aktiv edin"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Şərtlər və qaydalar rədd edilsə, vizual səsli poçt deaktiv ediləcək."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Vizual səsli poçtu deaktiv edin"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Şərt və qaydalar rədd edilərsə, səsli e-poçt transkripsiyası deaktiv ediləcək."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Səsli e-poçt transkripsiyasını deaktiv edin"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Səsli məktub yalnız *86 nömrəsinə zəng etməklə mümkündür. Davam etmək üçün yeni səsli məktub PIN kodu təyin edin."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN kodu ayarlayın"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-b+sr+Latn/strings.xml
index 98dc061..dc9c23a 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-b+sr+Latn/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktivira se vizuelna govorna pošta"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Možda nećete dobijati obaveštenja o govornoj pošti dok potpuno ne aktivirate vizuelnu govornu poštu. Pozovite govornu poštu da biste preuzeli nove poruke dok govorna pošta ne bude potpuno aktivirana."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Aktiviranje vizuelne govorne pošte nije uspelo"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Proverite da li telefon ima mobilnu vezu i pokušajte ponovo."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Proverite da li telefon ima vezu preko mobilne mreže i probajte ponovo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Isključite režim rada u avionu i pokušajte ponovo."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Veza nije uspostavljena"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nećete dobijati obaveštenja o novim govornim porukama. Ako ste na Wi-Fi mreži, sinhronizujte da biste proverili govornu poštu."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nećete dobijati obaveštenja o novim govornim porukama. Ako ste na Wi‑Fi mreži, možete da sinhronizujete da biste proverili govornu poštu."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nećete dobijati obaveštenja o novim govornim porukama. Isključite režim rada u avionu da biste sinhronizovali govornu poštu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefonu treba mobilna veza za prenos podataka da biste proverili govornu poštu."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonu je za proveru govorne pošte potrebna mobilna veza za prenos podataka."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Aktiviranje vizuelne govorne pošte nije uspelo"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"I dalje možete da pozovete govornu poštu da biste je proverili."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ažuriranje vizuelne govorne pošte nije uspelo"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Probajte ponovo kad budete imali bolju Wi-Fi ili mobilnu vezu. I dalje možete da pozovete govornu poštu da biste je proverili."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Probajte ponovo kad budete imali bolju mobilnu vezu za prenos podataka. I dalje možete da pozovete govornu poštu da biste je proverili."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Probajte ponovo kad budete imali bolju Wi‑Fi ili mobilnu vezu za prenos podataka. I dalje možete da pozovete govornu poštu da biste je proverili."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Probajte ponovo kad budete imali bolju mobilnu vezu za prenos podataka. I dalje možete da pozovete govornu poštu da biste je proverili."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ažuriranje vizuelne govorne pošte nije uspelo"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"I dalje možete da pozovete govornu poštu da biste je proverili."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ažuriranje vizuelne govorne pošte nije uspelo"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nešto nije u redu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontaktirajte korisničku podršku na <xliff:g id="NUMBER">%1$s</xliff:g> i recite im da je kôd greške 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Uslovi i odredbe za vizuelnu govornu poštu"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Morate da prihvatite Verizon Wireless uslove i odredbe da biste koristili vizuelnu govornu poštu:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nMorate da prihvatite Verizon Wireless uslove i odredbe da biste koristili vizuelnu govornu poštu:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Uključite vizuelnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ako odbijete uslove i odredbe, onemogućićete vizuelnu govornu poštu."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Onemogućite vizuelnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripcija govorne pošte će biti onemogućena ako se uslovi i odredbe odbiju."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Onemogućite transkripciju govorne pošte"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Govornoj pošti ćete moći da pristupite samo ako pozovete *86. Podesite novi PIN kôd govorne pošte da biste nastavili."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Podesite PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-be/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-be/strings.xml
index 50f32af..368a41f 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-be/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-be/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Актывацыя візуальнай галасавой пошты"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Вы можаце не атрымліваць апавяшчэнні галасавой пошты, пакуль візуальная галасавая пошта не будзе поўнасцю актывавана. Каб атрымліваць новыя паведамленні да завяршэння актывацыі, выклікайце галасавую пошту."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Немагчыма актываваць візуальную галасавую пошту"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Пераканайцеся, што ваш тэлефон падключаны да сотавай сеткі і паўтарыце спробу."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Пераканайцеся, што ваш тэлефон падключаны да мабільнай сеткі і паўтарыце спробу."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Выключыце рэжым палёту і паўтарыце спробу."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Няма падключэння"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Вас не будуць апавяшчаць аб новых галасавых паведамленнях. Калі вы падключаны да Wi-Fi, можаце праверыць галасавую пошту шляхам сінхранізацыі."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Вас не будуць апавяшчаць аб новых галасавых паведамленнях. Калі вы падключаны да Wi-Fi, можаце праверыць галасавую пошту шляхам сінхранізацыі."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Вас не будуць апавяшчаць аб новых галасавых паведамленнях. Выключыце рэжым палёту і сінхранізуйце сваю галасавую пошту."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Каб праверыць галасавую пошту, вашаму тэлефону патрэбна падключэнне да сотавай перадачы даных."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Каб праверыць галасавую пошту, вашаму тэлефону патрэбна падключэнне да мабільнай перадачы даных."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Немагчыма актываваць візуальную галасавую пошту"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Немагчыма абнавіць візуальную галасавую пошту"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Паўтарыце спробу, калі падключэнне да Wi-Fi да сотавай перадачы даных палепшыцца. Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Паўтарыце спробу, калі паша падключэнне да сотавай перадачы даных палепшыцца. Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Паўтарыце спробу, калі падключэнне да Wi-Fi або да мабільнай перадачы даных палепшыцца. Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Паўтарыце спробу, калі паша падключэнне да мабільнай перадачы даных палепшыцца. Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Немагчыма абнавіць візуальную галасавую пошту"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Немагчыма абнавіць візуальную галасавую пошту"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Нешта пайшло не так"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Звяжыцеся са Службай падтрымкі па нумары <xliff:g id="NUMBER">%1$s</xliff:g> і паведаміце код памылкі 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Умовы візуальнай галасавой пошты"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Вы павінны прыняць ўмовы Verizon Wireless, каб можна было карыстацца візуальнай галасавой поштай:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nВы павінны прыняць правілы і ўмовы Verizon Wireless, каб можна было карыстацца візуальнай галасавой поштай:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Уключыць візуальную галасавую пошту"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Без згоды з правіламі і ўмовамі візуальная галасавая пошта будзе адключана."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Адключыць візуальную галасавую пошту"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Без згоды з правіламі і ўмовамі транскрыпцыя галасавой пошты будзе адключана."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Адключыць транскрыпцыю галасавой пошты"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Галасавая пошта даступна толькі па выкліку на нумар *86. Каб працягнуць, задайце новы PIN-код галасавой пошты."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Задаць PIN-код"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-bg/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-bg/strings.xml
index dbca19e..6e3463f 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-bg/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-bg/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Визуалната гласова поща се активира"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Възможно е да не получавате известия за гласова поща, докато визуалната гласова поща не бъде напълно активирана. Обаждайте се на номера за гласова поща, за да получавате нови съобщения, докато гласовата поща не е активирана."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Визуалната гласова поща не може да се активира"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Проверете дали телефонът ви има мобилна връзка и опитайте отново."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Проверете дали телефонът ви има връзка с мобилната мрежа и опитайте отново."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Изключете самолетния режим и опитайте отново."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Няма връзка"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Няма да бъдете известявани за нови гласови съобщения. Ако използвате Wi-Fi, можете да проверите за гласова поща, като синхронизирате сега."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Няма да бъдете известявани за нови гласови съобщения. Ако използвате Wi-Fi, можете да проверите за гласова поща, като синхронизирате сега."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Няма да бъдете известявани за нови гласови съобщения. Изключете самолетния режим, за да синхронизирате гласовата си поща."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"За да проверите гласовата поща, телефонът ви трябва да използва връзка за мобилни данни."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"За да проверите гласовата поща, телефонът ви трябва да използва мобилна връзка за данни."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Визуалната гласова поща не може да се активира"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Все пак можете да проверите гласовата поща с обаждане."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Визуалната гласова поща не може да се актуализира."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Опитайте отново, когато имате по-добра Wi-Fi или мобилна връзка. Все пак можете да проверите гласовата поща с обаждане."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Опитайте отново, когато имате по-добра връзка за мобилни данни. Все пак можете да проверите гласовата поща с обаждане."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Опитайте отново, когато имате по-добра Wi-Fi връзка или мобилна връзка за данни. Пак можете да проверите гласовата си поща чрез обаждане."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Опитайте отново, когато имате по-добра мобилна връзка за данни. Пак можете да проверите гласовата си поща чрез обаждане."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Визуалната гласова поща не може да се актуализира."</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Все пак можете да проверите гласовата поща с обаждане."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Визуалната гласова поща не може да се актуализира."</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Нещо се обърка"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Моля, свържете се с екипа за поддръжка на клиенти на телефон <xliff:g id="NUMBER">%1$s</xliff:g> и кажете, че кодът на грешката е 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Общи условия за визуалната гласова поща"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"За да използвате визуалната гласова поща, трябва да приемете Общите условия на Verizon:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nЗа да използвате визуалната гласова поща, трябва да приемете Общите условия на Verizon:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Включване на визуалната гласова поща"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ако отхвърлите Общите условия, визуалната гласова поща ще бъде деактивирана."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Деактивиране на визуалната гласова поща"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ако отхвърлите Общите условия, създаването на преписи на гласовите съобщения ще бъде деактивирано."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Деактивиране на преписите на гласовите съобщения"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ще имате достъп до гласовата поща само когато наберете *86. За да продължите, задайте нов ПИН за гласовата поща."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Задаване на ПИН"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-bn/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-bn/strings.xml
index 5954448..867ca85 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-bn/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-bn/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ভিজ্যুয়াল ভয়েসমেল সক্রিয়করণ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ভিজ্যুয়াল ভয়েসমেল সম্পূর্ণরূপে সক্রিয় না করা পর্যন্ত আপনি ভয়েসমেল সংক্রান্ত কোনো বিজ্ঞপ্তি নাও পেতে পারেন৷ ভয়েসমেল সম্পূর্ণরূপে সক্রিয় না হওয়া পর্যন্ত নতুন বার্তাগুলিকে পুনরুদ্ধার করতে ভয়েসমেলে কল করুন৷"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ভিজ্যুয়াল ভয়েসমেল সক্রিয় করবেন না"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"নিশ্চিত করুন যে আপনার ফোনে সেলুলার সংযোগ আছে এবং আবার চেষ্টা করুন।"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"আপনার ফোনে কোনো মোবাইল নেটওয়ার্ক সংযোগ আছে কিনা নিশ্চিত করে আবার চেষ্টা করুন।"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"বিমান মোড বন্ধ করুন এবং আবার চেষ্টা করুন।"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"কোনো সংযোগ নেই"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"আপনাকে নতুন ভয়েসমেলগুলির জন্য সূচিত করা হবে না। আপনি Wi-Fi ব্যবহার করলে, আপনি এখনই সিঙ্ক করে ভয়েসমেল চেক করতে পারেন।"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"আপনাকে নতুন ভয়েসমেলগুলির জন্য সূচিত করা হবে না। আপনি ওয়াই-ফাই ব্যবহার করলে, এখনই সিঙ্ক করে ভয়েসমেল চেক করতে পারেন।"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"আপনাকে নতুন ভয়েসমেলগুলির জন্য সূচিত করা হবে না। আপনার ভয়েসমেলে সিঙ্ক করার জন্য বিমান মোড বন্ধ করুন।"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ভয়েসমেল চেক করার জন্য আপনার ফোনের একটি সেলুলার ডেটার প্রয়োজন।"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ভয়েসমেল চেক করার জন্য আপনার ফোনের একটি মোবাইল ডেটা সংযোগের প্রয়োজন।"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ভিজ্যুয়াল ভয়েসমেল সক্রিয় করবেন না"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ভিজ্যুয়াল ভয়েসমেল আপডেট করা যাচ্ছে না"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"যখন আপনার Wi-Fi অথবা সেলুলার সংযোগ ভালো থাকবে তখন আবার চেষ্টা করুন। আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"যখন আপনার Wi-Fi অথবা সেলুলার সংযোগ ভালো থাকবে তখন আবার চেষ্টা করুন। আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"যখন আপনার ওয়াই-ফাই অথবা মোবাইল ডেটা সংযোগ ভালো থাকবে তখন আবার চেষ্টা করুন। আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"মোবাইল ডেটা সংযোগ ভালো থাকবে তখন আবার চেষ্টা করুন। আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ভিজ্যুয়াল ভয়েসমেল আপডেট করা যাচ্ছে না"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ভিজ্যুয়াল ভয়েসমেল আপডেট করা যাচ্ছে না"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"কিছু ভুল হয়েছে"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"অনুগ্রহ করে <xliff:g id="NUMBER">%1$s</xliff:g> এ কল করে গ্রাহক পরিষেবার সাথে যোগাযোগ করুন এবং তাদের জানান যে ত্রুটি কোডটি হলো ৯৯৯৯৷"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ভিজ্যুয়াল ভয়েসমেলের নিবন্ধন এবং শর্তাদি"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ভিজ্যুয়াল ভয়েসমেল ব্যবহার করার জন্য আপনাকে অবশ্যই Verizon Wireless এর নিবন্ধন এবং শর্তাদি স্বীকার করতে হবে:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nভিজ্যুয়াল ভয়েসমেল ব্যবহার করার জন্য আপনাকে অবশ্যই Verizon Wireless এর নিবন্ধন এবং শর্তাদি স্বীকার করতে হবে:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ভিজ্যুয়াল ভয়েসমেল চালু করুন"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"নিবন্ধন এবং শর্তাদি অস্বীকার করা হলে ভিজ্যুয়াল ভয়েসমেল অক্ষম করা হবে৷"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ভিজ্যুয়াল ভয়েসমেল অক্ষম করুন"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"নিবন্ধন এবং শর্তাদি অস্বীকার করা হলে ভিজ্যুয়াল ভয়েসমেলের ট্রান্সক্রিপশান অক্ষম করা হবে৷"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ভয়েসমেলের ট্রান্সক্রিপশান অক্ষম করুন"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"শুধুমাত্র *৮৬ নম্বরে কল করেই ভয়েসমেল অ্যাক্সেস করা যাবে৷ এগিয়ে যাওয়ার জন্য একটি নতুন ভয়েসমেলের পিন সেট করুন৷"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"পিন সেট করুন"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-bs/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-bs/strings.xml
index 0352436..b22c752 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-bs/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-bs/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiviranje vizuelne govorne pošte"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Možda nećete primati obavještenja o govornoj pošti dok se vizuelna govorna pošta ne aktivira u potpunosti. U međuvremenu pozovite govornu poštu za preuzimanje novih poruka."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nije moguće aktivirati vizuelnu govornu poštu"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Provjerite imate li mobilnu mrežu na telefonu i pokušajte ponovo."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Provjerite imate li mobilnu mrežu na telefonu i pokušajte ponovo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Isključite način rada u avionu i pokušajte ponovo."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Niste povezani na mrežu"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nećete primati obavještenja o novoj govornoj pošti. Ako ste na Wi-Fi mreži, možete provjeriti govornu poštu tako što ćete sada obaviti sinhronizaciju."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nećete primati obavještenja o novim govornim porukama. Ako ste na Wi-Fi mreži, provjerite govornu poštu tako što ćete odmah obaviti sinhronizaciju."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nećete primati obavještenja o novoj govornoj pošti. Isključite način rada u avionu da sinhronizirate govornu poštu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Vaš telefon treba imati mobilnu podatkovnu vezu za provjeru govorne pošte."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonu je potreban mobilni prijenos podataka radi provjere govorne pošte."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nije moguće aktivirati vizuelnu govornu poštu"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"I dalje možete nazvati za provjeru govorne pošte."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nije moguće ažurirati vizuelnu govornu poštu"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Pokušajte ponovo kada Wi-Fi ili mobilna mreža bude bolja. I dalje možete nazvati za provjeru govorne pošte."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Pokušajte ponovo kada mobilna podatkovna mreža bude bolja. I dalje možete nazvati za provjeru govorne pošte."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Pokušajte ponovo kada Wi-Fi veza ili mobilni prijenos podataka bude bolji. I dalje možete nazvati za provjeru govorne pošte."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Pokušajte ponovo kada mobilni prijenos podataka bude bolji. I dalje možete nazvati za provjeru govorne pošte."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nije moguće ažurirati vizuelnu govornu poštu"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"I dalje možete nazvati za provjeru govorne pošte."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nije moguće ažurirati vizuelnu govornu poštu"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nešto nije uredu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontaktirajte korisničku podršku na broj <xliff:g id="NUMBER">%1$s</xliff:g> i obavijestite ih da je kȏd greške 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Uslovi i odredbe vizuelne govorne pošte"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Morate prihvatiti uslove i odredbe kompanije Verizon Wireless prije korištenja vizuelne govorne pošte:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nMorate prihvatiti uslove i odredbe kompanije Verizon Wireless prije korištenja vizuelne govorne pošte:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Uključi vizuelnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Vizuelna govorna pošta bit će onemogućena ako odbijete uslove i odredbe."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Onemogući vizuelnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripcija govorne pošte će biti onemogućena ako odbijete uslove i odredbe."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Onemogući transkripciju govorne pošte"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Govornoj pošti ćete moći pristupiti samo pozivanjem broja *86. Postavite novi PIN govorne pošte da nastavite."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Postavi PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ca/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ca/strings.xml
index b6d844d..4793f43 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ca/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ca/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"S\'està activant la bústia de veu visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"És possible que no rebis notificacions de missatges de veu fins que la bústia de veu visual estigui completament activada. Fins aleshores, truca a la bústia de veu per recuperar els missatges nous."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"No es pot activar la bústia de veu visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Comprova la connexió mòbil del telèfon i torna-ho a provar."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Assegura\'t que el telèfon tingui connexió a una xarxa mòbil i torna-ho a provar."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desactiva el mode d\'avió i torna-ho a provar."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sense connexió"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"No rebràs notificacions de missatges de veu nous. Si estàs connectat a una xarxa Wi-Fi, pots sincronitzar ara per consultar la bústia de veu."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"No rebràs notificacions de missatges de veu nous. Si estàs connectat a una xarxa Wi-Fi, pots sincronitzar ara per consultar la bústia de veu."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"No rebràs notificacions de missatges de veu nous. Desactiva el mode d\'avió per sincronitzar la bústia de veu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"El telèfon necessita una connexió de dades mòbils per consultar la bústia de veu."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Cal que el telèfon tingui una connexió de dades mòbils per poder consultar la bústia de veu."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"No es pot activar la bústia de veu visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Pots trucar igualment per consultar la bústia de veu."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"No es pot actualitzar la bústia de veu visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Torna-ho a provar quan la connexió Wi-Fi o mòbil sigui millor. Pots trucar igualment per consultar la bústia de veu."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Torna-ho a provar quan la connexió de dades mòbils sigui millor. Pots trucar igualment per consultar la bústia de veu."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Torna-ho a provar quan la connexió Wi-Fi o de dades mòbils sigui millor. Pots trucar igualment per consultar la bústia de veu."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Torna-ho a provar quan la connexió de dades mòbils sigui millor. Pots trucar igualment per consultar la bústia de veu."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"No es pot actualitzar la bústia de veu visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Pots trucar igualment per consultar la bústia de veu."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"No es pot actualitzar la bústia de veu visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"S\'ha produït un error"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Contacta amb el servei d\'atenció al client al <xliff:g id="NUMBER">%1$s</xliff:g> i informa\'ls que el codi d\'error és 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termes i condicions de la bústia de veu visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Has d\'acceptar els termes i condicions de Verizon Wireless per utilitzar la bústia de veu visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nHas d\'acceptar els termes i condicions de Verizon Wireless per poder utilitzar la bústia de veu visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activa la bústia de veu visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"La bústia de veu visual es desactivarà si es rebutgen els termes i condicions."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desactiva la bústia de veu visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"La transcripció dels missatges de veu es desactivarà si es rebutgen els termes i condicions."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desactiva la transcripció dels missatges de veu"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Només podràs accedir a la bústia de veu trucant al *86. Defineix un nou PIN de la bústia de veu per continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Defineix el PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-cs/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-cs/strings.xml
index c52f7b0..bf8f54c 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-cs/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-cs/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktivace vizuální hlasové schránky"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Je možné, že dokud nebude vizuální hlasová schránka plně aktivována, nebudou vám chodit oznámení z hlasové schránky. Do té doby se k novým zprávám dostanete po zavolání do hlasové schránky."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizuální hlasovou schránku se nepodařilo aktivovat"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Zkontrolujte, že je telefon připojen k mobilní síti a zkuste to znovu."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Zkontrolujte, že je telefon připojen k mobilní síti a zkuste to znovu."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Vypněte režim letadla a zkuste to znovu."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nejste připojeni"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nebudete dostávat oznámení o nových hlasových zprávách. Pokud jste připojeni k Wi-Fi, můžete hlasovou schránku zkontrolovat synchronizací."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nebudete dostávat oznámení o nových hlasových zprávách. Pokud jste připojeni k Wi-Fi, můžete hlasovou schránku zkontrolovat synchronizací."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nebudete dostávat oznámení o nových hlasových zprávách. Pokud chcete hlasovou schránku synchronizovat, vypněte režim letadla."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefon musí být připojen k mobilním datům, aby bylo možné zkontrolovat hlasovou schránku."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefon musí být připojen k mobilním datům, aby bylo možné zkontrolovat hlasovou schránku."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizuální hlasovou schránku se nepodařilo aktivovat"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Můžete ji ale stále zkontrolovat zavoláním."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizuální hlasovou schránku se nepodařilo aktualizovat"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Zkuste to znovu, až budete mít lepší připojení k Wi-Fi nebo k mobilním datům. Stále ale můžete hlasovou schránku zkontrolovat zavoláním."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Zkuste to znovu, až budete mít lepší připojení k mobilním datům. Stále ale můžete hlasovou schránku zkontrolovat zavoláním."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Zkuste to znovu, až budete mít lepší připojení k Wi-Fi nebo k mobilním datům. Stále ale můžete hlasovou schránku zkontrolovat zavoláním."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Zkuste to znovu, až budete mít lepší připojení k mobilním datům. Stále ale můžete hlasovou schránku zkontrolovat zavoláním."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizuální hlasovou schránku se nepodařilo aktualizovat"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Můžete ji ale stále zkontrolovat zavoláním."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizuální hlasovou schránku se nepodařilo aktualizovat"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Něco se pokazilo"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontaktujte zákaznický servis na čísle <xliff:g id="NUMBER">%1$s</xliff:g> a sdělte kód chyby 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Smluvní podmínky vizuální hlasové schránky"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Pokud chcete používat vizuální hlasovou schránku, musíte přijmout smluvní podmínky společnosti Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nChcete-li používat vizuální hlasovou schránku, musíte přijmout smluvní podmínky společnosti Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Zapnout vizuální hlasovou schránku"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Pokud smluvní podmínky odmítnete, vizuální hlasová schránka bude vypnuta."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Vypnout vizuální hlasovou schránku"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Pokud smluvní podmínky odmítnete, přepis hlasové schránky bude vypnut."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Vypnout přepis hlasové schránky"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Hlasová schránka bude dostupná jen zavoláním na číslo *86. Pokud chcete pokračovat, nastavte si nový kód PIN k hlasové schránce."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Nastavit kód PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-da/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-da/strings.xml
index 26e5ede..71dc2e6 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-da/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-da/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiverer visuel telefonsvarer"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Du modtager muligvis ikke telefonsvarerunderretninger, før den visuelle telefonsvarer er fuldt aktiveret. Ring til telefonsvareren for hente nye beskeder, indtil telefonsvareren er fuldt aktiveret."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Visuel telefonsvarer kan ikke aktiveres"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Sørg for, at din telefon har mobilforbindelse, og prøv igen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Sørg for, at din telefon har forbindelse til mobilnetværket, og prøv igen."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Slå flytilstand fra, og prøv igen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ingen forbindelse"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du vil ikke få besked om nye telefonsvarerbeskeder. Hvis du er på Wi-Fi, kan du tjekke, om der er telefonsvarerbeskeder, ved at synkronisere nu."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du får ikke besked om nye talebeskeder. Hvis du er på Wi-Fi, kan du tjekke, om der er talebeskeder, ved at synkronisere nu."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du vil ikke få besked om nye telefonsvarerbeskeder. Slå flytilstand fra for at synkronisere din e-mail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Din telefon skal have en mobilforbindelse, for at du kan tjekke din telefonsvarer."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Din telefon skal have en mobildataforbindelse, for at du kan tjekke, om der er talebeskeder."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Visuel telefonsvarer kan ikke aktiveres"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kan stadig ringe op for at tjekke din telefonsvarer."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Visuel telefonsvarer kan ikke opdateres"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Prøv igen, når din Wi-Fi- eller mobilforbindelse er bedre. Du kan stadig ringe op for at tjekke din telefonsvarer."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Prøv igen, når din mobildataforbindelse er bedre. Du kan stadig ringe op for at tjekke din telefonsvarer."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Prøv igen, når din Wi-Fi- eller mobildataforbindelse er bedre. Du kan stadig ringe for at tjekke, om der er talebeskeder."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Prøv igen, når din mobildataforbindelse er bedre. Du kan stadig ringe for at tjekke, om der er talebeskeder."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Visuel telefonsvarer kan ikke opdateres"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kan stadig ringe op for at tjekke din telefonsvarer."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Visuel telefonsvarer kan ikke opdateres"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Der opstod en fejl"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakt kundeservice på <xliff:g id="NUMBER">%1$s</xliff:g>, og fortæl dem, at fejlkoden er 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vilkår og betingelser for visuel telefonsvarer"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du skal acceptere vilkår og betingelser for Verizon Wireless for at bruge visuel telefonsvarer:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu skal acceptere vilkår og betingelser for Verizon Wireless for at bruge visuel telefonsvarer:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Slå Visuel telefonsvarer til"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuel telefonsvarer bliver deaktiveret, hvis vilkår og betingelser afvises."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Deaktiver visuel telefonsvarer"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transskription af talebeskeder deaktiveres, hvis du ikke accepterer vilkår og betingelser."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Deaktiver transskription af talebeskeder"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Telefonsvareren er kun tilgængelig, hvis du taster *86 og ringer op. Angiv en ny pinkode til telefonsvarer for at fortsætte."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Angiv pinkode"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-de/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-de/strings.xml
index 865ddd9..c340582 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-de/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-de/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Visuelle Mailbox wird aktiviert"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Möglicherweise erhältst du keine Mailbox-Benachrichtigungen, solange die visuelle Mailbox nicht vollständig aktiviert ist. Bis es soweit ist, kannst du deine Mailbox anrufen, um neue Nachrichten abzuhören."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Visuelle Mailbox kann nicht aktiviert werden"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Vergewissere dich, dass dein Smartphone eine Mobilfunkverbindung hat und versuche es noch einmal."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Vergewissere dich, dass auf deinem Smartphone eine Mobilfunkverbindung besteht, und versuche es noch einmal."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Schalte den Flugmodus aus und versuche es noch einmal."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Keine Verbindung"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du wirst nicht über neue Mailboxnachrichten informiert. Wenn du eine WLAN-Verbindung hast, kannst du deine Mailbox abrufen, indem du dein Smartphone jetzt synchronisierst."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du wirst nicht über neue Mailboxnachrichten informiert. Wenn du eine WLAN-Verbindung verwendest, kannst du deine Mailbox abrufen, indem du dein Smartphone jetzt synchronisierst."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du wirst nicht über neue Mailboxnachrichten informiert. Schalte den Flugmodus aus, um deine Mailbox zu synchronisieren."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Dein Smartphone benötigt eine mobile Datenverbindung, um die Mailbox abzurufen."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Dein Smartphone benötigt eine mobile Datenverbindung, um die Mailbox abzurufen."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Visuelle Mailbox kann nicht aktiviert werden"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kannst deine Mailbox immer noch per Anruf abhören."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Visuelle Mailbox kann nicht aktualisiert werden"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Versuch es noch einmal, sobald die WLAN- bzw. Mobilfunkverbindung besser ist. Du kannst deine Mailbox immer noch per Anruf abhören."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Versuch es noch einmal, sobald die Mobilfunkverbindung besser ist. Du kannst deine Mailbox immer noch per Anruf abhören."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Versuche es noch einmal, sobald die WLAN- bzw. Mobilfunkverbindung besser ist. Du kannst deine Mailbox weiterhin per Anruf abhören."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Versuche es noch einmal, sobald die Mobilfunkverbindung besser ist. Du kannst deine Mailbox weiterhin per Anruf abhören."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Visuelle Mailbox kann nicht aktualisiert werden"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kannst deine Mailbox immer noch per Anruf abhören."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Visuelle Mailbox kann nicht aktualisiert werden"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ein Problem ist aufgetreten"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Bitte wende dich an den Kundensupport unter der Nummer <xliff:g id="NUMBER">%1$s</xliff:g> und gib den Fehlercode 9999 an."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Nutzungsbedingungen für visuelle Mailbox"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du muss den Nutzungsbedingungen von Verizon Wireless zustimmen, um die visuelle Mailbox zu verwenden:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu musst den Nutzungsbedingungen von Verizon Wireless zustimmen, um die visuelle Mailbox zu verwenden:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Visuelle Mailbox aktivieren"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Die visuelle Mailbox wird deaktiviert, wenn du die Nutzungsbedingungen ablehnst."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Visuelle Mailbox deaktivieren"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Die Sprache-zu-Text-Umwandlung von Mailbox-Nachrichten wird deaktiviert, wenn die Nutzungsbedingungen abgelehnt werden."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Sprache-zu-Text-Umwandlung von Mailbox-Nachrichten deaktivieren"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Du kannst nur auf Mailboxnachrichten zugreifen, indem du *86 anrufst. Lege eine neue Mailbox-PIN fest, um fortzufahren."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN festlegen"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-el/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-el/strings.xml
index acd1ca0..f05319d 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-el/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-el/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ενεργοποίηση οπτικού αυτόματου τηλεφωνητή"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Ενδέχεται να μην λαμβάνετε ειδοποιήσεις αυτόματου τηλεφωνητή έως ότου ο οπτικός αυτόματος τηλεφωνητής ενεργοποιηθεί πλήρως. Καλέστε τον αυτόματο τηλεφωνητή για να ανακτήσετε νέα μηνύματα, έως ότου γίνει πλήρης ενεργοποίηση του οπτικού αυτόματου τηλεφωνητή."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Δεν είναι δυνατή η ενεργοποίηση του οπτικού αυτόματου τηλεφωνητή"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Βεβαιωθείτε ότι το τηλέφωνό σας διαθέτει σύνδεση κινητής τηλεφωνίας και δοκιμάστε ξανά."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Βεβαιωθείτε ότι το τηλέφωνό σας διαθέτει σύνδεση κινητής τηλεφωνίας και δοκιμάστε ξανά."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Απενεργοποιήστε τη λειτουργία πτήσης και δοκιμάστε ξανά."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Δεν υπάρχει σύνδεση"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Δεν θα ειδοποιείστε για νέα φωνητικά μηνύματα. Εάν είστε συνδεδεμένοι μέσω Wi-Fi, μπορείτε να ελέγξετε τον αυτόματο τηλεφωνητή σας για μηνύματα, εκτελώντας συγχρονισμό τώρα."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Δεν θα ειδοποιείστε για νέα φωνητικά μηνύματα. Εάν είστε συνδεδεμένοι μέσω Wi-Fi, μπορείτε να ελέγξετε τον αυτόματο τηλεφωνητή σας για μηνύματα, εκτελώντας συγχρονισμό τώρα."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Δεν θα ειδοποιείστε για νέα φωνητικά μηνύματα. Απενεργοποιήστε τη λειτουργία πτήσης για συγχρονισμό φωνητικών μηνυμάτων του αυτόματου τηλεφωνητή σας."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Το τηλέφωνό σας χρειάζεται σύνδεση δεδομένων κινητής τηλεφωνίας για έλεγχο του αυτόματου τηλεφωνητή σας."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Το τηλέφωνό σας χρειάζεται σύνδεση δεδομένων κινητής τηλεφωνίας για έλεγχο του αυτόματου τηλεφωνητή σας."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Δεν είναι δυνατή η ενεργοποίηση του οπτικού αυτόματου τηλεφωνητή"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Μπορείτε και πάλι να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Δεν είναι δυνατή η ενημέρωση του οπτικού αυτόματου τηλεφωνητή"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Δοκιμάστε ξανά όταν η σύνδεση Wi-Fi ή η σύνδεση κινητής τηλεφωνίας είναι καλύτερη. Ακόμα κι έτσι, μπορείτε να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Δοκιμάστε ξανά όταν η σύνδεση κινητής τηλεφωνίας είναι καλύτερη. Ακόμα κι έτσι, μπορείτε να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Δοκιμάστε ξανά όταν η σύνδεση Wi-Fi ή η σύνδεση κινητής τηλεφωνίας είναι καλύτερη. Ακόμα κι έτσι, μπορείτε να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Δοκιμάστε ξανά όταν η σύνδεση κινητής τηλεφωνίας είναι καλύτερη. Ακόμα κι έτσι, μπορείτε να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Δεν είναι δυνατή η ενημέρωση του οπτικού αυτόματου τηλεφωνητή"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Μπορείτε και πάλι να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Δεν είναι δυνατή η ενημέρωση του οπτικού αυτόματου τηλεφωνητή"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Παρουσιάστηκε κάποιο πρόβλημα"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Επικοινωνήστε με το τμήμα εξυπηρέτησης πελατών στο <xliff:g id="NUMBER">%1$s</xliff:g> και αναφέρετέ τους τον κωδικό σφάλματος 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Όροι και Προϋποθέσεις οπτικού αυτόματου τηλεφωνητή"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Πρέπει να αποδεχτείτε τους Όρους και τις Προϋποθέσεις της Verizon Wireless για να χρησιμοποιήσετε τον οπτικό αυτόματο τηλεφωνητή:\n\n"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nΠρέπει να αποδεχτείτε τους όρους και τις προϋποθέσεις της Verizon Wirelessγια τη χρήση οπτικού αυτόματου τηλεφωνητή:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ενεργοποίηση Οπτικού αυτόματου τηλεφωνητή"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ο οπτικός αυτόματος τηλεφωνητής θα απενεργοποιηθεί εάν δεν αποδεχτείτε τους Όρους και τις Προϋποθέσεις."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Απενεργοποίηση οπτικού αυτόματου τηλεφωνητή"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Η μεταγραφή αυτόματου τηλεφωνητή θα απενεργοποιηθεί εάν δεν αποδεχτείτε τους Όρους και τις Προϋποθέσεις."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Απενεργοποίηση μεταγραφής αυτόματου τηλεφωνητή"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ο αυτόματος τηλεφωνητής θα είναι προσβάσιμος μόνο καλώντας το *86. Ορίστε έναν νέο αριθμό PIN αυτόματου τηλεφωνητή για να συνεχίσετε."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ορισμός PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-en-rAU/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-en-rAU/strings.xml
index a036950..2349fe0 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-en-rAU/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activating visual voicemail"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Can\'t activate visual voicemail"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Make sure that your phone has a mobile connection and try again."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Make sure your phone has a mobile network connection and try again."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Turn off aeroplane mode and try again."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"No connection"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"You won\'t be notified about new voicemail. If you\'re on Wi-Fi, you can check for voicemail by syncing now."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"You won\'t be notified for new voicemails. If you\'re on Wi‑Fi, you can check for voicemail by syncing now."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"You won\'t be notified about new voicemail. Turn off aeroplane mode to sync your voicemail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Your phone needs a mobile data connection to check voicemail."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Your phone needs a mobile data connection to check voicemail."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Can\'t activate visual voicemail"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"You can still call to check voicemail."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Can\'t update visual voicemail"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Try again when your Wi-Fi or mobile connection is better. You can still call to check voicemail."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Try again when your Wi‑Fi or mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Can\'t update visual voicemail"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"You can still call to check voicemail."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Can\'t update visual voicemail"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Something went wrong"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Please contact Customer Service on <xliff:g id="NUMBER">%1$s</xliff:g> and tell them that the error code is 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visual voicemail Terms and Conditions"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"You must accept Verizon Wireless\'s Terms and Conditions to use visual voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nYou must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Turn on Visual Voicemail"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visual voicemail will be disabled if the Terms and Conditions are declined."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Disable visual voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Voicemail transcription will be disabled if the terms and conditions are declined."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Disable voicemail transcription"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Voicemail will only be accessible by calling *86. Set a new voicemail PIN to proceed."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Set PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-en-rGB/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-en-rGB/strings.xml
index a036950..2349fe0 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-en-rGB/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activating visual voicemail"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Can\'t activate visual voicemail"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Make sure that your phone has a mobile connection and try again."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Make sure your phone has a mobile network connection and try again."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Turn off aeroplane mode and try again."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"No connection"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"You won\'t be notified about new voicemail. If you\'re on Wi-Fi, you can check for voicemail by syncing now."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"You won\'t be notified for new voicemails. If you\'re on Wi‑Fi, you can check for voicemail by syncing now."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"You won\'t be notified about new voicemail. Turn off aeroplane mode to sync your voicemail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Your phone needs a mobile data connection to check voicemail."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Your phone needs a mobile data connection to check voicemail."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Can\'t activate visual voicemail"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"You can still call to check voicemail."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Can\'t update visual voicemail"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Try again when your Wi-Fi or mobile connection is better. You can still call to check voicemail."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Try again when your Wi‑Fi or mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Can\'t update visual voicemail"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"You can still call to check voicemail."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Can\'t update visual voicemail"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Something went wrong"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Please contact Customer Service on <xliff:g id="NUMBER">%1$s</xliff:g> and tell them that the error code is 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visual voicemail Terms and Conditions"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"You must accept Verizon Wireless\'s Terms and Conditions to use visual voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nYou must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Turn on Visual Voicemail"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visual voicemail will be disabled if the Terms and Conditions are declined."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Disable visual voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Voicemail transcription will be disabled if the terms and conditions are declined."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Disable voicemail transcription"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Voicemail will only be accessible by calling *86. Set a new voicemail PIN to proceed."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Set PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-en-rIN/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-en-rIN/strings.xml
index a036950..2349fe0 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-en-rIN/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activating visual voicemail"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Can\'t activate visual voicemail"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Make sure that your phone has a mobile connection and try again."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Make sure your phone has a mobile network connection and try again."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Turn off aeroplane mode and try again."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"No connection"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"You won\'t be notified about new voicemail. If you\'re on Wi-Fi, you can check for voicemail by syncing now."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"You won\'t be notified for new voicemails. If you\'re on Wi‑Fi, you can check for voicemail by syncing now."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"You won\'t be notified about new voicemail. Turn off aeroplane mode to sync your voicemail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Your phone needs a mobile data connection to check voicemail."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Your phone needs a mobile data connection to check voicemail."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Can\'t activate visual voicemail"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"You can still call to check voicemail."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Can\'t update visual voicemail"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Try again when your Wi-Fi or mobile connection is better. You can still call to check voicemail."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Try again when your Wi‑Fi or mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Can\'t update visual voicemail"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"You can still call to check voicemail."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Can\'t update visual voicemail"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Something went wrong"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Please contact Customer Service on <xliff:g id="NUMBER">%1$s</xliff:g> and tell them that the error code is 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visual voicemail Terms and Conditions"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"You must accept Verizon Wireless\'s Terms and Conditions to use visual voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nYou must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Turn on Visual Voicemail"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visual voicemail will be disabled if the Terms and Conditions are declined."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Disable visual voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Voicemail transcription will be disabled if the terms and conditions are declined."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Disable voicemail transcription"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Voicemail will only be accessible by calling *86. Set a new voicemail PIN to proceed."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Set PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-es-rUS/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-es-rUS/strings.xml
index 485a78b..16a74d9 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-es-rUS/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activando el buzón de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Es posible que no recibas notificaciones de los mensajes de voz hasta que el buzón de voz visual se encuentre completamente activado. Hasta ese momento, puedes llamar al buzón de voz para recuperar los mensajes nuevos."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"No se puede activar el buzón de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Asegúrate de que el teléfono tenga conexión móvil y vuelve a intentarlo."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Asegúrate de que el teléfono tenga conexión móvil y vuelve a intentarlo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desactiva el modo de avión y vuelve a intentarlo."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sin conexión"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"No recibirás notificaciones de los mensajes de voz nuevos. Si estás conectado a Wi-Fi, puedes sincronizar ahora para revisar el buzón de voz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"No recibirás notificaciones de los mensajes de voz nuevos. Si estás conectado a Wi-Fi, puedes sincronizar ahora para revisar el buzón de voz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"No recibirás notificaciones de los mensajes de voz nuevos. Desactiva el modo de avión para sincronizar el buzón de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"El teléfono necesita una conexión de datos móviles para revisar el buzón de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"El teléfono necesita una conexión de datos móviles para revisar el buzón de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"No se puede activar el buzón de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Aún puedes llamar para revisar el buzón de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"No se puede actualizar el buzón de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Vuelve a intentarlo cuando la conexión Wi-Fi o la conexión móvil mejoren. Aún puedes llamar para revisar el buzón de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Vuelve a intentarlo cuando la conexión de datos móviles mejore. Aún puedes llamar para revisar el buzón de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Vuelve a intentarlo cuando la conexión Wi-Fi o la conexión de datos móviles mejoren. Aún puedes llamar para revisar el buzón de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Vuelve a intentarlo cuando la conexión de datos móviles mejore. Aún puedes llamar para revisar el buzón de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"No se puede actualizar el buzón de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Aún puedes llamar para revisar el buzón de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"No se puede actualizar el buzón de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Se produjo un error"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Comunícate con el servicio de atención al cliente al <xliff:g id="NUMBER">%1$s</xliff:g> e indícales que el código de error es el 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Términos y condiciones del buzón de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Debes aceptar los términos y condiciones de Verizon Wireless para usar el buzón de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDebes aceptar los términos y condiciones de Verizon Wireless para usar el buzón de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activar el buzón de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"El buzón de voz visual se desactiva si no aceptas los términos y condiciones."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Inhabilitar buzón de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"La transcripción del buzón de voz se desactivará si no aceptas los términos y condiciones."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Inhabilitar la transcripción del buzón de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Solo podrás acceder al buzón de voz llamando al *86. Para continuar, establece un nuevo PIN para el buzón de voz."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Establecer PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-es/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-es/strings.xml
index d351f37..b8689af 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-es/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-es/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activando el buzón de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Es posible que no recibas notificaciones de mensajes de voz hasta que se active totalmente el buzón de voz visual. Hasta ese momento, puedes llamar al buzón de voz para escuchar los mensajes nuevos."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"No se puede activar el correo de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Comprueba que el teléfono tenga cobertura e inténtalo otra vez."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Asegúrate de que tu teléfono tenga conexión a una red móvil y vuelve a intentarlo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desactiva el modo avión e inténtalo otra vez."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sin conexión"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"No recibirás notificaciones de los mensajes de voz nuevos. Si estás usando una Wi-Fi, puedes sincronizar ahora el teléfono para comprobar si hay mensajes de voz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"No recibirás notificaciones de los mensajes de voz nuevos. Si estás usando una conexión Wi-Fi, puedes sincronizar ahora el teléfono para comprobar si hay mensajes de voz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"No recibirás notificaciones de los mensajes de voz nuevos. Si quieres sincronizar tu buzón de voz, desactiva el modo avión."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Para comprobar el buzón de voz, necesitas una conexión de datos móviles en el teléfono."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Para comprobar el buzón de voz, necesitas una conexión de datos móviles en el teléfono."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"No se puede activar el correo de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Puedes llamar para comprobar el buzón de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"No se puede actualizar el correo de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Inténtalo otra vez cuando tengas mejor conexión Wi-Fi o de datos móviles. Puedes llamar para comprobar el buzón de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Inténtalo otra vez cuando tengas mejor conexión de datos móviles. Puedes llamar para comprobar el buzón de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Inténtalo otra vez cuando tengas mejor conexión Wi-Fi o de datos móviles. Puedes llamar para comprobar el buzón de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Inténtalo otra vez cuando tengas mejor conexión de datos móviles. Puedes llamar para comprobar el buzón de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"No se puede actualizar el correo de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Puedes llamar para comprobar el buzón de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"No se puede actualizar el correo de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Se ha producido un error"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Llama al servicio de Atención al cliente al <xliff:g id="NUMBER">%1$s</xliff:g> e indícales que el código de error es el 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Términos y Condiciones del buzón de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Tienes que aceptar los términos y condiciones de Verizon Wireless para usar el buzón de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDebes aceptar los términos y condiciones de Verizon Wireless para poder usar el buzón de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activar el buzón de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Si rechazas los términos y condiciones, el buzón de voz visual se quedará inhabilitado."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Inhabilitar el buzón de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Si rechazas los términos y condiciones, se inhabilitará la transcripción de mensajes de voz."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Inhabilitar la transcripción de mensajes de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Solo podrás acceder al buzón de voz llamando al *86. Configura un nuevo PIN del buzón para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Configurar el PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-et/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-et/strings.xml
index 953b36b..bf27a14 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-et/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-et/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Visuaalse kõneposti aktiveerimine"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Te ei pruugi kõneposti märguandeid saada enne, kui visuaalne kõnepost on täielikult aktiveeritud. Kuni kõnepost on täielikult aktiveeritud, helistage uute sõnumite toomiseks kõneposti."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Visuaalset kõneposti ei saa aktiveerida"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Veenduge, et teie telefonis oleks mobiilne andmeside saadaval, ja proovige uuesti."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Veenduge, et teie telefonis oleks mobiilsidevõrk saadaval, ja proovige uuesti."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Lülitage lennurežiim välja ja proovige uuesti."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ühendus puudub"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Teid ei teavitata uutest kõnepostisõnumitest. Kui kasutate WiFi-t, saate kõneposti kontrollida, kui kohe sünkroonite."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Teid ei teavitata uutest kõnepostisõnumitest. Kui kasutate WiFi-t, saate kõneposti kontrollida, kui kohe sünkroonite."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Teid ei teavitata uutest kõnepostisõnumitest. Kõneposti sünkroonimiseks lülitage lennurežiim välja."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Teie telefonis peab kõneposti kontrollimiseks olema lubatud mobiilne andmeside."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Teie telefonis peab kõneposti kontrollimiseks olema lubatud mobiilne andmesideühendus."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Visuaalset kõneposti ei saa aktiveerida"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Visuaalset kõneposti ei saa värskendada"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Proovige uuesti, kui WiFi- või mobiilne andmesideühendus on parem. Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Proovige uuesti, kui mobiilne andmesideühendus on parem. Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Proovige uuesti, kui WiFi- või mobiilne andmesideühendus on parem. Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Proovige uuesti, kui mobiilne andmesideühendus on parem. Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Visuaalset kõneposti ei saa värskendada"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Visuaalset kõneposti ei saa värskendada"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Midagi läks valesti"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Võtke ühendust klienditeenindusega numbril <xliff:g id="NUMBER">%1$s</xliff:g> ja öelge neile, et veakood on 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visuaalse kõneposti nõuded ja tingimused"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Visuaalse kõneposti kasutamiseks peate nõustuma Verizon Wirelessi nõuete ja tingimustega:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVisuaalse kõneposti kasutamiseks peate nõustuma Verizon Wirelessi nõuete ja tingimustega:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Visuaalse kõneposti sisselülitamine"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuaalne kõnepost keelatakse, kui nõuded ja tingimused tagasi lükatakse."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Visuaalse kõneposti keelamine"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Kõnepostisõnumite transkribeerimine keelatakse, kui nõuete ja tingimustega ei nõustuta."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Kõnepostisõnumite transkribeerimise keelamine"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Kõnepost on saadaval vaid siis, kui helistate numbril *86. Jätkamiseks määrake uus kõneposti PIN-kood."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN-koodi määramine"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-eu/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-eu/strings.xml
index af40192..bd9fa1c 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-eu/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-eu/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ikusizko erantzungailua aktibatzen"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"aktibatu arte, agian ez duzu jasoko erantzungailuaren jakinarazpenik. Erantzungailua guztiz aktibatuta ez dagoen artean, deitu erantzungailuari mezu berriak entzuteko."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Ezin da aktibatu ikusizko erantzungailua"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Ziurtatu telefonoak datu-konexioa duela eta saiatu berriro."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Ziurtatu telefonoak datu-konexioa duela eta saiatu berriro."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desaktibatu hegaldi modua eta saiatu berriro."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ez dago konexiorik"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Ez duzu jakinarazpenik jasoko ahots-mezu berriak dituzunean. Wi-Fi sarea erabiltzen ari bazara, orain sinkroniza dezakezu erantzungailua ahots-mezurik duzun begiratzeko."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Ez duzu jasoko jakinarazpenik ahots-mezu berriak dituzunean. Wi-Fi sarea erabiltzen ari bazara, orain sinkroniza dezakezu erantzungailua ahots-mezurik duzun begiratzeko."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Ez duzu jakinarazpenik jasoko ahots-mezu berriak dituzunean. Desaktibatu hegaldi modua erantzungailua sinkronizatzeko."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Erantzungailua egiaztatzeko, datu-konexioa behar du telefonoak."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Erantzungailua egiaztatzeko, datu-konexioa behar du telefonoak."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Ezin da aktibatu ikusizko erantzungailua"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ezin da eguneratu ikusizko erantzungailua."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Saiatu berriro Wi-Fi konexioa edo datu-mugikorrak hobeak direnean. Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Saiatu berriro datu-konexioa hobea denean. Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Saiatu berriro Wi-Fi edo datu-konexioa hobeak direnean. Bestela ere, deitu egin dezakezu erantzungailua egiaztatzeko."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Saiatu berriro datu-konexioa hobea denean. Bestela ere, deitu egin dezakezu erantzungailua egiaztatzeko."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ezin da eguneratu ikusizko erantzungailua."</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ezin da eguneratu ikusizko erantzungailua."</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Arazoren bat izan da"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Jarri harremanetan bezeroarentzako arreta-zerbitzuarekin (<xliff:g id="NUMBER">%1$s</xliff:g>) eta esan iezaiezu errore-kodea 9999 dela."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Ikusizko erantzungailuaren Zehaztapenak eta baldintzak"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Verizon Wireless zerbitzuaren zehaztapenak eta baldintzak onartu behar dituzu ikusizko erantzungailua erabiltzeko:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVerizon Wireless zerbitzuaren Zehaztapenak eta baldintzak onartu behar dituzu ikusizko erantzungailua erabiltzeko:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Aktibatu ikusizko erantzungailua"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Zehaztapenak eta baldintzak onartzen ez badituzu, desgaitu egingo da ikusizko erantzungailua."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desgaitu ikusizko erantzungailua"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Zehaztapenak eta baldintzak onartzen ez badituzu, desgaitu egingo da ahots-mezuak transkribatzeko aukera."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desgaitu ahots-mezuak transkribatzeko aukera"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Erantzungailua atzitzeko, *86 zenbakira deitu beharko duzu. Jarraitzeko, ezarri erantzungailuaren PIN kodea."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ezarri PIN kodea"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-fa/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-fa/strings.xml
index af79322..7b5b29b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-fa/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-fa/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"فعال کردن پست صوتی تصویری"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ممکن است تا زمانی که پست صوتی تصویری کاملاً فعال نشده باشد، اعلان‌های پست صوتی را دریافت نکنید. تا زمانی که پست صوتی به‌طور کامل فعال نشده است، برای بازیابی پیام‌های جدید، با پست صوتی تماس بگیرید."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"پست صوتی تصویری فعال نشد"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"بررسی کنید تلفن دارای اتصال همراه باشد و دوباره امتحان کنید."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"مطمئن شوید تلفنتان اتصال شبکه تلفن همراه دارد و دوباره امتحان کنید."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"حالت هواپیما را غیرفعال کنید و دوباره امتحان کنید."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"اتصال برقرار نیست"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"‏برای پست‌های صوتی جدید به شما اطلاع داده نمی‌شود. اگر از Wi-Fi استفاده می‌کنید، اکنون با همگام‌سازی می‌توانید پست صوتی را بررسی کنید."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"‏از پست‌های صوتی جدید مطلع نمی‌شود. اگر از Wi-Fi استفاده می‌کنید، با انجام همگام‌سازی در این لحظه، می‌توانید پست صوتی را بررسی کنید."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"برای پست‌های صوتی جدید به شما اطلاع داده نمی‌شود. حالت هواپیما را غیرفعال کنید تا پست صوتی همگام‌سازی شود."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"تلفنتان برای بررسی پست صوتی به اتصال داده همراه نیاز دارد."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"برای بررسی پست صوتی، تلفنتان باید اتصال داده همراه داشته باشد."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"پست صوتی تصویری فعال نشد"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"پست صوتی تصویری به‌روزرسانی نشد"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"‏وقتی Wi-Fi یا اتصال همراه بهتر شد دوباره امتحان کنید. همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"وقتی اتصال داده همراه بهتر شد دوباره امتحان کنید. همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"‏وقتی Wi-Fi یا اتصال داده همراه بهتر شد دوباره امتحان کنید. همچنان می‌توانید برای بررسی پست صوتی، تماس بگیرید."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"وقتی اتصال داده همراه بهتر شد دوباره امتحان کنید. همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"پست صوتی تصویری به‌روزرسانی نشد"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"پست صوتی تصویری به‌روزرسانی نشد"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"مشکلی روی داد"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"لطفاً از طریق شماره <xliff:g id="NUMBER">%1$s</xliff:g> با خدمات مشتری تماس بگیرید و این کد خطا را به آنها بگویید: ٩٩٩٩."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"شرایط و ضوابط پست صوتی دیداری"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"‏برای استفاده از پست صوتی تصویری باید  شرایط و ضوابط Verizon Wireless را بپذیرید:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"‏%1$s\n\nبرای استفاده از پست صوتی تصویری، باید با شرایط و ضوابط Verizon Wireless موافقت کنید:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"روشن کردن پست صوتی تصویری"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"اگر شرایط و ضوابط را رد کنید، پست صوتی تصویری غیرفعال می‌شود."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"غیرفعال کردن پست صوتی تصویری"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"اگر شرایط و ضوابط را رد کنید، ترانویسی پست صوتی غیرفعال خواهد شد."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"غیرفعال کردن ترانویسی پست صوتی"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"پست صوتی فقط از طریق تماس با ٨۶* قابل دسترسی است. برای ادامه، یک پین پست صوتی جدید تنظیم کنید."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"تنظیم پین"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-fi/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-fi/strings.xml
index 5416765..91ac263 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-fi/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-fi/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktivoidaan visuaalista puhelinvastaajaa."</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Et ehkä saa vastaajan ilmoituksia, ennen kuin visuaalinen puhelinvastaaja on täysin aktivoitu. Saat uudet viestit soittamalla vastaajaan."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Visuaalisen puhelinvastaajan aktivointi epäonnistui."</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Varmista, että puhelimesi mobiiliyhteys toimii, ja yritä uudelleen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Varmista, että puhelimesi mobiilidatayhteys toimii, ja yritä uudelleen."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Poista lentokonetila käytöstä ja yritä uudelleen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ei yhteyttä"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Uusista vastaajaviesteistä ei lähetetä ilmoitusta. Jos olet Wi-Fi:ssä, voit tarkistaa vastaajaviestit synkronoimalla nyt."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Uusista vastaajaviesteistä ei lähetetä ilmoitusta. Jos olet yhteydessä Wi-Fi-verkkoon, voit tarkistaa vastaajaviestit synkronoimalla nyt."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Uusista vastaajaviesteistä ei lähetetä ilmoitusta. Synkronoi vastaajaviestit poistamalla lentokonetila käytöstä."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Vastaajaviestien tarkistamista varten puhelimessasi on oltava mobiilidatayhteys."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Vastaajaviestien tarkistamista varten puhelimessasi on oltava mobiilidatayhteys."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Visuaalisen puhelinvastaajan aktivointi epäonnistui."</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Voit silti tarkistaa vastaajaviestit soittamalla."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Visuaalisen vastaajan päivitys epäonnistui."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Yritä uudelleen, kun olet Wi-Fi:ssä tai mobiiliyhteys on parempi. Voit silti tarkistaa vastaajaviestit soittamalla."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Yritä uudelleen, kun mobiilidatayhteys on parempi. Voit silti tarkistaa vastaajaviestit soittamalla."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Yritä uudelleen, kun Wi-Fi- tai mobiilidatayhteys on vahvempi. Voit edelleen tarkistaa vastaajaviestit soittamalla."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Yritä uudelleen, kun mobiilidatayhteys on vahvempi. Voit edelleen tarkistaa vastaajaviestit soittamalla."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Visuaalisen vastaajan päivitys epäonnistui."</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Voit silti tarkistaa vastaajaviestit soittamalla."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Visuaalisen vastaajan päivitys epäonnistui."</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Jokin meni vikaan"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Ota yhteys asiakastukeen numerossa <xliff:g id="NUMBER">%1$s</xliff:g> ja ilmoita virhekoodi 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visuaalisen puhelinvastaajan käyttöehdot"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Visuaalisen puhelinvastaajan käyttöä varten sinun on hyväksyttävä Verizon Wirelessin käyttöehdot:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nSinun on hyväksyttävä Verizon Wirelessin käyttöehdot, jotta voit käyttää visuaalista puhelinvastaajaa:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ota visuaalinen puhelinvastaaja käyttöön"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuaalinen puhelinvastaaja poistetaan käytöstä, jos käyttöehtoja ei hyväksytä."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Poista visuaalinen puhelinvastaaja käytöstä"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Puhelinvastaajan transkriptio poistetaan käytöstä, jos käyttöehtoja ei hyväksytä."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Poista puhelinvastaajan transkriptio käytöstä"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Vastaaja on käytettävissä vain soittamalla numeroon *86. Jatka asettamalla vastaajalle uusi PIN-koodi."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Aseta PIN-koodi"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-fr-rCA/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-fr-rCA/strings.xml
index ef88ecf..1713652 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-fr-rCA/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activation de la messagerie vocale visuelle"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Vous ne recevrez peut-être aucune notification de la messagerie vocale tant que la messagerie vocale visuelle ne sera pas complètement activée. Appelez la messagerie vocale pour récupérer de nouveaux messages jusqu\'à l\'activation complète de la messagerie vocale."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Impossible d\'activer la messagerie vocale visuelle"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Assurez-vous que votre téléphone dispose d\'une connexion cellulaire et réessayez."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Assurez-vous que votre téléphone dispose d\'une connexion réseau cellulaire et réessayez."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Désactivez le mode Avion et réessayez."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Aucune connexion"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Vous ne serez pas averti à la réception de nouveaux messages vocaux. Si vous utilisez le Wi-Fi, vous pouvez vérifier si vous avez de nouveaux messages vocaux par une synchronisation."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Vous ne recevrez pas de notification à l\'arrivée de nouveaux messages vocaux. Si vous utilisez le Wi-Fi, vous pouvez vérifier si vous avez de nouveaux messages vocaux en effectuant une synchronisation."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Vous ne serez pas averti à la réception de nouveaux messages vocaux. Désactivez le mode Avion pour synchroniser votre messagerie vocale."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Votre téléphone requiert une connexion de données cellulaire pour consulter la messagerie vocale."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Votre téléphone requiert une connexion de données mobiles pour que vous puissiez consulter la messagerie vocale."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Impossible d\'activer la messagerie vocale visuelle"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Réessayez lorsque votre connexion Wi-Fi ou cellulaire sera meilleure. Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Réessayez lorsque votre connexion cellulaire sera meilleure. Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Réessayez lorsque votre connexion Wi-Fi ou de données mobiles sera meilleure. Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Réessayez lorsque votre connexion de données mobiles sera meilleure. Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Une erreur s\'est produite"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Veuillez communiquer avec le service à la clientèle au numéro <xliff:g id="NUMBER">%1$s</xliff:g> et lui indiquer que le code d\'erreur est le 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Conditions d\'utilisation de la messagerie vocale visuelle"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Vous devez accepter les conditions d\'utilisation de Verizon Wireless pour utiliser la messagerie vocale visuelle : \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVous devez accepter les conditions d\'utilisation de Verizon Wireless pour utiliser la messagerie vocale visuelle :\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activer la messagerie vocale visuelle"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Si les conditions d\'utilisation sont refusées, la messagerie vocale visuelle sera désactivée."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Désactiver la messagerie vocale visuelle"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Si les conditions d\'utilisation sont refusées, la fonction de transcription des messages vocaux sera désactivée."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Désactiver la fonction de transcription des messages vocaux"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Pour accéder à la messagerie vocale, vous devrez composer *86. Définissez un nouveau NIP de messagerie vocale pour continuer."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Définir le NIP"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-fr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-fr/strings.xml
index eefd5ad..a75cd12 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-fr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-fr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activation de la messagerie vocale visuelle..."</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Tant que la messagerie vocale visuelle n\'est pas totalement activée, vous risquez de ne pas être averti de la réception de nouveaux messages. Appelez votre boîte vocale pour consulter ces derniers."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Impossible d\'activer la messagerie vocale visuelle"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Vérifiez que votre téléphone est bien connecté au réseau mobile, puis réessayez."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Vérifiez que votre téléphone est bien connecté au réseau mobile, puis réessayez."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Désactivez le mode Avion, puis réessayez."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Aucune connexion"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Vous ne recevrez aucune notification en cas de nouveau message vocal. Si vous êtes connecté en Wi-Fi, vous pouvez consulter votre messagerie vocale maintenant en effectuant une synchronisation."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Vous ne recevrez aucune notification en cas de nouveau message vocal. Si vous êtes connecté en Wi-Fi, vous pouvez consulter votre messagerie vocale dès à présent en effectuant une synchronisation."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Vous ne recevrez aucune notification en cas de nouveau message. Désactivez le mode Avion pour synchroniser votre messagerie vocale."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Vous devez disposer d\'une connexion de données mobiles pour consulter votre messagerie vocale."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Vous devez disposer d\'une connexion de données mobiles pour consulter votre messagerie vocale."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Impossible d\'activer la messagerie vocale visuelle"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"La consultation de votre messagerie vocale par téléphone est toujours possible."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Réessayez lorsque vous bénéficierez d\'une meilleure connexion au réseau mobile ou Wi-Fi. La consultation de votre messagerie vocale par téléphone est toujours possible."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Réessayez lorsque vous bénéficierez d\'une meilleure connexion de données mobiles. La consultation de votre messagerie vocale par téléphone est toujours possible."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Réessayez lorsque vous bénéficierez d\'une meilleure connexion au réseau mobile ou Wi-Fi. Vous pouvez tout de même consulter votre messagerie vocale par téléphone."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Réessayez lorsque vous bénéficierez d\'une meilleure connexion de données mobiles. Vous pouvez tout de même consulter votre messagerie vocale par téléphone."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"La consultation de votre messagerie vocale par téléphone est toujours possible."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Problème"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Veuillez contacter le service client au <xliff:g id="NUMBER">%1$s</xliff:g>. Le code d\'erreur à transmettre au conseiller est le 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Conditions d\'utilisation de la messagerie vocale visuelle"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Vous devez accepter les conditions d\'utilisation de Verizon Wireless pour pouvoir utiliser la messagerie vocale visuelle :\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVous devez accepter les conditions d\'utilisation de Verizon Wireless pour pouvoir utiliser la messagerie vocale virtuelle :\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activer la messagerie vocale visuelle"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Si vous refusez les conditions d\'utilisation, la messagerie vocale visuelle sera désactivée."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Désactiver la messagerie vocale visuelle"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"La transcription des messages vocaux sera désactivée en cas de refus des conditions d\'utilisation."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Désactiver la transcription des messages vocaux"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Vous ne pouvez accéder à la messagerie vocale qu\'en composant le *86. Définissez un nouveau code PIN de messagerie vocale pour continuer."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Définir un code"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-gl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-gl/strings.xml
index efd174f..4cdd5dd 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-gl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-gl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activando correo de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"É posible que non recibas notificacións do correo de voz ata que actives o correo de voz visual. Chama ao correo de voz para consultar as mensaxes novas ata que o correo de voz estea completamente activado."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Non se pode activar o correo de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Asegúrate de que o teléfono ten conexión móbil e téntao de novo."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Asegúrate de que o teu teléfono ten unha conexión de rede móbil e téntao de novo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desactiva o modo avión e téntao de novo."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sen conexión"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Non recibirás notificacións dos correos de voz novos. Se estás utilizando o sinal wifi, podes comprobar o correo de voz se o sincronizas agora."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Non recibirás notificacións dos correos de voz novos. Se estás utilizando o sinal wifi, podes comprobar o correo de voz se o sincronizas agora."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Non recibirás notificacións dos correos de voz novos. Desactiva o modo avión para sincronizar o correo de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"O teléfono necesita conexión de datos móbiles para comprobar o correo de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"O teléfono necesita conexión de datos móbiles para comprobar o correo de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Non se pode activar o correo de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Aínda podes chamar para comprobar o correo de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Non se pode actualizar o correo de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Téntao de novo cando o a conexión móbil ou wifi sexa mellor. Aínda podes chamar para comprobar o correo de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Téntao de novo cando a conexión de datos móbiles sexa mellor. Aínda podes chamar para comprobar o correo de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Téntao de novo cando o a túa conexión de datos móbiles ou wifi sexa mellor. Aínda podes chamar para comprobar o correo de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Téntao de novo cando a túa conexión de datos móbiles sexa mellor. Aínda podes chamar para comprobar o correo de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Non se pode actualizar o correo de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Aínda podes chamar para comprobar o correo de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Non se pode actualizar o correo de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Produciuse un erro"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Ponte en contacto co servizo de atención ao cliente (<xliff:g id="NUMBER">%1$s</xliff:g>) e indica o código de erro 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termos e condicións do correo de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Debes aceptar os termos e condicións de Verizon Wireless para utilizar o correo de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDebes aceptar os termos e condicións de Verizon Wireless para usar o correo de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activar correo de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Se non se aceptan os termos e condicións, desactivarase o correo de voz visual."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desactivar correo de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Se se rexeitan os termos e condicións, desactivarase a transcrición do correo de voz."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desactivar transcrición do correo de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Só poderás acceder ao correo de voz chamando ao *86. Configura un novo PIN do correo de voz para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Establecer PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-gu/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-gu/strings.xml
index 4463443..68a768b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-gu/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-gu/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"વિઝ્યુઅલ વૉઇસમેઇલ સક્રિય કરી રહ્યાં છે"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"જ્યાં સુધી વિઝ્યુઅલ વૉઇસમેઇલ સંપૂર્ણપણે સક્રિય ન થાય ત્યાં સુધી તમે વૉઇસમેઇલની સૂચનાઓ પ્રાપ્ત કરી શકશો નહીં. વૉઇસમેઇલ સંપૂર્ણપણે સક્રિય ન થાય ત્યાં સુધી નવા સંદેશા પુનઃપ્રાપ્ત કરવા માટે વૉઇસમેઇલને કૉલ કરો."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"વિઝ્યુઅલ વૉઇસમેઇલ સક્રિય કરી શકતાં નથી"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"તમારા ફોન પર સેલ્યુલર કનેક્શન હોવાની ખાતરી કરો અને ફરી પ્રયાસ કરો."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"તમારા ફોન પર મોબાઇલ નેટવર્ક કનેક્શન હોવાની ખાતરી કરો અને ફરી પ્રયાસ કરો."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"એરપ્લેન મોડ બંધ કરો અને ફરી પ્રયાસ કરો."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"કોઈ કનેક્શન નથી"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"નવી વૉઇસમેઇલ્સ માટે તમને સૂચિત કરવામાં આવશે નહીં. જો તમે Wi-Fi પર છો, તો હમણાં સમન્વયિત કરીને વૉઇસમેઇલ માટે તપાસ કરી શકો છો."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"નવા વૉઇસમેઇલ માટે તમને સૂચિત કરવામાં આવશે નહીં. જો તમે Wi-Fi પર છો, તો તમે હમણાં સમન્વયિત કરીને વૉઇસમેઇલ માટે તપાસ કરી શકો છો."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"નવી વૉઇસમેઇલ્સ માટે તમને સૂચિત કરવામાં આવશે નહીં. તમારી વૉઇસમેઇલ સમન્વયિત કરવા માટે એરપ્લેન મોડ બંધ કરો."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"વૉઇસમેઇલને તપાસવા માટે તમારા ફોનને સેલ્યુલર ડેટા કનેક્શનની જરૂર છે."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"વૉઇસમેઇલને તપાસવા માટે તમારા ફોનને મોબાઇલ ડેટા કનેક્શનની જરૂર છે."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"વિઝ્યુઅલ વૉઇસમેઇલ સક્રિય કરી શકતાં નથી"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"વિઝ્યુઅલ વૉઇસમેઇલ અપડેટ કરી શકતાં નથી"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"તમારું Wi-Fi અથવા સેલ્યુલર કનેક્શન બહેતર હોવા પર ફરી પ્રયાસ કરો. તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"તમારું સેલ્યુલર ડેટા કનેક્શન બહેતર હોવા પર ફરી પ્રયાસ કરો. તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"તમારું Wi-Fi અથવા મોબાઇલ ડેટા કનેક્શન બહેતર હોવા પર ફરી પ્રયાસ કરો. તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"તમારું મોબાઇલ ડેટા કનેક્શન બહેતર હોવા પર ફરી પ્રયાસ કરો. તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"વિઝ્યુઅલ વૉઇસમેઇલ અપડેટ કરી શકતાં નથી"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"વિઝ્યુઅલ વૉઇસમેઇલ અપડેટ કરી શકતાં નથી"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"કંઈક ખોટું થયું"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"કૃપા કરીને <xliff:g id="NUMBER">%1$s</xliff:g> પર ગ્રાહક સેવાનો સંપર્ક કરી અને તેમને ભૂલ કોડ 9999 કહો."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"વિઝ્યુઅલ વૉઇસમેઇલની શરતો અને નિયમો"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"વિઝ્યુઅલ વૉઇસમેઇલનો ઉપયોગ કરવા માટે તમારે Verizon Wireless ની શરતો અને નિયમોનો સ્વીકાર કરવો આવશ્યક છે:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nવિઝ્યુઅલ વૉઇસમેઇલનો ઉપયોગ કરવા માટે તમારે Verizon Wireless નાં નિયમો અને શરતોને સ્વીકારવી આવશ્યક છે:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"વિઝ્યુઅલ વૉઇસમેઇલ ચાલુ કરો"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"જો શરતો અને નિયમો નકારવામાં આવે છે તો વિઝ્યુઅલ વૉઇસમેઇલ અક્ષમ કરવામાં આવશે."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"વિઝ્યુઅલ વૉઇસમેઇલ અક્ષમ કરો"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"જો શરતો અને નિયમો નકારવામાં આવે તો વૉઇસમેઇલ ટ્રાંસ્ક્રિપ્શન અક્ષમ કરવામાં આવશે."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"વૉઇસમેઇલ ટ્રાંસ્ક્રિપ્શન અક્ષમ કરો"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"વૉઇસમેઇલ માત્ર *86 પર કૉલ કરીને જ ઍક્સેસ કરી શકાશે. આગળ વધવા માટે નવો વૉઇસમેઇલ PIN સેટ કરો."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN સેટ કરો"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-hi/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-hi/strings.xml
index bc9c463..0ff53f6 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-hi/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-hi/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"विज़ुअल वॉइसमेल सक्रिय किया जा रहा है"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"विज़ुअल वॉइसमेल के पूरी तरह सक्रिय होने तक हो सकता है कि आपको वॉइसमेल नोटिफ़िकेशन प्राप्त ना हों. वॉइसमेल के पूरी तरह सक्रिय होने तक नए संदेश प्राप्त करने के लिए वॉइसमेल को कॉल करें."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"विज़ुअल वॉइसमेल सक्रिय नहीं किया जा सकता"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"सुनिश्चित करें कि आपके फ़ोन में सेल्यूलर कनेक्शन है और फिर से प्रयास करें."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"सुनिश्चित करें कि आपके फ़ोन में मोबाइल नेटवर्क कनेक्शन है और दोबारा कोशिश करें."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"हवाई जहाज़ मोड बंद करें और फिर से प्रयास करें."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"कोई कनेक्शन नहीं"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"आपको नए वॉइसमेल के लिए सूचित नहीं किया जाएगा. यदि आप वाई-फ़ाई पर हैं, तो आप समन्वयित करके अभी वॉइसमेल देख सकते हैं."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"आपको नए वॉइसमेल की सूचना नहीं दी जाएगी. अगर आप Wi‑Fi का उपयोग कर रहे हैं, तो आप अभी सिंक करके वॉइसमेल देख सकते हैं."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"आपको नए वॉइसमेल के लिए सूचित नहीं किया जाएगा. अपना वॉइसमेल समन्वयित करने के लिए हवाई जहाज़ मोड बंद करें."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"वॉइसमेल देखने के लिए आपके फ़ोन में सेल्यूलर डेटा की आवश्यकता होगी."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"वॉइसमेल देखने के लिए आपके फ़ोन में मोबाइल डेटा कनेक्शन होना चाहिए."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"विज़ुअल वॉइसमेल सक्रिय नहीं किया जा सकता"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"आप वॉइसमेल देखने के लिए अभी भी कॉल कर सकते हैं."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"विज़ुअल वॉइसमेल अपडेट नहीं किया जा सकता"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"अपना वाई-फ़ाई या सेल्यूलर कनेक्शन बेहतर होने पर फिर से प्रयास करें. आप वॉइसमेल देखने के लिए अभी भी कॉल कर सकते हैं."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"अपना सेल्यूलर डेटा कनेक्शन बेहतर होने पर फिर से प्रयास करें. आप वॉइसमेल देखने के लिए अभी भी कॉल कर सकते हैं."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"आपका Wi‑Fi या मोबाइल डेटा कनेक्शन बेहतर होने पर दोबारा कोशिश करें. आप अभी भी वॉइसमेल देखने के लिए कॉल कर सकते हैं."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"आपका मोबाइल डेटा कनेक्शन बेहतर होने पर दोबारा कोशिश करें. आप अभी भी वॉइसमेल देखने के लिए कॉल कर सकते हैं."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"विज़ुअल वॉइसमेल अपडेट नहीं किया जा सकता"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"आप वॉइसमेल देखने के लिए अभी भी कॉल कर सकते हैं."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"विज़ुअल वॉइसमेल अपडेट नहीं किया जा सकता"</string>
@@ -55,7 +55,7 @@
     <string name="voicemail_action_set_pin" msgid="958510049866316228">"पिन सेट करें"</string>
     <string name="voicemail_action_retry" msgid="4450307484541052511">"पुन: प्रयास करें"</string>
     <string name="voicemail_action_turn_archive_on" msgid="6008444955560830591">"चालू करें"</string>
-    <string name="voicemail_action_dimiss" msgid="6018415798136796966">"नहीं धन्यवाद"</string>
+    <string name="voicemail_action_dimiss" msgid="6018415798136796966">"रहने दें"</string>
     <string name="voicemail_action_sync" msgid="5139315923415392787">"समन्वयित करें"</string>
     <string name="voicemail_action_call_voicemail" msgid="6701710720535556395">"वॉइसमेल को कॉल करें"</string>
     <string name="voicemail_action_call_customer_support" msgid="7698973007656462748">"ग्राहक सहायता को कॉल करें"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"कुछ गलत हुआ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"कृपया <xliff:g id="NUMBER">%1$s</xliff:g> पर ग्राहक सेवा से संपर्क करें और उन्हें बताएं कि गड़बड़ी कोड 9999 है."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"विज़ुअल वॉइसमेल नियम और शर्तें"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"विज़ुअल वॉइसमेल का उपयोग करने के लिए आपको Verizon वायरलेस के नियम और शर्तों को स्वीकार करना होगा:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nआपको विज़ुअल वॉइसमेल का उपयोग करने के लिए Verizon Wireless के नियम और शर्तों को स्वीकार करना होगा:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"विज़ुअल वॉयसमेल चालू करें"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"नियम और शर्तों को अस्वीकार किए जाने पर विज़ुअल वॉइसमेल अक्षम कर दिया जाएगा."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"विज़ुअल वॉइसमेल अक्षम करें"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"अगर नियम और शर्तों को अस्वीकार कर दिया जाता है, तो वॉइसमेंल ट्रांसक्रिप्शन अक्षम हो जाएगा."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"वॉइसमेल ट्रांसक्रिप्शन अक्षम करें"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"वॉइसमेल को केवल *86 पर कॉल करके एक्सेस किया जा सकेगा. आगे बढ़ने के लिए नया वॉइसमेल पिन सेट करें."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"पिन सेट करें"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-hr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-hr/strings.xml
index a310d59..46bee91 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-hr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-hr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiviranje vizualne govorne pošte"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Možda nećete primiti obavijesti o govornoj pošti dok se vizualna govorna pošta u potpunosti ne aktivira. Nazovite službu za govornu poštu da biste dohvatili nove poruke dok se govorna pošta u potpunosti ne aktivira."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizualna govorna pošta ne može se aktivirati"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Provjerite mobilnu vezu telefona i pokušajte ponovno."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Provjerite mobilnu vezu telefona i pokušajte ponovno."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Isključite način rada u zrakoplovu i pokušajte ponovno."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nema veze"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nećete primati obavijesti o novim govornim porukama. Ako upotrebljavate Wi-Fi mrežu, govornu poštu možete provjeriti tako da se odmah sinkronizirate."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nećete primati obavijesti o novim govornim porukama. Ako upotrebljavate Wi-Fi mrežu, govornu poštu možete provjeriti tako da se odmah sinkronizirate."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nećete primati obavijesti o novim govornim porukama. Isključite način rada u zrakoplovu da biste sinkronizirali govornu poštu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefon mora imati mobilnu podatkovnu vezu da biste provjerili govornu poštu."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefon mora imati mobilnu podatkovnu vezu da biste provjerili govornu poštu."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizualna govorna pošta ne može se aktivirati"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"I dalje možete nazvati govornu poštu i provjeriti je."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizualna govorna pošta ne može se ažurirati"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Pokušajte ponovno kad uspostavite bolju Wi-Fi ili mobilnu vezu. I dalje možete nazvati govornu poštu i provjeriti je."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Pokušajte ponovno kad uspostavite bolju mobilnu podatkovnu vezu. I dalje možete nazvati govornu poštu i provjeriti je."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Pokušajte ponovno kad uspostavite bolju Wi-Fi ili mobilnu vezu. I dalje možete nazvati govornu poštu i provjeriti je."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Pokušajte ponovno kad uspostavite bolju mobilnu podatkovnu vezu. I dalje možete nazvati govornu poštu i provjeriti je."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizualna govorna pošta ne može se ažurirati"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"I dalje možete nazvati govornu poštu i provjeriti je."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizualna govorna pošta ne može se ažurirati"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nešto je pošlo po zlu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Obratite se korisničkoj službi na broj <xliff:g id="NUMBER">%1$s</xliff:g> i recite da je kôd pogreške 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Uvjeti i odredbe za vizualnu govornu poštu"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Da biste koristili vizualnu govornu poštu morate prihvatiti uvjete i odredbe Verizon Wirelessa:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDa biste koristili vizualnu govornu poštu, morate prihvatiti uvjete i odredbe Verizon Wirelessa:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Uključivanje vizualne govorne pošte"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ako odbijete uvjete i odredbe, onemogućit ćete vizualnu govornu poštu."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Onemogući vizualnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ako odbijete uvjete i odredbe, onemogućit ćete prijepis govorne pošte."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Onemogućavanje prijepisa govorne pošte"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Govornoj pošti moći će se pristupiti samo pozivanjem broja *86. Postavite novi PIN za govornu poštu da biste nastavili."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Postavljanje PIN-a"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-hu/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-hu/strings.xml
index cc3eb7e..5d3915d 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-hu/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-hu/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Vizuális hangpostaüzenetek aktiválása"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"A vizuális hangposta teljes aktiválásáig nem feltétlenül kap értesítést a hangpostaüzenetekről. A szolgáltatás teljes aktiválásáig a hangpostát felhívva kérheti le új üzeneteit."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nem sikerült aktiválni a vizuális hangpostaüzeneteket"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Győződjön meg róla, hogy van adatkapcsolat, és próbálja újra."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Győződjön meg róla, hogy van mobil-adatkapcsolat, és próbálja újra."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Kapcsolja ki a repülős üzemmódot, és próbálja újra."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nincs kapcsolat"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nem kap értesítést az új hangpostaüzenetekről. Ha Wi-Fi-t használ, szinkronizálással lekérheti a hangpostaüzeneteket."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nem kap értesítést az új hangpostaüzenetekről. Ha Wi-Fi-t használ, szinkronizálással lekérheti a hangpostaüzeneteket."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nem kap értesítést az új hangpostaüzenetekről. Kapcsolja ki a repülős üzemmódot, és szinkronizálja a hangpostaüzeneteket."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"A hangpostaüzenetek lekéréshez adatkapcsolattal kell rendelkeznie."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"A hangpostaüzenetek lekéréshez adatkapcsolattal kell rendelkeznie."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nem sikerült aktiválni a vizuális hangpostaüzeneteket"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nem sikerült frissíteni a vizuális hangpostaüzeneteket"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Próbálja újra, amikor a Wi-Fi- vagy adatkapcsolat erősebb lesz. Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Próbálja újra, amikor az adatkapcsolat erősebb lesz. Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Próbálja újra, amikor a Wi-Fi- vagy adatkapcsolat erősebb lesz. Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Próbálja újra, amikor a mobil-adatkapcsolat erősebb lesz. Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nem sikerült frissíteni a vizuális hangpostaüzeneteket"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nem sikerült frissíteni a vizuális hangpostaüzeneteket"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Hiba történt"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Forduljon az ügyfélszolgálathoz a következő telefonszámon, és adja meg a 9999-es hibakódot: <xliff:g id="NUMBER">%1$s</xliff:g>."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"A vizuális hangposta általános szerződési feltételei"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"A vizuális hangposta használatához el kell fogadnia a Verizon Wireless általános szerződési feltételeit:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nA virtuális hangposta használatához el kell fogadnia a Verizon Wireless Általános Szerződési Feltételeit:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"A vizuális hangposta bekapcsolása"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ha nem fogadja el az általános szerződési feltételeket, letiltjuk a vizuális hangpostát."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"A vizuális hangposta letiltása"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ha nem fogadja el az általános szerződési feltételeket, letiltjuk a hangpostaüzenetek átírását."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Hangpostaüzenetek átírásának letiltása"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"A hangpostát a *86 számot tárcsázva érheti el. A folytatáshoz állítson be új PIN-kódot."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN-kód beállítása"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-hy/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-hy/strings.xml
index 4a9c2ed..60b6ce5 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-hy/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-hy/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ձայնային փոստի ցուցադրման ակտիվացում"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Ձայնային հաղորդագրությունների մասին ծանուցումներ չեք ստանա, քանի որ չեք ակտիվացրել ձայնային փոստի ցուցադրումը: Մինչ այդ, նոր հաղորդագրությունները լսելու համար զանգեք ձայնային փոստի ծառայություն:"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Չհաջողվեց ակտիվացնել ձայնային փոստի ցուցադրումը"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Համոզվեք, որ հեռախոսը միացած է բջջային ցանցին և նորից փորձեք:"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Համոզվեք, որ հեռախոսը միացած է բջջային ցանցին և նորից փորձեք:"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Անջատեք ինքնաթիռի ռեժիմը և նորից փորձեք:"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Կապ չկա"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Նոր ձայնային հաղորդագրությունների մասին ծանուցումներ չեք ստանա: Եթե միացած եք Wi-Fi-ին, կարող եք ստուգել ձայնային փոստը՝ կատարելով համաժամեցում:"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Նոր ձայնային հաղորդագրությունների մասին ծանուցումներ չեք ստանա: Եթե միացած եք Wi-Fi-ին, կարող եք ստուգել ձայնային փոստը՝ կատարելով համաժամեցում:"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Նոր ձայնային հաղորդագրությունների մասին ծանուցումներ չեք ստանա: Անջատեք ինքնաթիռի ռեժիմը՝ ձայնային փոստը համաժամեցնելու համար:"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Ձայնային փոստը ստուգելու համար ձեր հեռախոսի բջջային ինտերնետը պետք է միացած լինի:"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Ձայնային փոստը ստուգելու համար ձեր հեռախոսի բջջային ինտերնետը պետք է միացած լինի:"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Չհաջողվեց ակտիվացնել ձայնային փոստի ցուցադրումը"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Չհաջողվեց թարմացնել ձայնային փոստի ցուցադրումը"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Նորից փորձեք, երբ Wi-Fi-ը կամ բջջային կապը լավանա: Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Նորից փորձեք, երբ բջջային ինտերնետը լավանա: Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Նորից փորձեք, երբ Wi-Fi-ը կամ բջջային ինտերնետը լավանա: Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Նորից փորձեք, երբ բջջային ինտերնետը լավանա: Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Չհաջողվեց թարմացնել ձայնային փոստի ցուցադրումը"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Չհաջողվեց թարմացնել ձայնային փոստի ցուցադրումը"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Սխալ առաջացավ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"<xliff:g id="NUMBER">%1$s</xliff:g> համարով կապվեք hաճախորդների սպասարկման ծառայության հետ և հայտնեք սխալի 9999 կոդը:"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Տեսողական ձայնային փոստի օգտագործման պայմաններ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Տեսողական ձայնային փոստն օգտագործելու համար ընդունեք Verizon Wireless-ի օգտագործման պայմանները՝\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nՏեսողական ձայնային փոստն օգտագործելու համար ընդունեք Verizon Wireless-ի օգտագործման պայմանները՝\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Միացնել տեսողական ձայնային փոստը"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Եթե չընդունեք օգտագործման պայմանները, տեսողական ձայնային փոստը կանջատվի:"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Անջատել տեսողական ձայնային փոստը"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Եթե չընդունեք օգտագործման պայմանները, ձայնային փոստի տառադրումը կանջատվի:"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Անջատել ձայնային փոստի տառադրումը"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ձայնային փոստը հասանելի կլինի միայն *86 համարով: Շարունակելու համար ընտրեք ձայնային փոստի նոր PIN:"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ընտրել PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-in/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-in/strings.xml
index 948afae..eed7a37 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-in/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-in/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Mengaktifkan pesan suara visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Anda mungkin tidak menerima pemberitahuan pesan suara hingga visual pesan suara sepenuhnya diaktifkan. Panggil pesan suara untuk mengambil pesan baru hingga pesan suara sepenuhnya diaktifkan."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Tidak dapat mengaktifkan pesan suara visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Pastikan ponsel Anda memiliki koneksi seluler, lalu coba lagi."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Pastikan ponsel memiliki koneksi jaringan seluler, dan coba lagi."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Nonaktifkan mode pesawat, lalu coba lagi."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Tidak ada sambungan internet"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Anda tidak akan menerima notifikasi pesan suara baru. Jika menggunakan Wi-Fi, pesan suara dapat diperiksa dengan menyinkronkannya sekarang."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Anda tidak akan menerima notifikasi pesan suara baru. Jika menggunakan Wi-Fi, pesan suara dapat diperiksa dengan menyinkronkannya sekarang."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Anda tidak akan menerima notifikasi pesan suara baru. Nonaktifkan mode pesawat untuk menyinkronkan pesan suara."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Ponsel Anda memerlukan koneksi data seluler untuk memeriksa pesan suara."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Ponsel memerlukan koneksi data seluler untuk memeriksa pesan suara."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Tidak dapat mengaktifkan pesan suara visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Anda masih dapat menelepon untuk memeriksa pesan suara."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Tidak dapat memperbarui pesan suara visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Coba lagi ketika koneksi Wi-Fi atau seluler lebih baik. Anda masih dapat menelepon untuk memeriksa pesan suara."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Coba lagi ketika koneksi data seluler lebih baik. Anda masih dapat menelepon untuk memeriksa pesan suara."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Coba lagi ketika koneksi Wi-Fi atau data seluler lebih baik. Anda masih bisa menelepon untuk memeriksa pesan suara."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Coba lagi ketika koneksi data seluler lebih baik. Anda masih bisa menelepon untuk memeriksa pesan suara."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Tidak dapat memperbarui pesan suara visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Anda masih dapat menelepon untuk memeriksa pesan suara."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Tidak dapat memperbarui pesan suara visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Terjadi Kesalahan"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Hubungi Layanan Pelanggan melalui nomor telepon <xliff:g id="NUMBER">%1$s</xliff:g> dan beri tahukan kode kesalahan 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Persyaratan dan Ketentuan Pesan Suara Visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Anda harus menerima persyaratan dan ketentuan Verizon Wireless untuk menggunakan pesan suara visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nAnda harus menerima persyaratan dan ketentuan Verizon Wireless untuk menggunakan pesan suara visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Aktifkan Pesan Suara Visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Pesan suara visual akan dinonaktifkan jika persyaratan dan ketentuan ditolak."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Nonaktifkan pesan suara visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripsi pesan suara akan dinonaktifkan jika persyaratan dan ketentuan ditolak."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Nonaktifkan transkripsi pesan suara"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Pesan suara hanya dapat diakses dengan menghubungi *86. Setel PIN pesan suara baru untuk melanjutkan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Setel PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-is/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-is/strings.xml
index ae0497e..5965a04 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-is/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-is/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Virkjar myndrænt talhólf"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Þú getur ekki fengið tilkynningar um talhólfsskilaboð fyrr en myndrænt talhólf er virkjað að fullu. Hringdu í talhólfið til að sækja ný skilaboð þar til talhólfið hefur verið virkjað að fullu."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Ekki hægt að virkja myndrænt talhólf"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Gakktu úr skugga um að síminn sé tengdur farsímakerfi og reyndu aftur."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Gakktu úr skugga um að síminn sé tengdur farsímakerfi og reyndu aftur."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Slökktu á flugstillingu og reyndu aftur."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Engin tenging"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Þú færð ekki tilkynningu um ný talhólfsskilaboð. Ef þú ert með Wi-Fi tengingu geturðu athugað talhólfið með því að samstilla núna."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Þú færð ekki tilkynningar um ný talhólfsskilaboð. Ef þú ert með Wi-Fi tengingu geturðu athugað talhólfið með því að samstilla núna."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Þú færð ekki tilkynningu um ný talhólfsskilaboð. Slökktu á flugstillingu til að samstilla talhólfið."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Síminn þarf tengingu við farsímanet til að athuga talhólf."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Síminn þarf tengingu við farsímanet til að athuga talhólf."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Ekki hægt að virkja myndrænt talhólf"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Þú getur samt hringt til að athuga talhólfið."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ekki hægt að uppfæra sjónrænt talhólf"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Reyndu aftur þegar Wi-Fi eða farsímanettengingin þín er betri. Þú getur samt hringt til að athuga talhólfið."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Reyndu aftur þegar farsímanettengingin þín er betri. Þú getur samt hringt til að athuga talhólfið."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Reyndu aftur þegar Wi-Fi eða farsímanettengingin þín er betri. Þú getur samt hringt til að athuga talhólfið."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Reyndu aftur þegar farsímanettengingin þín er betri. Þú getur samt hringt til að athuga talhólfið."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ekki hægt að uppfæra sjónrænt talhólf"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Þú getur samt hringt til að athuga talhólfið."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ekki hægt að uppfæra sjónrænt talhólf"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Eitthvað fór úrskeiðis"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Hafðu samband við þjónustudeild í síma <xliff:g id="NUMBER">%1$s</xliff:g> og gefðu upp villukóðann 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Skilmálar myndræns talhólfs"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Þú verður að samþykkja skilmála Verizon Wireless til að geta notað myndrænt talhólf:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nÞú verður að samþykkja skilmála Verizon Wireless til að nota myndrænt talhólf:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Kveikja á myndrænu talhólfi"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Slökkt verður á myndrænu talhólfi ef skilmálum er hafnað."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Slökkva á myndrænu talhólfi"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Slökkt verður á umritun talhólfsskilaboða ef skilmálarnir eru ekki samþykktir."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Slökkva á umritun talhólfsskilaboða"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Talhólf er einungis aðgengilegt með því að hringja í *86. Stilltu nýtt PIN-númer fyrir talhólfið til að halda áfram."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Stilla PIN-númer"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-it/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-it/strings.xml
index 1df608a..0133be5 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-it/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-it/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Attivazione della lettura della segreteria"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Potresti non ricevere le notifiche dei messaggi vocali fino a che non avrai attivato completamente la funzione di lettura della segreteria. Fino ad allora, chiama la segreteria per recuperare i nuovi messaggi."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Impossibile attivare la lettura della segreteria"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Assicurati che il telefono abbia una connessione alla rete dati e riprova."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Assicurati che il telefono abbia una connessione alla rete mobile e riprova."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Disattiva la modalità aereo e riprova."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nessuna connessione"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Non riceverai notifiche per i nuovi messaggi vocali. Se sei connesso a una rete Wi-Fi, puoi consultare la segreteria effettuando subito la sincronizzazione."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Non riceverai notifiche per i nuovi messaggi vocali. Se sei connesso a una rete Wi-Fi, puoi consultare la segreteria effettuando subito la sincronizzazione."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Non riceverai notifiche per i nuovi messaggi vocali. Disattiva la modalità aereo per sincronizzare la segreteria."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Per poter consultare la segreteria, il telefono deve essere connesso a una rete dati."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Per poter consultare la segreteria, il telefono deve essere connesso a una rete mobile."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Impossibile attivare la lettura della segreteria"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Puoi ancora consultare la segreteria tramite chiamata."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Impossibile aggiornare la lettura della segreteria"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Riprova quando la connessione alla rete Wi-Fi o dati sarà migliore. Puoi ancora consultare la segreteria tramite chiamata."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Riprova quando la connessione alla rete dati sarà migliore. Puoi ancora consultare la segreteria tramite chiamata."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Riprova quando la connessione alla rete Wi-Fi o mobile sarà migliore. Puoi ancora consultare la segreteria tramite chiamata."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Riprova quando la connessione dati mobile sarà migliore. Puoi ancora consultare la segreteria tramite chiamata."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Impossibile aggiornare la lettura della segreteria"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Puoi ancora consultare la segreteria tramite chiamata."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Impossibile aggiornare la lettura della segreteria"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Si è verificato un problema"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Contatta l\'assistenza clienti al numero <xliff:g id="NUMBER">%1$s</xliff:g> indicando il seguente codice di errore: 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termini e condizioni della lettura della segreteria"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Devi accettare i termini e condizioni di Verizon Wireless per utilizzare la lettura della segreteria:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDevi accettare termini e condizioni di Verizon Wireless per utilizzare la lettura della segretaria:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Attiva la lettura della segreteria"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"La lettura della segreteria verrà disattivata se non accetti i termini e condizioni."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Disattiva la lettura della segreteria"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"La trascrizione della segreteria verrà disattivata se non accetti termini e condizioni."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Disattiva la trascrizione della segreteria"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"La segreteria sarà accessibile unicamente chiamando il numero *86. Imposta un nuovo PIN per la segreteria per procedere."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Imposta PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-iw/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-iw/strings.xml
index c05a02f..a3fce07 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-iw/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-iw/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"מפעיל את הדואר הקולי הוויזואלי"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ייתכן שלא תקבל עדכונים על הודעות חדשות בדואר הקולי עד שהדואר הקולי הוויזואלי יופעל במלואו. עד אז, תצטרך להתקשר לדואר הקולי כדי להאזין להודעות החדשות."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"לא ניתן להפעיל את הדואר הקולי הוויזואלי"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ודא שלטלפון יש חיבור לרשת סלולרית ונסה שוב."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ודא שהטלפון מחובר לרשת סלולרית ונסה שוב."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"השבת את מצב טיסה ונסה שוב."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"אין חיבור"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"‏לא תקבל עדכונים על הודעות חדשות בדואר הקולי. אם אתה משתמש בחיבור Wi-Fi, סנכרן עכשיו כדי לבדוק את הדואר הקולי."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"‏לא תקבל עדכונים על הודעות קוליות חדשות. אם אתה משתמש בחיבור Wi-Fi, סנכרן עכשיו כדי לבדוק אם יש לך הודעות קוליות."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"לא תקבל עדכונים על הודעות חדשות בדואר הקולי. השבת את מצב הטיסה כדי לסנכרן את הדואר הקולי שלך."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"כדי שתוכל לבדוק את הדואר הקולי, נדרש חיבור לנתונים סלולריים בטלפון."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"כדי לבדוק הודעות קוליות נדרש חיבור לרשת סלולרית בטלפון."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"לא ניתן להפעיל את הדואר הקולי הוויזואלי"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"עדיין תוכל להתקשר כדי לבדוק את הדואר הקולי."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"לא ניתן לעדכן את הדואר הקולי הוויזואלי"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"‏נסה שוב כשיהיה חיבור טוב יותר ל-Wi-Fi או לרשת הסלולרית. עדיין תוכל להתקשר כדי לבדוק את הדואר הקולי."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"נסה שוב כשיהיה חיבור טוב יותר לרשת הסלולרית. עדיין תוכל להתקשר כדי לבדוק את הדואר הקולי."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"‏נסה שוב כשיהיה חיבור טוב יותר ל-Wi-Fi או לרשת הסלולרית. אפשר גם להתקשר כדי לבדוק הודעות קוליות."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"נסה שוב כשיהיה חיבור טוב יותר לרשת הסלולרית. אפשר גם להתקשר כדי לבדוק הודעות קוליות."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"לא ניתן לעדכן את הדואר הקולי הוויזואלי"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"עדיין תוכל להתקשר כדי לבדוק את הדואר הקולי."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"לא ניתן לעדכן את הדואר הקולי הוויזואלי"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"משהו השתבש"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"התקשר לשירות הלקוחות בטלפון <xliff:g id="NUMBER">%1$s</xliff:g> ואמור לנציג שקוד השגיאה הוא 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"התנאים וההגבלות של הדואר הקולי הוויזואלי"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"‏עליך לקבל את התנאים וההגבלות של Verizon Wireless כדי להשתמש בדואר הקולי הוויזואלי:\n\n‎%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"‏%1$s\n\nעליך לאשר את התנאים וההגבלות של Verizon Wireless כדי להשתמש בדואר הקולי הוויזואלי:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"הפעלה של דואר קולי ויזואלי"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"‎%s‎"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"אם תדחה את התנאים וההגבלות הדואר הקולי הוויזואלי יושבת."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"השבת את הדואר הקולי הוויזואלי"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"אם התנאים וההגבלות לא יאושרו, התמלולים של ההודעות הקוליות יושבתו."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"השבתת התמלולים של ההודעות הקוליות"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"תוכל לבדוק את הדואר הקולי רק על ידי חיוג 86*. כדי להמשיך, הגדר קוד גישה חדש לדואר הקולי."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"הגדרת קוד גישה"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ja/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ja/strings.xml
index 5d47a9c..dc4bc90 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ja/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ja/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ビジュアル ボイスメールを有効化中"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ビジュアル ボイスメールの有効化が完了するまでボイスメール通知を受信できません。ボイスメールの有効化が完了するまでは、ボイスメールを呼び出して新しいメッセージを取得してください。"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ビジュアル ボイスメールを有効化できません"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"スマートフォンがモバイル ネットワークに接続済みであることを確認してから、もう一度お試しください。"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"スマートフォンがモバイル ネットワークに接続済みであることを確認してから、もう一度お試しください。"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"機内モードをオフにしてから、もう一度お試しください。"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"接続なし"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"新しいボイスメールの通知を受信できません。Wi-Fi をご利用の場合、同期してボイスメールを確認できます。"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"新しいボイスメールの通知を受信できません。Wi-Fi をご利用の場合は同期してボイスメールを確認できます。"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"新しいボイスメールの通知を受信できません。ボイスメールを同期するには機内モードをオフにしてください。"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ボイスメールを確認するには、スマートフォンでモバイルデータ接続を使用する必要があります。"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ボイスメールを確認するには、スマートフォンでモバイルデータ接続を使用する必要があります。"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ビジュアル ボイスメールを有効化できません"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ビジュアル ボイスメールを更新できません"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi かモバイルデータの接続状態が良好なときにもう一度お試しください。ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"モバイルデータの接続状態が良好なときにもう一度お試しください。ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi-Fi かモバイルデータの接続状態が良好なときにもう一度お試しください。ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"モバイルデータの接続状態が良好なときにもう一度お試しください。ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ビジュアル ボイスメールを更新できません"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ビジュアル ボイスメールを更新できません"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"エラー"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"カスタマー サービス（<xliff:g id="NUMBER">%1$s</xliff:g>）にご連絡いただき、エラーコード 9999 をお伝えください。"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ビジュアル ボイスメールの利用規約"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ビジュアル ボイスメールを利用するには Verizon Wireless の利用規約に同意していただく必要があります。\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nビジュアル ボイスメールを利用するには Verizon Wireless の利用規約に同意していただく必要があります。\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ビジュアル ボイスメールの有効化"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"利用規約に同意いただけない場合は、ビジュアル ボイスメールが無効となります。"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ビジュアル ボイスメールを無効にする"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"利用規約に同意いただけない場合は、ボイスメールの音声文字変換が無効になります。"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ボイスメールの音声文字変換を無効にする"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*86 への発信によってのみ、ボイスメールにアクセスできます。続行するには、新しいボイスメール PIN を設定してください。"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN の設定"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ka/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ka/strings.xml
index c5f6a12..f6d21b4 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ka/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ka/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ვიზუალური ხმოვანი ფოსტა აქტიურდება"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ვიზუალური ხმოვანი ფოსტის სრულად გააქტიურებამდე შეიძლება ხმოვანი ფოსტის შეტყობინებები არ მიიღოთ. დარეკეთ ხმოვან ფოსტაში, რათა მიიღოთ ახალი შეტყობინებები ხმოვანი ფოსტის ბოლომდე გააქტიურებამდე."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ვიზუალური ხმოვანი ფოსტის გააქტიურება შეუძლებელია"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"დარწმუნდით, რომ თქვენს ტელეფონს აქვს ფიჭური კავშირი და სცადეთ ხელახლა."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"დარწმუნდით, რომ თქვენს ტელეფონს აქვს მობილურ ქსელთან კავშირი და სცადეთ ხელახლა."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"გამორთეთ თვითმფრინავის რეჟიმი და სცადეთ ხელახლა."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"კავშირი არ არის"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ახალი ხმოვანი ფოსტის შესახებ არ გეცნობებათ. თუ იყენებთ Wi-Fi-ს, შეგიძლიათ ახლავე შეამოწმოთ ხმოვანი ფოსტა სინქრონიზაციის მეშვეობით."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ახალი ხმოვანი ფოსტის შესახებ შეტყობინებას არ მიიღებთ. თუ იყენებთ Wi-Fi-ს, შეგიძლიათ შეამოწმოთ ხმოვანი ფოსტა ახლავე სინქრონიზაციის მეშვეობით."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ახალი ხმოვანი ფოსტის შესახებ არ გეცნობებათ. გამორთეთ თვითმფრინავის რეჟიმი ხმოვანი ფოსტის სინქრონიზაციისთვის."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ხმოვანი ფოსტის შესამოწმებლად თქვენი ტელეფონი საჭიროებს მობილურ ინტერნეტთან კავშირს."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ხმოვანი ფოსტის შესამოწმებლად თქვენი ტელეფონი საჭიროებს მობილურ ინტერნეტთან კავშირს."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ვიზუალური ხმოვანი ფოსტის გააქტიურება შეუძლებელია"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ხმოვანი ფოსტის შესამოწმებლად დარეკვა მაინც შეგიძლიათ."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ვიზუალური ხმოვანი ფოსტის განახლება შეუძლებელია"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"სცადეთ ხელახლა, როდესაც Wi-Fi ან ფიჭური კავშირი გაუმჯობესდება. ხმოვანი ფოსტის შესამოწმებლად დარეკვა მაინც შეგიძლიათ."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"სცადეთ ხელახლა, როდესაც ფიჭური კავშირი გაუმჯობესდება. ხმოვანი ფოსტის შესამოწმებლად დარეკვა მაინც შეგიძლიათ."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"სცადეთ ხელახლა, როდესაც Wi‑Fi ან მობილურ ინტერნეტთან კავშირი გაუმჯობესდება. ხმოვანი ფოსტის შესამოწმებლად დარეკვა ახლაც შეგიძლიათ."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"სცადეთ ხელახლა, როდესაც მობილურ ინტერნეტთან კავშირი გაუმჯობესდება. ხმოვანი ფოსტის შესამოწმებლად დარეკვა ახლაც შეგიძლიათ."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ვიზუალური ხმოვანი ფოსტის განახლება შეუძლებელია"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ხმოვანი ფოსტის შესამოწმებლად დარეკვა მაინც შეგიძლიათ."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ვიზუალური ხმოვანი ფოსტის განახლება შეუძლებელია"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"მოხდა რაღაც შეცდომა"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"გთხოვთ, დაუკავშირდეთ კლიენტთა მხარდაჭერის ცენტრს ნომერზე <xliff:g id="NUMBER">%1$s</xliff:g> და უთხრათ, რომ შეცდომის კოდია 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ვიზუალური ხმოვანი ფოსტის მომსახურების პირობები"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"თქვენ უნდა დაეთანხმოთ Verizon Wireless-ის მომსახურების პირობებს, რათა გამოიყენოთ ვიზუალური ხმოვანი ფოსტა:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nვიზუალური ხმოვანი ფოსტის გამოსაყენებლად თქვენ უნდა დაეთანხმოთ Verizon Wireless-ის მომსახურების პირობებს:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ვიზუალური ხმოვანი ფოსტის ჩართვა"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"თუ მომსახურების პირობებს უარყოფთ, ვიზუალური ხმოვანი ფოსტა გამოირთვება."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ვიზუალური ხმოვანი ფოსტის გამორთვა"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"მომსახურების პირობების უარყოფის შემთხვევაში ხმოვანი ფოსტის ტრანსკრიბირება გამოირთვება."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ხმოვანი ფოსტის ტრანსკრიბირების გამორთვა"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"ხმოვანი ფოსტა ხელმისაწვდომი იქნება მხოლოდ *86-ზე დარეკვით. გასაგრძელებლად დააყენეთ ხმოვანი ფოსტის ახალი PIN-კოდი."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"დააყენეთ PIN-კოდი"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-kk/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-kk/strings.xml
index ad164c8..ed37db3 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-kk/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-kk/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Визуалды дауыстық хабарды іске қосу"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Визуалды дауыстық пошта толығымен белсендірілгенше, дауыстық пошта хабарландыруларын қабылдай алмайсыз. Дауыстық пошта толығымен белсендірілгенше, жаңа хабарлар шығарып алу үшін дауыстық поштаға қоңырау шалыңыз."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Визуалды дауыстық хабарды іске қосу мүмкін болмады"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Телефоныңыздың ұялы байланысын тексеріп, әрекетті қайталаңыз."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Телефоныңыздың мобильдік байланысын тексеріп, әрекетті қайталаңыз."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Ұшақ режимін өшіріп, әрекетті қайталаңыз."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Байланыс жоқ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Жаңа дауыстық хабарлар туралы сізге хабарланбайды. Wi-Fi байланысыңыз болса, дауыстық хабарды қазір синхрондау арқылы тексере аласыз."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Сізге жаңа дауыстық хабарлар туралы ескерту жіберілмейді. Егер Wi-Fi байланысын қолдансаңыз, қазір синхрондап, дауыстық хабарларды қазір тексеруіңізге болады."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Жаңа дауыстық хабарлар туралы сізге хабарланбайды. Дауыстық хабарды синхрондау үшін ұшақ режимін өшіріңіз."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Дауыстық хабарды тексеру үшін телефоныңызда ұялы деректер байланысы болуы керек."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Дауыстық хабарларды тексеру үшін телефоныңызда мобильдік байланыс болуы керек."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Визуалды дауыстық хабарды іске қосу мүмкін болмады"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Визуалды дауыстық хабарды жаңарту мүмкін болмады."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi немесе ұялы байланыс жақсарғанда, әрекетті қайталаңыз. Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Ұялы деректер байланысы жақсарғанда, әрекетті қайталаңыз. Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi-Fi немесе мобильдік байланыс жақсарғанда қайталап көріңіз. Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Мобильдік байланыс жақсарғанда қайталап көріңіз. Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Визуалды дауыстық хабарды жаңарту мүмкін болмады"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Визуалды дауыстық хабарды жаңарту мүмкін болмады"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Бірдеңе дұрыс болмады"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Тұтынушыларға қызмет көрсету орталығына <xliff:g id="NUMBER">%1$s</xliff:g> бойынша хабарласыңыз және қате коды 9999 екенін айтыңыз."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Визуалды дауыстық хабар функциясының шарттары мен талаптары"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Визуалды дауыстық хабар функциясын қолдану үшін Verizon Wireless шарттарын қабылдауыңыз қажет:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nВизуалды дауыстық хабар функциясын қолдану үшін Verizon Wireless шарттарын қабылдауыңыз қажет:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Visual дауыстық хабарын қосу"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Шарттары мен талаптары қабылданбаса, визуалды дауыстық хабар функциясы өшіріледі."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Визуалды дауыстық хабар функциясын өшіру"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Шарттары мен талаптары қабылданбаса, визуалды дауыстық хабар транскрипциясы өшіріледі."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Дауыстық хабар транскрипциясын өшіру"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Дауыстық хабарлар поштасына кіру *86 нөміріне қоңырау шалғанда ғана мүмкін болады. Жалғастыру үшін жаңа PIN кодын тағайындаңыз."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN кодын тағайындау"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-km/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-km/strings.xml
index f0ebf04..92731cd 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-km/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-km/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ធ្វើ​ឲ្យ​សកម្ម​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"អ្នក​ប្រហែលជា​​មិន​ទទួល​បាន​ការ​ជូនដំណឹង​ជា​សារ​សំឡេង​រហូត​​ទាល់តែ​ធ្វើ​ឲ្យ​សកម្ម​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ​ពេញលេញ​​។ ហៅ​ជា​សារ​សំឡេង​ដើម្បី​​ទទួល​បាន​សារ​ថ្មី​រហូត​សារ​ជា​សំឡេង​ត្រូវ​បាន​ធ្វើ​ឲ្យ​សកម្ម​ពេញលេញ។"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"មិន​អាច​ធ្វើ​ឲ្យ​សកម្ម​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ​បាន​ទេ"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"សូម​ប្រាកដ​ថា​ទូរសព្ទ​របស់​អ្នក​​បាន​ភ្ជាប់​​បណ្ដាញ​អ៊ីនធឺណិត និង​​ព្យាយាម​​ម្ដង​ទៀត។"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"សូមប្រាកដ​ថា ទូរសព្ទ​របស់​អ្នក​មាន​ភ្ជាប់​បណ្ដាញ​ទូរសព្ទ​ចល័ត រួច​ព្យាយាម​ម្ដង​ទៀត។"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"បិទ​របៀប​លើ​យន្តហោះ និង​ព្យាយាម​ម្ដង​ទៀត។"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"គ្មាន​បណ្ដាញ​អ៊ីនធឺណិត"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ពេល​មាន​សារ​ជា​សំឡេង​ថ្មី​នឹង​មិន​ជូន​ដំណឹង​ទៅ​អ្នក​ឡើយ។ បើ​អ្នក​​បាន​ភ្ជាប់​វ៉ាយហ្វាយ អ្នក​អាច​ឆែក​រក​មើល​សារ​ជា​សំឡេង​ដោយ​ទាញ​យក​ឥឡូវ​នេះ។"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"អ្នក​នឹង​មិន​ទទួល​បាន​ការជូនដំណឹង នៅពេល​មាន​សារ​ជា​សំឡេង​ថ្មី​ទេ។ បើ​អ្នក​​ភ្ជាប់​ទៅ Wi-Fi អ្នក​អាច​ពិនិត្យមើល​​សារ​ជា​សំឡេង​ដោយ​ធ្វើ​សមកាលកម្ម​ឥឡូវ​នេះ។"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ពេល​មាន​សារ​ជា​សំឡេង​ថ្មី​នឹង​មិន​ជូន​ដំណឹង​ទៅ​អ្នក​ឡើយ។ សូម​បិទ​របៀប​លើ​យន្តហោះ​ដើម្បី​ទាញយក​សារ​សំឡេង​របស់​អ្នក។"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ទូរសព្ទ​របស់​អ្នក​ត្រូវ​​ភ្ជាប់​អ៊ីនធឺណិតតាម​ទិន្នន័យ​ទូរសព្ទ​​​ចល័ត​ដើម្បី​អាច​ពិនិត្យ​មើល​សារ​​ជា​សំឡេង​បាន​។"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ទូរសព្ទ​របស់​អ្នក​ត្រូវ​​ភ្ជាប់​អ៊ីនធឺណិតតាម​ទិន្នន័យ​ទូរសព្ទ​​​ចល័ត​ ដើម្បី​អាច​ពិនិត្យ​មើល​សារ​​ជា​សំឡេង​បាន​។"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"មិន​អាច​ធ្វើ​ឲ្យ​សកម្ម​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ​បាន​ទេ"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"អ្នក​នៅ​តែ​អាច​ហៅ​​ទូរសព្ទ​ដើម្បី​ស្ដាប់​សារ​ជា​សំឡេង។"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"មិន​អាច​ធ្វើ​បច្ចុប្បន្នភាព​សារ​​ជា​សំឡេង​ដែល​មើល​ឃើញ​បាន​​​ទេ។"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ព្យាយាម​ម្ដង​ទៀត នៅពេល​ Wi-Fi ឬ​ការតភ្ជាប់​បណ្ដាញ​ទូរសព្ទ​ចល័ត​ប្រសើរ។ អ្នក​នៅ​តែ​អាច​ហៅ​ទូរសព្ទ​ដើម្បី​​ស្ដាប់​សារ​ជា​សំឡេង​។"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ព្យាយាម​ម្ដង​ទៀត នៅពេល​​​ការតភ្ជាប់​បណ្ដាញ​ទូរសព្ទ​ចល័ត​ប្រសើរ។ អ្នក​នៅ​តែ​អាច​ហៅ​ទូរសព្ទ​ដើម្បី​​ស្ដាប់​សារ​ជា​សំឡេង​។"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"សូមព្យាយាម​ម្ដង​ទៀត នៅពេលការតភ្ជាប់ Wi-Fi ឬ​​​ទិន្នន័យ​​ទូរសព្ទ​ចល័តរបស់អ្នក​បានប្រសើរឡើង។ អ្នក​នៅ​តែ​អាច​ហៅ​ទូរសព្ទ​ ដើម្បី​​ពិនិត្យមើល​សារ​ជា​សំឡេង​​បាន។"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"សូមព្យាយាម​ម្ដង​ទៀត នៅពេល​​​​ការតភ្ជាប់​ទិន្នន័យ​​ទូរសព្ទ​ចល័តរបស់អ្នកបាន​ប្រសើរឡើង។ អ្នក​នៅ​តែ​អាច​ហៅ​ទូរសព្ទ​ ដើម្បី​​ពិនិត្យមើលសារ​ជា​សំឡេង​បាន។"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"មិន​អាច​ធ្វើ​បច្ចុប្បន្នភាព​សារ​​ជា​សំឡេង​ដែល​មើល​ឃើញ​​បាន​ទេ។"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"អ្នក​នៅ​តែ​អាច​ហៅ​​ទូរសព្ទ​ដើម្បី​ស្ដាប់​សារ​ជា​សំឡេង។"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"មិន​អាច​ធ្វើ​បច្ចុប្បន្នភាព​សារ​​ជា​សំឡេង​ដែល​មើល​ឃើញ​បាន​​​ទេ។"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"មានអ្វីមួយមិនប្រក្រតី"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"សូម​ទាក់ទង​ផ្នែក​បម្រើ​សេវា​អតិថិជន​តាមរយៈ <xliff:g id="NUMBER">%1$s</xliff:g> និង​ប្រាប់​ពួកគេ​កូដ​មាន​បញ្ហា គឺ 9999។"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"លក្ខខណ្ឌ​ប្រើប្រាស់​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"អ្នក​ត្រូវតែ​យល់ព្រម​នឹង​​លក្ខខណ្ឌ​ប្រើប្រាស់​របស់​ Verizon Wireless ដើម្បី​អាច​ប្រើប្រាស់​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ៖\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nអ្នក​ត្រូវតែ​យល់ព្រម​នឹង​​គោលការណ៍ និង​លក្ខខណ្ឌ​របស់ Verizon Wireless ដើម្បី​ប្រើប្រាស់​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ៖\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"បើក​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"សារ​ជា​សំឡេង​ដែល​​មើល​ឃើញ​នឹង​ត្រូវ​បាន​បិទ បើ​លក្ខខណ្ឌ​ប្រើប្រាស់​ត្រូវ​បាន​បដិសេធ។"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"បិទសារជាសំឡេងដែលមើលឃើញ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ការធ្វើ​ប្រតិចារឹក​សារ​ជាសំឡេង​នឹង​ត្រូវ​បិទ ប្រសិនបើ​គោលការណ៍ និង​លក្ខខណ្ឌ​ត្រូវបាន​បដិសេធ។"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"បិទ​ការធ្វើ​ប្រតិចារឹក​សារ​ជា​សំឡេង"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"សារ​ជា​សំឡេង​នឹង​អាច​ចូល​ស្ដាប់​បាន​​ដោយ​ហៅ​ទៅ *86។ កំណត់​កូដ PIN នៃ​សារ​ជា​សំឡេង​ថ្មី ដើម្បី​ចាប់ផ្ដើម​ដំណើរការ។"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"កំណត់​កូដ PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-kn/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-kn/strings.xml
index 7840fca..2f5169a 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-kn/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-kn/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಸಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತಿದೆ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಪೂರ್ಣವಾಗಿ ಸಕ್ರಿಯಗೊಳಿಸುವವರೆಗೂ ನಿಮಗೆ ಧ್ವನಿಮೇಲ್‌ ಅಧಿಸೂಚನೆಗಳನ್ನು ಸ್ವೀಕರಿಸಲು ಸಾಧ್ಯವಾಗದೇ ಇರಬಹುದು. ಧ್ವನಿಮೇಲ್‌ಗಳು ಪೂರ್ಣವಾಗಿ ಸಕ್ರಿಯವಾಗುವವರೆಗೆ ಹೊಸ ಸಂದೇಶಗಳನ್ನು ಹಿಂಪಡೆಯಲು ಧ್ವನಿಮೇಲ್‌ನಲ್ಲಿ ಕರೆಮಾಡಿ."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ನಿಮ್ಮ ಫೋನ್‌ ಸೆಲ್ಯುಲಾರ್ ಸಂಪರ್ಕವನ್ನು ಹೊಂದಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ ಹಾಗೂ ನಂತರ ಪ್ರಯತ್ನಿಸಿ."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ನಿಮ್ಮ ಫೋನ್‌ ಮೊಬೈಲ್ ಸಂಪರ್ಕವನ್ನು ಹೊಂದಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ ಹಾಗೂ ನಂತರ ಪ್ರಯತ್ನಿಸಿ."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ಏರ್‌ಪ್ಲೇನ್ ಮೋಡ್ ಆಫ್ ಮಾಡಿ ಹಾಗೂ ನಂತರ ಪ್ರಯತ್ನಿಸಿ."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ಯಾವುದೇ ಸಂಪರ್ಕವಿಲ್ಲ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ಹೊಸ ಧ್ವನಿಮೇಲ್‌ಗಳ ಕುರಿತು ನಿಮಗೆ ಸೂಚಿಸಲಾಗುವುದಿಲ್ಲ. ನೀವು ವೈ-ಫೈನಲ್ಲಿದ್ದರೆ, ನೀವು ಈಗಲೇ ಸಿಂಕ್ ಮಾಡುವ ಮೂಲಕ ಧ್ವನಿಮೇಲ್‌ಗೆ ಪರಿಶೀಲಿಸಬಹುದು."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ಹೊಸ ಧ್ವನಿಮೇಲ್‌ಗಳ ಕುರಿತು ನಿಮಗೆ ಸೂಚಿಸಲಾಗುವುದಿಲ್ಲ. ನೀವು ವೈ-ಫೈ ನಲ್ಲಿದ್ದರೆ, ನೀವು ಈಗಲೇ ಸಿಂಕ್ ಮಾಡುವ ಮೂಲಕ ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಬಹುದು."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ಹೊಸ ಧ್ವನಿಮೇಲ್‌ಗಳ ಕುರಿತು ನಿಮಗೆ ಸೂಚಿಸಲಾಗುವುದಿಲ್ಲ. ನಿಮ್ಮ ಧ್ವನಿಮೇಲ್‌ ಸಿಂಕ್ ಮಾಡಲು ಏರ್‌ಪ್ಲೇನ್ ಮೋಡ್ ಅನ್ನು ಆಫ್ ಮಾಡಿ."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ಧ್ವನಿಮೇಲ್‌ ಅನ್ನು ಪರಿಶೀಲಿಸಲು ನಿಮ್ಮ ಫೋನ್‌‌ಗೆ ಸೆಲ್ಯುಲಾರ್ ಡೇಟಾ ಸಂಪರ್ಕ ಅಗತ್ಯವಿದೆ."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ಧ್ವನಿಮೇಲ್‌ ಅನ್ನು ಪರಿಶೀಲಿಸಲು ನಿಮ್ಮ ಫೋನ್‌‌ಗೆ ಮೊಬೈಲ್ ಡೇಟಾ ಸಂಪರ್ಕದ ಅಗತ್ಯವಿದೆ."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ನಿಮ್ಮ ವೈ-ಫೈ ಅಥವಾ ಸೆಲ್ಯುಲಾರ್ ಸಂಪರ್ಕವು ಉತ್ತಮವಾದಾಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ನಿಮ್ಮ ಸೆಲ್ಯುಲಾರ್ ಡೇಟಾ ಸಂಪರ್ಕವು ಉತ್ತಮವಾದಾಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ನಿಮ್ಮ ವೈ-ಫೈ ಅಥವಾ ಮೊಬೈಲ್ ಸಂಪರ್ಕವು ಉತ್ತಮವಾದಾಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ನಿಮ್ಮ ಮೊಬೈಲ್ ಡೇಟಾ ಸಂಪರ್ಕವು ಉತ್ತಮವಾದಾಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ಯಾವುದೋ ತಪ್ಪು ಸಂಭವಿಸಿದೆ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"ಗ್ರಾಹಕ ಸೇವೆ ಸಂಖ್ಯೆ <xliff:g id="NUMBER">%1$s</xliff:g> ಗೆ ಸಂಪರ್ಕಿಸಿ ಮತ್ತು 9999 ದೋಷದ ಕೋಡ್‌ ಅನ್ನು ಅವರಿಗೆ ತಿಳಿಸಿ."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್‌ನ ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳು"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಬಳಸಲು ವೆರಿಜೋನ್ ವೈರ್‌ಲೆಸ್‌ನ ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳನ್ನು ನೀವು ಒಪ್ಪಿಕೊಳ್ಳಬೇಕು:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಬಳಸಲು Verizon Wireless ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳನ್ನು ನೀವು ಒಪ್ಪಿಕೊಳ್ಳಬೇಕು:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಆನ್ ಮಾಡಿ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳುಗಳನ್ನು ನಿರಾಕರಿಸಿದಲ್ಲಿ ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳನ್ನು ನಿರಾಕರಿಸಿದಲ್ಲಿ ಧ್ವನಿಮೇಲ್ ಟ್ರಾನ್ಸ್‌ಕ್ರಿಪ್ಶನ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ಧ್ವನಿಮೇಲ್ ಟ್ರಾನ್ಸ್‌ಕ್ರಿಪ್ಶನ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*86 ಗ ಕರೆ ಮಾಡುವ ಮೂಲಕ ಮಾತ್ರ ಧ್ವನಿಮೇಲ್‌ಗೆ ಪ್ರವೇಶಿಸಲು ಸಾಧ್ಯ. ಮುಂದುವರೆಯಲು ಒಂದು ಹೊಸ ಧ್ವನಿಮೇಲ್ ಪಿನ್ ಹೊಂದಿಸಿ."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ಪಿನ್ ಹೊಂದಿಸಿ"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ko/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ko/strings.xml
index 092214d..00893f5 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ko/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ko/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"시각적 음성사서함 활성화 중"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"시각적 음성사서함이 완전히 활성화될 때까지 음성사서함 알림을 받지 못할 수 있습니다. 음성사서함이 완전히 활성화될 때까지 음성사서함으로 전화하여 새 메시지를 가져오세요."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"시각적 음성사서함을 활성화할 수 없음"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"휴대전화가 모바일 데이터에 연결되었는지 확인한 다음 다시 시도해 주세요."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"휴대전화가 모바일 네트워크에 연결되었는지 확인한 다음 다시 시도해 주세요."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"비행기 모드를 사용 중지한 다음 다시 시도해 주세요."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"네트워크 연결 없음"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"새로운 음성사서함에 대한 알림이 전송되지 않습니다. Wi-Fi에 연결되어 있는 경우 지금 동기화하여 음성사서함을 확인할 수 있습니다."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"새로운 음성 메시지에 관한 알림이 전송되지 않습니다. Wi-Fi에 연결되어 있는 경우 지금 동기화하여 음성사서함을 확인할 수 있습니다."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"새로운 음성사서함에 대한 알림이 전송되지 않습니다. 음성사서함을 동기화하려면 비행기 모드를 사용 중지하세요."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"음성사서함을 확인하려면 모바일 데이터에 연결되어야 합니다."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"음성사서함을 확인하려면 휴대전화가 모바일 데이터에 연결되어야 합니다."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"시각적 음성사서함을 활성화할 수 없음"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"여전히 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"시각적 음성사서함을 업데이트할 수 없음"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi 또는 모바일 데이터 연결이 개선되면 다시 시도해 주세요. 여전히 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"모바일 데이터 연결이 개선되면 다시 시도해 주세요. 여전히 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi-Fi 또는 모바일 데이터 연결이 개선되면 다시 시도해 주세요. 지금도 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"모바일 데이터 연결이 개선되면 다시 시도해 주세요. 지금도 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"시각적 음성사서함을 업데이트할 수 없음"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"여전히 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"시각적 음성사서함을 업데이트할 수 없음"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"문제 발생"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"고객 서비스 담당자(<xliff:g id="NUMBER">%1$s</xliff:g>)에게 문의하고 오류 코드가 9999임을 알려주시기 바랍니다."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"시각적 음성사서함 이용약관"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"시각적 음성사서함을 사용하려면 Verizon Wireless의 이용약관을 수락해야 합니다.\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVerizon Wireless의 이용약관에 동의한 후 시각적 음성사서함을 사용할 수 있습니다:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"시각적 음성사서함 사용"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"이용약관을 거부하는 경우 시각적 음성사서함이 사용 중지됩니다."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"시각적 음성사서함 사용 중지"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"이용약관을 거부하면 음성사서함 텍스트 변환은 사용 중지됩니다."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"음성사서함 텍스트 변환 사용 중지"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"음성사서함은 *86번으로 통화해야만 액세스가 가능합니다. 계속하려면 새 음성사서함 PIN을 설정하세요."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN 설정"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ky/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ky/strings.xml
index 0fffb06..d976cb2 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ky/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ky/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Визуалдык үн почтасын иштетүү"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Визуалдык үн почтасы толук иштетилмейинче үн почтасынын эскертмелерин ала албайсыз. Үн почтасы толугу менен иштетилгенче жаңы билдирүүлөрдү алуу үчүн үн почтасына чалыңыз."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Визуалдык үн почтасы иштебей жатат"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Телефонуңузда мобилдик байланыш бар экенин текшерип, кайра аракет кылыңыз."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Телефонуңузда мобилдик байланыш бар экенин текшерип, кайра аракет кылыңыз."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Учак режимин өчүрүп, кайра аракет кылыңыз."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Байланыш жок"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Жаңы билдирүүлөр жөнүндө эскертмелер келбейт. Эгер телефонуңуз Wi-Fi тармагына туташып турса, аны үн почтасы менен шайкештириңиз."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Жаңы билдирүүлөр жөнүндө эскертмелер келбейт. Эгер телефонуңуз Wi-Fi тармагына туташып турса, аны үн почтасы менен шайкештириңиз."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Жаңы билдирүүлөр жөнүндө эскертмелер келбейт. Учак режимин өчүрүп, телефонуңузду үн почтаңыз менен шайкештириңиз."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Үн почтаңызды текшерүү үчүн мобилдик интернетти иштетиңиз."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Үн почтаңызды текшерүү үчүн мобилдик интернетти иштетиңиз."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Визуалдык үн почтасы иштебей жатат"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Үн почтасын текшерүү үчүн атайын номерге чалсаңыз болот."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Визуалдык үн почтасы жаңырбай жатат"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi сигналы же мобилдик интернет туруктуу болгончо күтө туруп, анан кайра аракет кылыңыз. Эгер почтаны азыр текшергиңиз келсе, атайын номерге чалыңыз."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Мобилдик интернет туруктуу болгончо күтө туруп, анан кайра аракет кылыңыз. Эгер почтаны азыр текшергиңиз келсе, атайын номерге чалыңыз."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi-Fi сигналы же мобилдик интернет туруктуу болгончо күтө туруп, анан кайра аракет кылыңыз. Эгер почтаны азыр текшергиңиз келсе, атайын номерге чалыңыз."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Мобилдик интернет туруктуу болгончо күтө туруп, анан кайра аракет кылыңыз. Эгер почтаны азыр текшергиңиз келсе, атайын номерге чалыңыз."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Визуалдык үн почтасы жаңырбай жатат"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Үн почтасын текшерүү үчүн атайын номерге чалсаңыз болот."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Визуалдык үн почтасы жаңырбай жатат"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Бир жерден ката кетти"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Кардарларды колдоо кызматынын <xliff:g id="NUMBER">%1$s</xliff:g> номерине чалып, ката коду 9999 деп айтыңыз."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Визуалдык үн почтасынын колдонуу жоболору жана шарттары"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Сиз Verizon Wireless\'тин визуалдык үн почтасын колдонуу жоболору менен шарттарына макул болушуңуз керек:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nСиз Verizon Wireless\'тин визуалдык үн почтасын колдонуу жоболору менен шарттарына макул болушуңуз керек:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Визуалдык үн почтасын күйгүзүңүз"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Эгер колдонуу жоболору менен шарттары четке кагылган болсо, визуалдык үн почтасы өчүрүлөт."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Визуалдык үн почтасын өчүрүү"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Эгер колдонуу жоболору менен шарттары четке кагылган болсо, үн почтасы өчүрүлөт."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Үн почтасынын транскрипциясын өчүрүңүз"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Үн почтасын угуу үчүн *86 номерине чалыңыз. Улантуу үчүн, үн почтасына жаңы PIN-кодду коюңуз."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN-код коюу"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-lo/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-lo/strings.xml
index d6293d2..baa1a8e 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-lo/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-lo/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ກຳລັງເປີດໃຊ້ຂໍ້ຄວາມສຽງແບບພາບ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ບໍ່ສາມາດເປີດໃຊ້ຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ໃຫ້ກວດສອບເບິ່ງວ່າໂທລະສັບຂອງທ່ານເຊື່ອມຕໍ່ເຄືອຂ່າຍມືຖືແລ້ວ ຈາກນັ້ນລອງໃໝ່ອີກຄັ້ງ."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ໃຫ້ກວດສອບວ່າໂທລະສັບຂອງທ່ານມີການເຊື່ອມຕໍ່ອິນເຕີເນັດ ແລ້ວລອງໃໝ່ອີກຄັ້ງ"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ປິດໂໝດຢູ່ໃນຍົນແລ້ວລອງໃໝ່ອີກຄັ້ງ."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ບໍ່ມີການເຊື່ອມຕໍ່"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ທ່ານຈະບໍ່ໄດ້ຮັບການແຈ້ງເຕືອນເມື່ອມີຂໍ້ຄວາມສຽງໃໝ່. ຫາກທ່ານໃຊ້ Wi-Fi, ທ່ານສາມາດກວດສອບຂໍ້ຄວາມສຽງໄດ້ໂດຍການຊິ້ງຂໍ້ມູນຕອນນີ້."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ທ່ານຈະບໍ່ໄດ້ຮັບການແຈ້ງເຕືອນເມື່ອມີຂໍ້ຄວາມສຽງໃໝ່. ຫາກທ່ານໃຊ້ Wi-Fi, ທ່ານສາມາດກວດສອບຂໍ້ຄວາມສຽງໄດ້ໂດຍການຊິ້ງຂໍ້ມູນຕອນນີ້."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ທ່ານຈະບໍ່ໄດ້ຮັບການແຈ້ງເຕືອນເມື່ອມີຂໍ້ຄວາມສຽງໃໝ່. ກະລຸນາປິດໂໝດຢູ່ໃນຍົນເພື່ອຊິ້ງຂໍ້ຄວາມສຽງຂອງທ່ານ."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ໂທລະສັບຂອງທ່ານຕ້ອງມີການເຊື່ອມຕໍ່ເຄືອຂ່າຍມືຖືເພື່ອກວດສອບຂໍ້ຄວາມສຽງ."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ໂທລະສັບຂອງທ່ານຕ້ອງມີການເຊື່ອມຕໍ່ອິນເຕີເນັດມືຖືເພື່ອກວດສອບຂໍ້ຄວາມສຽງ."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ບໍ່ສາມາດເປີດໃຊ້ຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ທ່ານສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງໄດ້ຢູ່."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ບໍ່ສາມາດອັບເດດຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ໃຫ້ລອງອີກຄັ້ງເມື່ອການເຊື່ອມຕໍ່ Wi-Fi ຫຼື ເຄືອຂ່າຍມືຖືຂອງທ່ານດີຂຶ້ນ. ທ່ານຍັງຄົງສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງຂອງທ່ານໄດ້ຢູ່."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ໃຫ້ລອງອີກຄັ້ງເມື່ອການເຊື່ອມຕໍ່ເຄືອຂ່າຍມືຖືຂອງທ່ານດີຂຶ້ນ. ທ່ານຍັງຄົງສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງຂອງທ່ານໄດ້ຢູ່."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ໃຫ້ລອງໃໝ່ອີກຄັ້ງເມື່ອການເຊື່ອມຕໍ່ Wi‑Fi ຫຼື ອິນເຕີເນັດມືຖືຂອງທ່ານໄວຂຶ້ນກວ່ານີ້. ທ່ານຍັງຄົງສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງຂອງທ່ານໄດ້ຢູ່."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ໃຫ້ລອງອີກຄັ້ງເມື່ອການເຊື່ອມຕໍ່ອິນຕີເນັດມືຖືຂອງທ່ານໄວຂຶ້ນກວ່ານີ້. ທ່ານຍັງຄົງສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງຂອງທ່ານໄດ້ຢູ່."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ບໍ່ສາມາດອັບເດດຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ທ່ານສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງໄດ້ຢູ່."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ບໍ່ສາມາດອັບເດດຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ມີບາງສິ່ງຜິດປົກກະຕິເກີດຂຶ້ນ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Please contact Customer Service at <xliff:g id="NUMBER">%1$s</xliff:g> and tell them the error code is 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂຂໍ້ຄວາມສຽງສະເໝືອນ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ທ່ານຕ້ອງຍອມຮັບຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂຂອງ Verizon Wireless ເພື່ອໃຊ້ຂໍ້ຄວາມສຽງສະເໝືອນ:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nທ່ານຈະຕ້ອງຍອມຮັບຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂຂອງ Verizon Wireless ກ່ອນເພື່ອໃຊ້ຂໍ້ຄວາມສຽງສະເໝືອນ:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ເປີດໃຊ້ຂໍ້ຄວາມສຽງສະເໝືອນ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"ຂໍ້ຄວາມສຽງສະເໝືອນຈະຖືກປິດການນຳໃຊ້ຫາກປະຕິເສດຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂດັ່ງກ່າວ."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ປິດການນຳໃຊ້ຂໍ້ຄວາມສຽງສະເໝືອນ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ການຖອດຂໍ້ຄວາມສຽງຈະຖືກປິດການນຳໃຊ້ຫາກປະຕິເສດຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂ."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ປິດການນຳໃຊ້ການຖອດຂໍ້ຄວາມສຽງ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"ຂໍ້ຄວາມສຽງສາມາດເຂົ້າເຖິງໄດ້ສະເພາະການໂທຜ່ານ *86 ເທົ່ານັ້ນ. ຕັ້ງລະຫັດ PIN ຂໍ້ຄວາມສຽງໃໝ່ເພື່ອດຳເນີນການຕໍ່."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ຕັ້ງລະຫັດ PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-lt/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-lt/strings.xml
index 92f3316..08ba359 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-lt/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-lt/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Suaktyvinamas vaizdinis balso paštas"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Kol vaizdinis balso paštas nebus visiškai suaktyvintas, galite negauti balso pašto pranešimų. Jei norite gauti naujus pranešimus, kol jis nėra visiškai suaktyvintas, paskambinkite į balso paštą."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nepavyksta suaktyvinti vaizdinio balso pašto"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Įsitikinkite, kad telefone veikia korinis ryšys, ir bandykite dar kartą."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Įsitikinkite, kad telefone veikia mobilusis ryšys, ir bandykite dar kartą."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Išjunkite lėktuvo režimą ir bandykite dar kartą."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nėra ryšio"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Jums nebus pranešta apie naujus balso pašto pranešimus. Jei esate prisijungę prie „Wi-Fi“, dabar įjungę sinchronizavimą galite patikrinti, ar yra naujų balso pašto pranešimų."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Jums nebus pranešta apie naujus balso pašto pranešimus. Jei esate prisijungę prie „Wi-Fi“, dabar įjungę sinchronizavimą galite patikrinti, ar yra balso pašto pranešimų."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Jums nebus pranešta apie naujus balso pašto pranešimus. Išjunkite lėktuvo režimą, kad galėtumėte sinchronizuoti balso pašto pranešimus."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"kad galėtumėte patikrinti balso pašto pranešimus, telefone turi būti įjungti mobiliojo ryšio duomenys."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Kad galėtumėte patikrinti balso pašto pranešimus, telefone turi būti įjungti mobiliojo ryšio duomenys."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nepavyksta suaktyvinti vaizdinio balso pašto"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Vis tiek galite skambinti ir tikrinti balso pašto pranešimus."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nepavyksta atnaujinti vaizdinio balso pašto"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Bandykite dar kartą, kai „Wi-Fi“ arba mobiliųjų duomenų ryšys bus geresnis. Vis tiek galite skambinti ir tikrinti balso pašto pranešimus."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Bandykite dar kartą, kai mobiliųjų duomenų ryšys bus geresnis. Vis tiek galite skambinti ir tikrinti balso pašto pranešimus."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Bandykite dar kartą, kai „Wi-Fi“ arba mobiliųjų duomenų ryšys bus geresnis. Vis tiek galite paskambinti ir patikrinti balso pašto pranešimus."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Bandykite dar kartą, kai mobiliųjų duomenų ryšys bus geresnis. Vis tiek galite paskambinti ir patikrinti balso pašto pranešimus."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nepavyksta atnaujinti vaizdinio balso pašto"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Vis tiek galite skambinti ir tikrinti balso pašto pranešimus."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nepavyksta atnaujinti vaizdinio balso pašto"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Kažkas ne taip"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Susisiekite su klientų aptarnavimo tarnyba numeriu <xliff:g id="NUMBER">%1$s</xliff:g> ir pasakykite klaidos kodą 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vaizdinio balso pašto taisyklės ir nuostatos"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Norėdami naudoti vaizdinį balso paštą, turite sutikti su „Verizon Wireless“ taisyklėmis ir nuostatomis:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nTurite sutikti su „Verizon Wireless“ taisyklėmis ir nuostatomis, kad galėtumėte naudoti vaizdinį balso paštą:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Vaizdinio balso pašto įjungimas"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Atmetus taisykles ir nuostatas, vaizdinis balso paštas bus išjungtas."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Išjungti vaizdinį balso paštą"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Atmetus taisykles ir nuostatas, balso pašto transkribavimas bus išjungtas."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Išjungti balso pašto transkribavimą"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Balso paštas bus pasiekiamas tik paskambinus numeriu *86. Nustatykite naują balso pašto PIN kodą, kad galėtumėte tęsti."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN kodo nustatymas"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-lv/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-lv/strings.xml
index e27de6f..e5d0d80 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-lv/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-lv/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Vizuālā balss pasta aktivizēšana"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Kamēr vizuālais balss pasts nebūs pilnībā aktivizēts, iespējams, nesaņemsiet balss pasta paziņojumus. Lai izgūtu jaunus ziņojumus, kamēr balss pasts nav pilnībā aktivizēts, zvaniet balss pastam."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nevar aktivizēt vizuālo balss pastu."</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Pārbaudiet, vai tālrunim ir mobilo datu savienojums, un mēģiniet vēlreiz."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Pārbaudiet, vai tālrunim ir mobilo datu savienojums, un mēģiniet vēlreiz."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Izslēdziet lidojuma režīmu un mēģiniet vēlreiz."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nav savienojuma."</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Jums netiks paziņots par jauniem balss pasta ziņojumiem. Ja ir izveidots Wi-Fi savienojums, varat pārbaudīt balss pastu, veicot sinhronizāciju tūlīt."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Jums netiks paziņots par jauniem balss pasta ziņojumiem. Ja ir izveidots Wi-Fi savienojums, varat pārbaudīt balss pastu, tagad veicot sinhronizāciju."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Jums netiks paziņots par jauniem balss pasta ziņojumiem. Lai sinhronizētu balss pastu, izslēdziet lidojuma režīmu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Lai pārbaudītu balss pastu, tālrunim ir nepieciešams mobilo datu savienojums."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Lai pārbaudītu balss pastu, tālrunim ir nepieciešams mobilo datu savienojums."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nevar aktivizēt vizuālo balss pastu."</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nevar atjaunināt vizuālo balss pastu."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Mēģiniet vēlreiz, kad būs stiprāks Wi-Fi vai mobilo datu savienojuma signāls. Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Mēģiniet vēlreiz, kad būs stiprāks mobilo datu savienojuma signāls. Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Mēģiniet vēlreiz, kad būs spēcīgāks Wi-Fi vai mobilo datu savienojuma signāls. Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Mēģiniet vēlreiz, kad būs spēcīgāks mobilo datu savienojuma signāls. Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nevar atjaunināt vizuālo balss pastu."</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nevar atjaunināt vizuālo balss pastu."</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Radās problēma"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Lūdzu, sazinieties ar klientu apkalpošanas dienestu, izmantojot tālāk norādīto tālruņa numuru, un nosauciet kļūdas kodu “9999”: <xliff:g id="NUMBER">%1$s</xliff:g>."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vizuālā balss pasta pakalpojumu sniegšanas noteikumi"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Lai izmantotu vizuālo balss pastu, jums ir jāpiekrīt Verizon Wireless pakalpojumu sniegšanas noteikumiem:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nJums ir jāpiekrīt Verizon Wireless pakalpojumu sniegšanas noteikumiem, lai izmantotu vizuālo balss pastu:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ieslēgt vizuālo balss pastu"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ja tiks noraidīti pakalpojumu sniegšanas noteikumi, vizuālais balss pasts tiks atspējots."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Atspējot vizuālo balss pastu"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ja tiks noraidīti pakalpojumu sniegšanas noteikumi, balss pasta transkripcija tiks atspējota."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Atspējot balss pasta transkripciju"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Balss pasts būs pieejams, tikai zvanot uz numuru *86. Lai turpinātu, iestatiet jaunu balss pasta PIN."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN iestatīšana"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-mk/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-mk/strings.xml
index 3ff8b87..6ad7e19 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-mk/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-mk/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Се активира визуелна говорна пошта"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Може да не добивате известувања за говорна пошта сѐ додека говорната пошта не се активира во целост. Дотогаш, повикувајте ја говорната пошта за преслушување на новите пораки."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Не може да се активира визуелна говорна пошта"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Проверете дали телефонот има мобилна врска и обидете се повторно."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Проверете дали телефонот е поврзан на мобилна мрежа и обидете се повторно."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Исклучете го авионскиот режим и обидете се повторно."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Нема мрежа"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Нема да добивате известувања за нова говорна пошта. Ако сте поврзани на Wi-Fi, може да ја проверите говорната пошта со синхронизирање сега."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Нема да добивате известувања за нови говорни пораки. Ако сте поврзани на Wi-Fi, може да ја проверите говорната пошта со синхронизирање сега."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Нема да добивате известувања за нова говорна пошта. Исклучете го авионскиот режим за синхронизирање на говорната пошта."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"За проверување говорна пошта, телефонот треба да се поврзе на интернет."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"За проверување говорна пошта, телефонот треба да се поврзе на мобилен интернет."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Не може да се активира визуелна говорна пошта"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Сѐ уште може да повикате за да ја проверите говорната пошта"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Не може да се ажурира визуелната говорна пошта"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Обидете се повторно кога Wi-Fi или мобилната врска ќе се подобрат. Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Обидете се повторно кога ќе се подобри интернет-врската. Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Обидете се повторно кога Wi-Fi или мобилниот интернет ќе се подобрат. Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Обидете се повторно кога ќе се подобри мобилниот интернет. Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Не може да се ажурира визуелната говорна пошта"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Не може да се ажурира визуелната говорна пошта"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Нешто тргна наопаку"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Контактирајте со Грижа за корисници на <xliff:g id="NUMBER">%1$s</xliff:g> и кажете им дека кодот за грешка е 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Одредби и услови на визуелна говорна пошта"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Мора да ги прифатите Одредбите и условите на Verizon Wireless за да користите говорна пошта:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nМора да ги прифатите Одредбите и условите на Verizon Wireless за да користите визуелна говорна пошта:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Вклучи „Визуелна говорна пошта“"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ако ги одбиете Одредбите и условите, визуелната говорна пошта ќе се оневозможи."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Оневозможете визуелна говорна пошта"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ако ги одбиете Одредбите и условите, транскрипцијата на говорната пошта ќе се оневозможи."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Оневозможи транскрипција на говорна пошта"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Говорната пошта ќе биде достапна само со повикување *86. За да продолжите, поставете нов PIN на говорната пошта."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Поставете PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ml/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ml/strings.xml
index 84d221e..096b929 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ml/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ml/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"വിഷ്വൽ വോയ്‌സ്മെയിൽ സജീവമാക്കുന്നു"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ പൂർണ്ണമായും സജീവമാകുന്നത് വരെ നിങ്ങൾക്ക് വോയ്‌സ്‌മെയിൽ അറിയിപ്പുകൾ ലഭിക്കാനിടയില്ല. വോയ്‌സ്‌മെയിൽ പൂർണ്ണമായും സജീവമാകുന്നത് വരെ പുതിയ സന്ദേശങ്ങൾ വീണ്ടെടുക്കാൻ വോയ്‌സ്‌മെയിലിലേക്ക് വിളിക്കുക."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ സജീവമാക്കാനാവുന്നില്ല"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"നിങ്ങളുടെ ഫോണിന് സെല്ലുലാർ കണക്ഷനുണ്ടെന്ന് ഉറപ്പാക്കി, വീണ്ടും ശ്രമിക്കുക."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"നിങ്ങളുടെ ഫോണിന് മൊബൈൽ നെറ്റ്‌വർക്ക് കണക്ഷനുണ്ടെന്ന് ഉറപ്പാക്കിയശേഷം വീണ്ടും ശ്രമിക്കുക."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ഫ്ലൈറ്റ് മോഡ് ഓഫാക്കി, വീണ്ടും ശ്രമിക്കുക."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"കണക്ഷൻ ഇല്ല"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"പുതിയ വോയ്‌സ്‌മെയിലുകൾ വരുമ്പോൾ നിങ്ങളെ അറിയിക്കില്ല. നിങ്ങൾ Wi-Fi ഉപയോഗിക്കുകയാണെങ്കിൽ, ഇപ്പോൾ സമന്വയിപ്പിക്കുന്നതിലൂടെ വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാനാവും."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"പുതിയ വോയ്‌സ്‌മെയിലുകൾ വരുമ്പോൾ നിങ്ങളെ അറിയിക്കില്ല. നിങ്ങൾ വൈഫൈ ഉപയോഗിക്കുകയാണെങ്കിൽ, ഇപ്പോൾ സമന്വയിപ്പിക്കുന്നതിലൂടെ വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാനാവും."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"പുതിയ വോയ്‌സ്‌മെയിലുകൾ വരുമ്പോൾ നിങ്ങളെ അറിയിക്കില്ല. വോയ്‌സ്‌മെയിൽ സമന്വയിപ്പിക്കാൻ ഫ്ലൈറ്റ് മോഡ് ഓഫാക്കുക."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ നിങ്ങളുടെ ഫോണിന് ഒരു സെല്ലുലാർ ഡാറ്റ കണക്ഷൻ ആവശ്യമാണ്."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ നിങ്ങളുടെ ഫോണിന് ഒരു മൊബൈൽ ഡാറ്റ കണക്ഷൻ ആവശ്യമാണ്."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ സജീവമാക്കാനാവുന്നില്ല"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ അപ്‌ഡേറ്റുചെയ്യാനാകുന്നില്ല"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"നിങ്ങൾക്ക് മെച്ചപ്പെട്ട Wi-Fi അല്ലെങ്കിൽ സെല്ലുലാർ കണക്ഷൻ ലഭിക്കുമ്പോൾ, വീണ്ടും ശ്രമിക്കുക. വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"നിങ്ങൾക്ക് മെച്ചപ്പെട്ട സെല്ലുലാർ ഡാറ്റ കണക്ഷൻ ലഭിക്കുമ്പോൾ വീണ്ടും ശ്രമിക്കുക. വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"നിങ്ങൾക്ക് മെച്ചപ്പെട്ട വൈഫൈ അല്ലെങ്കിൽ മൊബൈൽ ഡാറ്റ കണക്ഷൻ ലഭിക്കുമ്പോൾ, വീണ്ടും ശ്രമിക്കുക. വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"നിങ്ങൾക്ക് മെച്ചപ്പെട്ട മൊബൈൽ ഡാറ്റ കണക്ഷൻ ലഭിക്കുമ്പോൾ വീണ്ടും ശ്രമിക്കുക. വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ അപ്‌ഡേറ്റുചെയ്യാനാകുന്നില്ല"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ അപ്‌ഡേറ്റുചെയ്യാനാകുന്നില്ല"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"എന്തോ കുഴപ്പം സംഭവിച്ചു"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"<xliff:g id="NUMBER">%1$s</xliff:g>-ൽ ഉപയോക്തൃ സേവനവുമായി ബന്ധപ്പെട്ട്, പിശക് കോഡ് 9999 ആണെന്ന് പറയുക."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"വിഷ്വൽ വോയ്‌സ് മെയിൽ നിബന്ധനകളും വ്യവസ്ഥകളും"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"വിഷ്വൽ വോയ്‌സ് മെയിൽ ഉപയോഗിക്കാൻ, നിങ്ങൾ Verizon Wireless-ന്റെ നിബന്ധനകളും വ്യവസ്ഥകളും അംഗീകരിക്കേണ്ടതുണ്ട്:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nവിഷ്വൽ വോയ്‌സ്‌മെയിൽ ഉപയോഗിക്കുന്നതിന് നിങ്ങൾ Verizon Wireless-ന്റെ നിബന്ധനകളും വ്യവസ്ഥകളും അംഗീകരിക്കേണ്ടതുണ്ട്:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ ഓണാക്കുക"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"നിബന്ധനകളും വ്യവസ്ഥകളും നിരസിക്കപ്പെട്ടാൽ വിഷ്വൽ വോയ്‌സ്‌ മെയിൽ പ്രവർത്തനരഹിതമാവും."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"വിഷ്വൽ വോയ്‌സ്‌‌മെയിൽ പ്രവർത്തനരഹിതമാക്കുക"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"നിബന്ധനകളും വ്യവസ്ഥകളും നിരസിക്കപ്പെടുകയാണെങ്കിൽ വിഷ്വൽ വോയ്‌സ്‌മെയിൽ ട്രാൻസ്‌ക്രിപ്‌ഷൻ പ്രവർത്തനരഹിതമാക്കും."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"വോയ്‌സ്‌മെയിൽ ട്രാൻസ്‌ക്രിപ്‌ഷൻ പ്രവർത്തനരഹിതമാക്കുക"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*86-ൽ വിളിച്ച്‌ മാത്രമേ വോയ്‌സ്‌മെയിൽ ആക്‌സസ്‌ ചെയ്യാനാവൂ. തുടരാൻ, പുതിയൊരു വോയ്‌സ്‌മെയിൽ പിൻ‌ നമ്പർ‌ സജ്ജമാക്കുക."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"പിൻ സജ്ജമാക്കുക"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-mn/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-mn/strings.xml
index 99fc29d..5d0edbb 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-mn/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-mn/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Уншиж болох дуут шууданг идэвхжүүлж байна"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Уншиж болох дуут шууданг бүрэн идэвхжүүлэхээс өмнө танд дуут шуудангийн мэдэгдэл ирэхгүй байж магадгүй. Дуут шууданг бүрэн идэвхжих хүртэл шинэ зурвас авахын тулд дуут шуудан руу залгана уу."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Уншиж болох дуут шууданг идэвхжүүлэх боломжгүй"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Утасны үүрэн холболт байгаа эсэхийг шалгаад дахин оролдоно уу."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Утасны мобайл холболт байгаа эсэхийг шалгаад дахин оролдоно уу."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Нислэгийн горимыг идэвхгүй болгоод дахин оролдоно уу."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Холболт байхгүй"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Шинэ дуут шуудангийн талаар танд мэдэгдэхгүй. Хэрэв та Wi-Fi дээр байвал одоо синк хийж дуут шуудангаа шалгана уу."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Шинэ дуут шуудангийн талаар танд мэдэгдэхгүй. Хэрэв та Wi-Fi-тай холбогдсон бол одоо синк хийж дуут шуудангаа шалгана уу."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Шинэ дуут шуудангийн талаар танд мэдэгдэхгүй. Дуут шуудангаа синк хийхийн тулд нислэгийн горимыг идэвхгүй болгоно уу."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Дуут шууданг шалгахын тулд таны утсанд үүрэн датаны холболт шаардлагатай."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Дуут шууданг шалгахын тулд таны утсанд мобайл датаны холболт шаардлагатай."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Уншиж болох дуут шууданг идэвхжүүлэх боломжгүй"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Та дуут шууданг дуудлага хийж сонсох боломжтой хэвээр байна."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Уншиж болох дуут шууданг шинэчлэх боломжгүй"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Та Wi-Fi дээр байх буюу үүрэн холболт илүү сайн үед дахин оролдоно уу. Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Таны үүрэн датаны холболт илүү сайн үед дахин оролдоно уу. Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Та Wi-Fi эсвэл мобайл холболт илүү сайн үед дахин оролдоно уу. Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Таны мобайл датаны холболт илүү сайн үед дахин оролдоно уу. Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Уншиж болох дуут шууданг шинэчлэх боломжгүй"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Уншиж болох дуут шууданг шинэчлэх боломжгүй"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ямар нэг алдаа гарлаа"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Хэрэглэгчийн үйлчилгээ <xliff:g id="NUMBER">%1$s</xliff:g> руу залгаж алдааны код 9999 гэж хэлнэ үү."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Уншиж болохуйц дуут шуудангийн нөхцөл"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Та уншиж болох дуут шууданг ашиглахын тулд Verizon Wireless-н нөхцөлийг зөвшөөрөх шаардлагатай:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nТа уншиж болох дуут шууданг ашиглахын тулд Verizon Wireless-н нөхцөлийг зөвшөөрөх шаардлагатай:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Уншиж болох дуут шууданг идэвхжүүлэх"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Нөхцөлийг зөвшөөрөхгүй бол уншиж болохуйц дуут шууданг идэвхгүй болгоно."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Уншиж болохуйц дуут шууданг идэвхгүй болгох"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Нөхцөлийг зөвшөөрөхгүй бол дуут шуудан сийрүүлэхийг идэвхгүй болгоно."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Дуут шуудан сийрүүлэхийг идэвхгүй болгох"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Дуут шууданд зөвхөн *86 руу залгаж хандах боломжтой. Үргэлжлүүлэхийн тулд шинэ дуут шуудангийн PIN тохируулна уу."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN тохируулах"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-mr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-mr/strings.xml
index 43c8bdd..b5c39e9 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-mr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-mr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"दृश्‍यमान व्हॉइसमेल सक्रिय करीत आहे"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"व्हिज्युअल व्हॉइसमेल पूर्णपणे सक्रिय होईपर्यंत आपल्याला व्हॉइसमेल सूचना प्राप्त होऊ शकत नाहीत. व्हॉइसमेल पूर्णपणे सक्रिय होईपर्यंत नवीन संदेश पुनर्प्राप्त करण्यासाठी व्हॉइसमेल बोलवा."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"दृश्‍यमान व्हॉइसमेल सक्रिय करू शकत नाही"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"आपल्‍या फोनवर सेल्युलर कनेक्‍शन असल्याची खात्री करा आणि पुन्हा प्रयत्न करा."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"आपल्या फोनमध्‍ये मोबाइल नेटवर्क कनेक्शन आहे याची खात्री करा आणि पुन्हा प्रयत्न करा."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"विमान मोड बंद करा आणि पुन्हा प्रयत्न करा."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"कोणतेही कनेक्शन नाही"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"आपल्याला नवीन व्हॉइसमेलसाठी सूचित केले जाणार नाही. आपण वाय-फाय वर असल्यास आपण आता संकालित करून व्हॉइसमेलसाठी तपासू शकता."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"आपल्याला नवीन व्हॉइसमेलसाठी सूचित केले जाणार नाही. आपण वाय-फाय वर असल्यास, आपण आता संकालित करून व्हॉइसमेल तपासू शकता."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"आपल्याला नवीन व्हॉइसमेलसाठी सूचित केले जाणार नाही. आपला व्हॉइसमेल संकालित करण्यासाठी विमान मोड बंद करा."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"व्हॉइसमेल तपासण्यासाठी आपल्या फोनला सेल्युलर डेटा कनेक्शनची आवश्यकता आहे."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"व्हॉइसमेल तपासण्यासाठी आपल्या फोनसाठी मोबाइल डेटा कनेक्शनची आवश्यकता आहे."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"दृश्‍यमान व्हॉइसमेल सक्रिय करू शकत नाही"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"आपण व्हॉइसमेल तपासण्यासाठी अद्याप कॉल करू शकता."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"दृश्यमान व्हॉइसमेल अद्यतनित करू शकत नाही"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"आपले वाय-फाय किंवा सेल्युलर कनेक्शन चांगले असताना पुन्हा प्रयत्न करा. आपण अद्याप व्हॉइसमेल तपासण्यासाठी कॉल करू शकता."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"आपले सेल्युलर डेटा कनेक्शन चांगले असताना पुन्हा प्रयत्न करा. आपण अद्याप व्हॉइसमेल तपासण्यासाठी कॉल करू शकता."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"आपले वाय‑फाय किंवा मोबाइल डेटा कनेक्शन चांगले असताना पुन्हा प्रयत्न करा. आपण व्हॉइसमेल तपासण्‍यासाठी अद्याप कॉल करू शकता."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"आपले मोबाइल डेटा कनेक्शन चांगले असताना पुन्हा प्रयत्न करा. आपण  व्हॉइसमेल तपासण्यासाठी अद्याप कॉल करू शकता."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"दृश्यमान व्हॉइसमेल अद्यतनित करू शकत नाही"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"आपण व्हॉइसमेल तपासण्यासाठी अद्याप कॉल करू शकता."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"दृश्यमान व्हॉइसमेल अद्यतनित करू शकत नाही"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"काहीतरी चूक झाली."</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"ग्राहक सेवा संपर्काशी <xliff:g id="NUMBER">%1$s</xliff:g> येथे संपर्क साधाा आणि त्यांना त्रुटी कोड 9999 सांगा."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"व्हिज्युअल व्हॉइसमेल अटी आणि नियम"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"आपण व्हिज्युअल व्हॉइसमेल वापरण्यासाठी Verizon वायरलेसच्या अटी आणि नियम स्वीकारणे आवश्यक आहे: \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nव्हिज्युअल व्हॉइसेमल वापरण्‍यासाठी आपण Verizon Wireless च्या अटी आणि नियम स्वीकारणे  आवश्‍यक आहे:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"व्हिज्युअल व्हॉइसमेल चालू करा"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"अटी आणि नियम नाकारल्या गेल्यास व्हिज्युअल व्हॉइसमेल अक्षम केले जाईल."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"व्हिज्युअल व्हॉइसमेल अक्षम करा"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"अटी आणि नियम नाकारल्यास व्हॉइसमेल प्रतिलेखन अक्षम केले जाईल."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"व्हॉइसमेल प्रतिलेखन अक्षम करा"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"व्हॉइसमेल केवळ *86 वर कॉल करून प्रवेश करण्यायोग्य असेल. सुरू ठेवण्यासाठी नवीन व्हॉइसमेल पिन सेट करा."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"पिन सेट करा"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ms/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ms/strings.xml
index c8b70d5..210e478 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ms/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ms/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Mengaktifkan mel suara visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Anda mungkin tidak menerima pemberitahuan mel suara sehingga mel suara visual diaktifkan sepenuhnya. Panggil mel suara untuk mengambil mesej baharu sehingga mel suara diaktifkan sepenuhnya."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Tidak dapat mengaktifkan mel suara visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Pastikan telefon anda mempunyai sambungan selular, kemudian cuba lagi."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Pastikan telefon anda mempunyai sambungan rangkaian mudah alih, kemudian cuba lagi."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Matikan mod pesawat, kemudian cuba lagi."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Tiada sambungan"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Anda tidak akan dimaklumkan tentang mel suara baharu. Jika anda menggunakan Wi-Fi, anda boleh menyemak mel suara dengan menyegerak sekarang."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Anda tidak akan dimaklumi tentang mel suara baharu. Jika anda menggunakan Wi-Fi, anda boleh menyemak mel suara dengan menyegerak sekarang."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Anda tidak akan diberitahu tentang mel suara baharu. Matikan mod pesawat untuk menyegerakkan mel suara anda."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefon anda memerlukan sambungan data selular untuk menyemak mel suara."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefon anda memerlukan sambungan data mudah alih untuk menyemak mel suara."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Tidak dapat mengaktifkan mel suara visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Tidak dapat mengemas kini mel suara visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Cuba lagi apabila sambungan Wi-Fi atau selular anda lebih bagus. Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Cuba lagi apabila sambungan data selular anda lebih bagus. Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Cuba lagi apabila sambungan Wi-Fi atau data mudah alih anda lebih bagus. Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Cuba lagi apabila sambungan data mudah alih anda lebih bagus. Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Tidak dapat mengemas kini mel suara visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Tidak dapat mengemas kini mel suara visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Berlaku Kesilapan"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Sila hubungi Khidmat Pelanggan melalui <xliff:g id="NUMBER">%1$s</xliff:g> dan beritahu mereka kod ralatnya ialah 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Terma dan Syarat Mel Suara Visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Anda mesti menerima terma dan syarat Verizon Wireless untuk menggunakan mel suara visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nAnda mesti menerima terma dan syarat Verizon Wireless untuk menggunakan mel suara:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Hidupkan Mel Suara Visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Mel suara visual akan dilumpuhkan jika terma dan syarat ditolak."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Lumpuhkan mel suara visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripsi mel suara akan dilumpuhkan jika terma dan syarat ditolak."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Lumpuhkan transkripsi mel suara"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Mel suara hanya dapat diakses dengan memanggil *86. Tetapkan PIN mel suara baharu untuk meneruskan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Tetapkan PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-my/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-my/strings.xml
index 686d37d..7f10cb2 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-my/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-my/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"မြင်နိုင်သောအသံမေးလ်ကို ဖွင့်နေသည်"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"မြင်ရသောအသံမေးလ်ကို အပြည့်အဝစမဖွင့်သရွေ့ အသံမေးလ်အကြောင်းကြားချက်များကို လက်ခံရရှိနိုင်မည်မဟုတ်ပါ။ အသံမေးလ်ကို အပြည့်အဝစဖွင့်မပြီးမချင်း မက်ဆေ့ဂျ်အသစ်များရယူရန် အသံမေးလ်ခေါ်ဆိုပါ။"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"မြင်ရသောအသံမေးလ်ကို ဖွင့်၍မရပါ"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"သင့်ဖုန်းတွင် ဆယ်လူလာချိတ်ဆက်မှုရှိကြောင်း စစ်ဆေး၍ ထပ်စမ်းကြည့်ပါ။"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"သင့်ဖုန်းတွင် မိုဘိုင်းကွန်ရက် ချိတ်ဆက်မှုရှိကြောင်း စစ်ဆေး၍ ထပ်စမ်းကြည့်ပါ။"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"လေယာဉ်ပျံမုဒ်ပိတ်၍ ထပ်စမ်းကြည့်ပါ။"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ချိတ်ဆက်မှုမရှိပါ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"အသံမေးလ်အသစ်များအတွက် သင့်ကို အကြောင်းကြားလိမ့်မည်မဟုတ်ပါ။ Wi-Fi သုံးနေပါက ယခုပင် ပြိုင်တူညှိခြင်းဖြင့် အသံမေးလ်ကို စစ်ဆေးနိုင်ပါသည်။"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"အသံမေးလ်အသစ်များအတွက် သင့်ကို အကြောင်းကြားလိမ့်မည်မဟုတ်ပါ။ Wi-Fi သုံးနေပါက ယခုပင် စင့်ခ်လုပ်ခြင်းဖြင့် အသံမေးလ်ကို စစ်ဆေးနိုင်ပါသည်။"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"အသံမေးလ်အသစ်များအတွက် သင့်ကို အကြောင်းကြားလိမ့်မည်မဟုတ်ပါ။ သင့်အသံမေးလ်ပြိုင်တူညှိရန် လေယာဉ်ပျံမုဒ်ပိတ်ပါ။"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"အသံမေးလ်စစ်ရန်အတွက် သင့်ဖုန်းတွင် ဆယ်လူလာဒေတာချိတ်ဆက်မှုတစ်ခု လိုပါသည်။"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"အသံမေးလ်စစ်ရန်အတွက် သင့်ဖုန်းတွင် မိုဘိုင်းဒေတာချိတ်ဆက်မှုတစ်ခု လိုပါသည်။"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"မြင်ရသောအသံမေးလ် ဖွင့်၍မရပါ"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"မြင်ရသောအသံမေးလ်ကို အပ်ဒိတ်လုပ်၍မရပါ"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"သင်၏ Wi-Fi (သို့) ဆယ်လူလာချိတ်ဆက်မှု လိုင်းပိုကောင်းမှ ထပ်စမ်းကြည့်ပါ။ အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"သင်၏ဆယ်လူလာချိတ်ဆက်မှု လိုင်းပိုကောင်းမှ ထပ်စမ်းကြည့်ပါ။ အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"သင်၏ Wi-Fi (သို့) မိုဘိုင်းဒေတာချိတ်ဆက်မှု လိုင်းပိုကောင်းမှ ထပ်စမ်းကြည့်ပါ။ အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"သင်၏ မိုဘိုင်းဒေတာ ချိတ်ဆက်မှု လိုင်းပိုကောင်းမှ ထပ်စမ်းကြည့်ပါ။ အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"မြင်ရသောအသံမေးလ်ကို အပ်ဒိတ်လုပ်၍မရပါ"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"မြင်ရသောအသံမေးလ်ကို အပ်ဒိတ်လုပ်၍မရပါ"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"တစ်စုံတစ်ခု လွဲချော်နေပါသည်"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"သုံးစွဲသူဝန်ဆောင်ရေးကို <xliff:g id="NUMBER">%1$s</xliff:g> တွင် ဆက်သွယ်ပြီး အမှားအယွင်းကုဒ်သည် ၉၉၉၉ ဖြစ်ကြောင်း ပြောပါ။"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"မြင်နိုင်သောအသံမေးလ် ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"သင်သည် မြင်နိုင်သောအသံမေးလ်ကို အသုံးပြုရန် Verizon Wireless ၏ ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများကို လက်ခံရပါမည် - \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nစာသားမှတ်တမ်းပါ အသံမေးလ်ကို အသုံးပြုရန် Verizon ကြိုးမဲ့စနစ်၏ ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများကို လက်ခံရပါမည် - \n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"စာသားမှတ်တမ်းပါ အသံမေးလ်ဖွင့်ခြင်း"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများကို ငြင်းပယ်ပါက မြင်နိုင်သောအသံမေးလ်ကို ပိတ်ပစ်ပါလိမ့်မည်။"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"မြင်နိုင်သောအသံမေးလ် ပိတ်ပါ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများကို ငြင်းပယ်ပါက အသံမေးလ် စာသားမှတ်တမ်းများကို ပိတ်ပစ်ပါလိမ့်မည်။"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"အသံမေးလ် စာသားမှတ်တမ်းကို ပိတ်ရန်"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*၈၆ သို့ ခေါ်ဆိုခြင်းဖြင့်သာ အသံမေးလ်ကို ဝင်သုံးနိုင်ပါမည်။ ဆက်သွားရန် အသံမေးလ်ပင်နံပါတ်အသစ်ကို သတ်မှတ်ပါ။"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ပင်နံပါတ်ကို သတ်မှတ်ပါ"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-nb/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-nb/strings.xml
index 6fc7561..9e64ee7 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-nb/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-nb/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Slår på visuell talepostkasse"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Det er ikke sikert at du kan motta talepostvarsler før visuell talepost er fullt aktivert. Ring talepost for å hente nye meldinger før aktiveringen er fullført."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Kan ikke slå på visuell talepost"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Sjekk at telefonen din har mobilforbindelse og prøv igjen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Sjekk at telefonen din har mobilforbindelse, og prøv på nytt."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Slå av flymodus og prøv igjen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ingen tilkobling"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du blir ikke varslet om nye talemeldinger. Hvis du er på Wi-Fi, kan du sjekke taleposten ved å synkronisere nå."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du blir ikke varslet om nye talemeldinger. Hvis du er på Wi-Fi, kan du sjekke taleposten ved å synkronisere nå."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du blir ikke varslet om nye talemeldinger. Slå av flymodus for å synkronisere talepost."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefonen din trenger mobildatatilkobling for å kunne sjekke talepost."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonen må ha mobildataforbindelse for at du skal kunne sjekke talepost."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Kan ikke slå på visuell talepost"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Kan ikke oppdatere visuell talepost"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Prøv igjen når Wi-Fi- eller mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Prøv igjen når mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Prøv på nytt når Wi‑Fi- eller mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Prøv igjen når mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Kan ikke oppdatere visuell talepost"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Kan ikke oppdatere visuell talepost"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Noe gikk galt"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakt kundeservice på <xliff:g id="NUMBER">%1$s</xliff:g> og referer til feilkode 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vilkår for visuell talepost"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du må godta vilkårene til Verizon Wireless før du kan ta i bruk visuell talepost:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu må godta Verizon Wireless sine vilkår for å kunne bruke visuell talepost:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Slå på visuell talepost"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuell talepost blir slått av hvis vilkårene ikke godtas."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Slå av visuell talepost"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripsjon av talepost blir slått av hvis vilkårene blir avvist."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Slå av transkripsjon av talepost"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Talemeldinger er bare tilgjengelig ved å ringe *86. Angi en ny PIN-kode for å fortsette."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Angi PIN-kode"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ne/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ne/strings.xml
index ff06fa0..08741f2 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ne/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ne/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"भिजुअल भ्वाइसमेललाई सक्रिय पार्दै"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"भिजुअल भ्वाइसमेल पूर्णतया सक्रिय नभएसम्म तपाईँलाई भ्वाइसमेलका सूचनाहरू प्राप्त नहुन सक्छन्। भ्वाइसमेल पूर्णतया सक्रिय नहुन्जेल नयाँ सन्देशहरू प्राप्त गर्न भ्वाइसमेल सेवामा कल गर्नुहोस्।"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"भिजुअल भ्वाइस मेललाई सक्रिय पार्न सकिँदैन"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"आफ्नो फोन सेलुलरमा जडान भएको छ भन्ने निश्चित गर्नुहोस् र फेरि प्रयास गर्नुहोस्।"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"आफ्नो फोन मोबाइल नेटवर्कमा जडान भएको छ भन्ने निश्चित गर्नुहोस् र फेरि प्रयास गर्नुहोस्।"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"हवाइजहाज मोड बन्द गर्नुहोस् र फेरि प्रयास गर्नुहोस्।"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"जडान छैन"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"तपाईंलाई नयाँ भ्वाइस मेल सम्बन्धी सूचना दिइने छैन। तपाईं Wi-Fi चलाउँदै हुनुहुन्छ भने, अब सिङ्क गरी भ्वाइस मेल जाँच गर्न सक्नुहुन्छ।"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"तपाईंलाई नयाँ भ्वाइस मेल सम्बन्धी सूचना दिइने छैन। तपाईं Wi-Fi चलाउँदै हुनुहुन्छ भने, अब सिङ्क गरी भ्वाइस मेल जाँच गर्न सक्नुहुन्छ।"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"तपाईंलाई नयाँ भ्वाइस मेल सम्बन्धी सूचना दिइने छैन। आफ्नो भ्वाइस मेल सिङ्क गर्न हवाइजहाज मोड बन्द गर्नुहोस्।"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"भ्वाइस मेल जाँच गर्न तपाईंको फोन सेलुलर डेटामा जडान हुनु आवश्यक हुन्छ।"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"भ्वाइस मेल जाँच गर्न तपाईंको फोन मोबाइल डेटामा जडान हुनु आवश्यक हुन्छ।"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"भिजुअल भ्वाइस मेललाई सक्रिय गर्न सकिँदैन"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"तपाईं अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"भिजुअल भ्वाइस मेल अद्यावधिक गर्न सकिँदैन"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"तपाईंको Wi-Fi वा सेलुलर जडान राम्रो भएका बेला पुन: प्रयास गर्नुहोस्। तपाईं अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"तपाईंको Wi-Fi वा सेलुलर जडान अझ राम्रो भएका बेला पुन: प्रयास गर्नुहोस्। तपाईं अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"तपाईंको Wi-Fi वा मोबाइल जडान राम्रो भएका बेला पुन: प्रयास गर्नुहोस्। तपाईंले अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"तपाईंको मोबाइल डेटा जडान अझ राम्रो भएका बेला पुन: प्रयास गर्नुहोस्। तपाईंले अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"भिजुअल भ्वाइस मेल अद्यावधिक गर्न सकिँदैन"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"तपाईं अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"भिजुअल भ्वाइस मेल अद्यावधिक गर्न सकिँदैन"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"केही गडबड भयो"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"कृपया <xliff:g id="NUMBER">%1$s</xliff:g> मा ग्राहक सेवामा सम्पर्क गर्नुहोस् र तिनीहरूलाई त्रुटिको कोड ९९९९ हो भनी बताउनुहोस्।"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"भिजुअल भ्वाइस मेल सम्बन्धी सेवाका सर्तहरू"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"भिजुअल भ्वाइस मेल प्रयोग गर्नका लागि तपाईंले अनिवार्य रूपले Verizon Wireless का सेवाका सर्तहरू स्वीकार गर्नुपर्छ:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\n भिजुअल भ्वाइस मेल प्रयोग गर्नका लागि तपाईंले अनिवार्य रूपले Verizon Wireless का सेवाका सर्तहरू स्वीकार गर्नुपर्छ:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"भिजुअल भ्वाइस मेल सक्रिय गर्नुहोस्"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"सेवाका सर्तहरू अस्वीकार गरिएमा भिजुअल भ्वाइस मेल असक्षम पारिने छ।"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"भिजुअल भ्वाइस मेल असक्षम पार्नुहोस्"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"सेवाका सर्तहरू अस्वीकार गरिएमा भिजुअल ट्रान्स्क्रिप्सनलाई असक्षम पारिने छ।"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"भ्वाइस मेल ट्रान्स्क्रिप्सन असक्षम पार्नुहोस्"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*८६ मा कल गरेर मात्र भ्वाइस मेलमाथि पहुँच राख्न सकिने छ। अघि बढ्न भ्वाइस मेलको नयाँ PIN सेट गर्नुहोस्।"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN सेट गर्नुहोस्"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-nl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-nl/strings.xml
index f74a37d..a5e7d54 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-nl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-nl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Visuele voicemail activeren"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Je ontvangt mogelijk geen voicemailmeldingen totdat visuele voicemail volledig is geactiveerd. Bel je voicemail om nieuwe berichten op te halen totdat visuele voicemail volledig is geactiveerd."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Kan visuele voicemail niet activeren"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Zorg dat je telefoon een mobiele verbinding heeft en probeer het opnieuw."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Zorg dat je telefoon een mobiele netwerkverbinding heeft en probeer het opnieuw."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Schakel de vliegtuigmodus uit en probeer het opnieuw."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Geen verbinding"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Je ontvangt geen meldingen voor nieuwe voicemails. Als je wifi gebruikt, kun je je voicemail controleren door nu te synchroniseren."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Je ontvangt geen meldingen voor nieuwe voicemails. Als je wifi gebruikt, kun je je voicemail controleren door nu te synchroniseren."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Je ontvangt geen meldingen voor nieuwe voicemails. Schakel de vliegtuigmodus uit om je voicemail te synchroniseren."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Je telefoon heeft een mobiele dataverbinding nodig om je voicemail te controleren."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Je telefoon heeft een mobiele dataverbinding nodig om je voicemail te controleren."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Kan visuele voicemail niet activeren"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Je kunt nog steeds bellen om je voicemail te controleren."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Kan visuele voicemail niet updaten"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Probeer het opnieuw als er een betere wifi- of mobiele verbinding beschikbaar is. Je kunt nog steeds bellen om je voicemail controleren."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Probeer het opnieuw wanneer er een betere mobiele dataverbinding beschikbaar is. Je kunt nog steeds bellen om je voicemail te controleren."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Probeer het opnieuw als er een betere wifi- of mobiele dataverbinding beschikbaar is. Je kunt nog steeds bellen om je voicemail te controleren."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Probeer het opnieuw wanneer er een betere mobiele dataverbinding beschikbaar is. Je kunt nog steeds bellen om je voicemail te controleren."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Kan visuele voicemail niet updaten"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Je kunt nog steeds bellen om je voicemail te controleren."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Kan visuele voicemail niet updaten"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Er is iets misgegaan"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Neem via <xliff:g id="NUMBER">%1$s</xliff:g> contact op met de klantenservice en geef de foutcode 9999 door."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Algemene voorwaarden voor visuele voicemail"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Je moet de Algemene voorwaarden van Verizon accepteren om visuele voicemail te gebruiken:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nJe moet de Algemene voorwaarden van Verizon Wireless accepteren om visuele voicemail te kunnen gebruiken:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Visuele voicemail inschakelen"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuele voicemail wordt uitgeschakeld als de Algemene voorwaarden worden geweigerd."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Visuele voicemail uitschakelen"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Voicemail-transcriptie wordt uitgeschakeld als de Algemene voorwaarden worden geweigerd."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Voicemail-transcriptie uitschakelen"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Voicemail is alleen toegankelijk door *86 te bellen. Stel een nieuwe pincode voor de voicemail in om door te gaan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Pincode instellen"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-no/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-no/strings.xml
index 6fc7561..9e64ee7 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-no/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-no/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Slår på visuell talepostkasse"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Det er ikke sikert at du kan motta talepostvarsler før visuell talepost er fullt aktivert. Ring talepost for å hente nye meldinger før aktiveringen er fullført."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Kan ikke slå på visuell talepost"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Sjekk at telefonen din har mobilforbindelse og prøv igjen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Sjekk at telefonen din har mobilforbindelse, og prøv på nytt."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Slå av flymodus og prøv igjen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ingen tilkobling"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du blir ikke varslet om nye talemeldinger. Hvis du er på Wi-Fi, kan du sjekke taleposten ved å synkronisere nå."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du blir ikke varslet om nye talemeldinger. Hvis du er på Wi-Fi, kan du sjekke taleposten ved å synkronisere nå."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du blir ikke varslet om nye talemeldinger. Slå av flymodus for å synkronisere talepost."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefonen din trenger mobildatatilkobling for å kunne sjekke talepost."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonen må ha mobildataforbindelse for at du skal kunne sjekke talepost."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Kan ikke slå på visuell talepost"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Kan ikke oppdatere visuell talepost"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Prøv igjen når Wi-Fi- eller mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Prøv igjen når mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Prøv på nytt når Wi‑Fi- eller mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Prøv igjen når mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Kan ikke oppdatere visuell talepost"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Kan ikke oppdatere visuell talepost"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Noe gikk galt"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakt kundeservice på <xliff:g id="NUMBER">%1$s</xliff:g> og referer til feilkode 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vilkår for visuell talepost"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du må godta vilkårene til Verizon Wireless før du kan ta i bruk visuell talepost:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu må godta Verizon Wireless sine vilkår for å kunne bruke visuell talepost:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Slå på visuell talepost"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuell talepost blir slått av hvis vilkårene ikke godtas."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Slå av visuell talepost"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripsjon av talepost blir slått av hvis vilkårene blir avvist."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Slå av transkripsjon av talepost"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Talemeldinger er bare tilgjengelig ved å ringe *86. Angi en ny PIN-kode for å fortsette."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Angi PIN-kode"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pa/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pa/strings.xml
index 2a07b45..93302b0 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pa/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pa/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਕਿਰਿਆਸ਼ੀਲ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ਜਦੋਂ ਤੱਕ ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਪੂਰੀ ਤਰ੍ਹਾਂ ਕਿਰਿਆਸ਼ੀਲ ਨਹੀਂ ਹੋ ਜਾਂਦੀ, ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਨੂੰ ਵੌਇਸਮੇਲ ਸੂਚਨਾਵਾਂ ਪ੍ਰਾਪਤ ਨਾ ਹੋਣ। ਵੌਇਸਮੇਲ ਦੇ ਪੂਰੀ ਤਰ੍ਹਾਂ ਕਿਰਿਆਸ਼ੀਲ ਹੋਣ ਤੱਕ ਨਵੇਂ ਸੁਨੇਹੇ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਵੌਇਸਮੇਲ ਨੂੰ ਕਾਲ ਕਰੋ।"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਕਿਰਿਆਸ਼ੀਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਹਾਡੇ ਫ਼ੋਨ ਵਿੱਚ ਸੈਲਿਊਲਰ ਕਨੈਕਸ਼ਨ ਹੈ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਹਾਡੇ ਫ਼ੋਨ \'ਤੇ ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਕਨੈਕਸ਼ਨ ਹੈ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ਹਵਾਈ ਜਹਾਜ਼ ਮੋਡ ਬੰਦ ਕਰੋ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ਕੋਈ ਕਨੈਕਸ਼ਨ ਨਹੀਂ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ਤੁਹਾਨੂੰ ਨਵੀਆਂ ਵੌਇਸਮੇਲਾਂ ਲਈ ਸੂਚਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਜੇਕਰ ਤੁਸੀਂ Wi-Fi \'ਤੇ ਹੋ, ਤਾਂ ਹੁਣੇ ਸਮਕਾਲੀਕਰਨ ਕਰਨ ਦੁਆਰਾ ਵੌਇਸਮੇਲਾਂ ਦੀ ਜਾਂਚ ਕਰ ਸਕਦੇ ਹੋ।"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ਤੁਹਾਨੂੰ ਨਵੀਆਂ ਵੌਇਸਮੇਲਾਂ ਲਈ ਸੂਚਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਜੇਕਰ ਤੁਸੀਂ Wi-Fi \'ਤੇ ਹੋ, ਤਾਂ ਹੁਣੇ ਸਮਕਾਲੀਕਰਨ ਕਰਕੇ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰ ਸਕਦੇ ਹੋ।"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ਤੁਹਾਨੂੰ ਨਵੀਆਂ ਵੌਇਸਮੇਲਾਂ ਲਈ ਸੂਚਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਆਪਣੀਆਂ ਵੌਇਸਮੇਲਾਂ ਸਮਕਾਲੀਕਿਰਤ ਕਰਨ ਲਈ ਹਵਾਈ ਜਹਾਜ਼ ਮੋਡ ਬੰਦ ਕਰੋ।"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ਵੌਇਸਮੇਲਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਤੁਹਾਡੇ ਫ਼ੋਨ ਨੂੰ ਇੱਕ ਸੈਲਿਊਲਰ ਕਨੈਕਸ਼ਨ ਦੀ ਲੋੜ ਹੈ।"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਤੁਹਾਡੇ ਫ਼ੋਨ ਨੂੰ ਇੱਕ ਸੈਲਿਊਲਰ ਕਨੈਕਸ਼ਨ ਦੀ ਲੋੜ ਹੈ।"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਕਿਰਿਆਸ਼ੀਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ਤੁਹਾਡੇ Wi-Fi ਜਾਂ ਸੈਲਿਊਲਰ ਕਨੈਕਸ਼ਨ ਦੇ ਬਿਹਤਰ ਹੋਣ \'ਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ਤੁਹਾਡੇ ਸੈਲਿਊਲਰ ਡੈਟਾ ਕਨੈਕਸ਼ਨ ਦੇ ਬਿਹਤਰ ਹੋਣ \'ਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ਤੁਹਾਡੇ Wi-Fi ਜਾਂ ਮੋਬਾਈਲ ਡੈਟਾ ਕਨੈਕਸ਼ਨ ਦੇ ਬਿਹਤਰ ਹੋਣ \'ਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ਤੁਹਾਡੇ ਮੋਬਾਈਲ ਡੈਟਾ ਕਨੈਕਸ਼ਨ ਦੇ ਬਿਹਤਰ ਹੋਣ \'ਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ਕੁਝ ਗਲਤ ਹੋ ਗਿਆ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"ਕਿਰਪਾ ਕਰਕੇ <xliff:g id="NUMBER">%1$s</xliff:g> \'ਤੇ ਗਾਹਕ ਸੇਵਾ ਨੂੰ ਸੰਪਰਕ ਕਰੋ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਦੱਸੋ ਕਿ ਗੜਬੜ ਕੋਡ 9999 ਹੈ।"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ਵਿਜੁਅਲ ਵੌਇਸਮੇਲ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਵਰਤਣ ਲਈ ਤੁਸੀਂ ਲਾਜ਼ਮੀ ਤੌਰ \'ਤੇ Verizon ਵਾਇਰਲੈੱਸ ਦੀਆਂ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ ਨੂੰ ਸਵੀਕਾਰ ਕਰੋ:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nਦ੍ਰਿਸ਼ਟਾਂਤਕ ਵੌਇਸਮੇਲ ਨੂੰ ਵਰਤਣ ਲਈ ਤੁਸੀਂ ਲਾਜ਼ਮੀ ਤੌਰ \'ਤੇ Verizon ਵਾਇਰਲੈੱਸ ਦੀਆਂ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ ਨੂੰ ਸਵੀਕਾਰ ਕਰੋ:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ਦ੍ਰਿਸ਼ਟਾਂਤਕ ਵੌਇਸਮੇਲ ਨੂੰ ਚਾਲੂ ਕਰੋ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਅਯੋਗ ਹੋ ਜਾਵੇਗੀ ਜੇਕਰ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ ਨੂੰ ਅਸਵੀਕਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਅਯੋਗ ਬਣਾਓ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ਵੌਇਸਮੇਲ ਪ੍ਰਤਿਲਿਪੀ ਅਯੋਗ ਹੋ ਜਾਵੇਗੀ ਜੇਕਰ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ ਨੂੰ ਅਸਵੀਕਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ਵੌਇਸਮੇਲ ਪ੍ਰਤਿਲਿਪੀ ਨੂੰ ਅਯੋਗ ਬਣਾਓ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"ਵੌਇਸਮੇਲ ਸਿਰਫ਼ *86 \'ਤੇ ਕਾਲ ਕਰਨ ਦੁਆਰਾ ਪਹੁੰਚਯੋਗ ਹੋਵੇਗੀ। ਜਾਰੀ ਰੱਖਣ ਲਈ ਇੱਕ ਨਵਾਂ ਵੌਇਸਮੇਲ PIN ਸੈੱਟ ਕਰੋ।"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN ਸੈੱਟ ਕਰੋ"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pl/strings.xml
index b122908..18b0902 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktywuję wizualną pocztę głosową"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Powiadomienia poczty głosowej mogą być dostępne dopiero po pełnej aktywacji wizualnej poczty głosowej. Do tego momentu nowe wiadomości możesz pobierać, dzwoniąc na pocztę głosową."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nie udało się aktywować wizualnej poczty głosowej"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Upewnij się, że telefon ma połączenie z internetem, i spróbuj jeszcze raz."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Upewnij się, że telefon ma połączenie z siecią komórkową, i spróbuj jeszcze raz."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Wyłącz tryb samolotowy i spróbuj jeszcze raz."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Brak połączenia"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nie otrzymasz powiadomień o nowych wiadomościach głosowych. Jeśli masz połączenie Wi-Fi, możesz teraz sprawdzić dostępność nowych wiadomości przez zsynchronizowanie urządzenia."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nie otrzymasz powiadomień o nowych wiadomościach głosowych. Jeśli masz połączenie Wi-Fi, możesz teraz sprawdzić dostępność nowych wiadomości przez zsynchronizowanie urządzenia."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nie otrzymasz powiadomień o nowych wiadomościach głosowych. Wyłącz tryb samolotowy, aby zsynchronizować pocztę głosową."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Aby sprawdzić pocztę głosową, telefon musi mieć połączenie z internetem."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Aby sprawdzić pocztę głosową, telefon musi mieć połączenie z internetem."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nie udało się aktywować wizualnej poczty głosowej"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nie udało się zaktualizować wizualnej poczty głosowej"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Spróbuj jeszcze raz, gdy znajdziesz lepszy zasięg sieci komórkowej lub Wi-Fi. Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Spróbuj jeszcze raz, gdy znajdziesz lepszy zasięg sieci komórkowej. Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Spróbuj jeszcze raz, gdy znajdziesz lepszy zasięg sieci komórkowej lub Wi-Fi. Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Spróbuj jeszcze raz, gdy znajdziesz lepszy zasięg sieci komórkowej. Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nie udało się zaktualizować wizualnej poczty głosowej"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nie udało się zaktualizować wizualnej poczty głosowej"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Coś poszło nie tak"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Skontaktuj się z obsługą klienta pod numerem <xliff:g id="NUMBER">%1$s</xliff:g>, podając kod błędu 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Warunki korzystania z wizualnej poczty głosowej"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Aby korzystać z wizualnej poczty głosowej, musisz zaakceptować warunki operatora Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nAby korzystać z wizualnej poczty głosowej, musisz zaakceptować warunki operatora Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Włącz wizualną pocztę głosową"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Jeśli odrzucisz warunki korzystania z usługi, wizualna poczta głosowa zostanie wyłączona."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Wyłącz wizualną pocztę głosową"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Jeśli odrzucisz warunki korzystania z usługi, transkrypcja wiadomości w poczcie głosowej zostanie wyłączona."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Wyłącz transkrypcję wiadomości w poczcie głosowej"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Poczta głosowa będzie dostępna tylko przez połączenie telefoniczne z numerem *86. Ustaw nowy kod PIN poczty głosowej, aby przejść dalej."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ustaw kod PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pt-rBR/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pt-rBR/strings.xml
index bbe9340..ce2b4ee 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pt-rBR/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ativando correio de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Talvez você não receba notificações do correio de voz até que o correio de voz visual esteja totalmente ativado. Enquanto isso não acontecer, ligue para o correio de voz para receber as novas mensagens."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Não foi possível ativar o correio de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Verifique se seu smartphone tem uma conexão celular e tente novamente."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Verifique se seu smartphone tem uma conexão por rede móvel e tente novamente."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desative o modo avião e tente novamente."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sem conexão"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Você não será notificado sobre novos correios de voz. Se estiver usando Wi-Fi, sincronize agora para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Você não será notificado sobre novos correios de voz. Se estiver usando Wi-Fi, sincronize agora para verificar o correio de voz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Você não será notificado sobre novos correios de voz. Desative o modo avião para sincronizar seu correio de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Seu smartphone precisa de uma conexão de dados da rede celular para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Seu smartphone precisa de uma conexão de dados móveis para verificar o correio de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Não foi possível ativar o correio de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Não foi possível atualizar o correio de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Tente novamente quando estiver com uma conexão celular ou Wi-Fi melhor. Você ainda pode ligar para verificar o correio de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Tente novamente quando estiver com uma conexão de dados da rede celular melhor. Você ainda pode ligar para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Tente novamente quando estiver com uma conexão de dados móveis ou Wi‑Fi melhor. Você ainda pode ligar para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Tente novamente quando estiver com uma conexão de dados móveis melhor. Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Não foi possível atualizar o correio de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Não foi possível atualizar o correio de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ocorreu um erro"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Entre em contato com o atendimento ao cliente pelo número <xliff:g id="NUMBER">%1$s</xliff:g> e forneça o código de erro 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termos e Condições do correio de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Você precisa aceitar os termos e condições da Verizon Wireless para usar o correio de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVocê precisa aceitar os Termos e Condições da Verizon Wireless para usar o correio de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ativar correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"O correio de voz visual será desativado se os termos e condições forem recusados."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desativar correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"A transcrição do correio de voz será desativada se os Temos e Condições forem recusados."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desativar transcrição do correio de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"O correio de voz só estará acessível quando você ligar para *86. Defina um novo PIN do correio de voz para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Definir PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pt-rPT/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pt-rPT/strings.xml
index 364b278..3b8ba1b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pt-rPT/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"A ativar o correio de voz visual..."</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Poderá não receber notificações de correio de voz até o correio de voz visual estar completamente ativado. Ligue para o correio de voz para obter novas mensagens até o correio de voz estar completamente ativado."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Não é possível ativar o correio de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Certifique-se de que o seu telemóvel tem uma ligação de rede móvel e tente novamente."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Certifique-se de que o seu telemóvel tem uma ligação de rede móvel e tente novamente."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desative o modo de avião e tente novamente."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sem ligação"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Não será notificado quando receber novas mensagens de correio de voz. Se estiver numa ligação Wi-Fi, pode verificar se existem mensagens de correio de voz ao sincronizar agora."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Não será notificado quando receber novas mensagens de correio de voz. Se estiver numa ligação Wi-Fi, pode verificar se existem mensagens de correio de voz ao sincronizar agora."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Não será notificado quando receber novas mensagens de correio de voz. Desative o modo de avião para sincronizar as suas mensagens de correio de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"O seu telemóvel precisa de uma ligação de dados móveis para verificar se existem mensagens de correio de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"O seu telemóvel precisa de uma ligação de dados móveis para verificar se existem mensagens de correio de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Não é possível ativar o correio de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Não é possível atualizar as mensagens de correio de voz visuais"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Tente novamente quando a sua ligação Wi-Fi ou de rede móvel for mais forte. Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Tente novamente quando a sua ligação de rede móvel for mais forte. Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Tente novamente quando a sua ligação Wi-Fi ou de dados móveis for mais forte. Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Tente novamente quando a sua ligação de dados móveis for mais forte. Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Não é possível atualizar as mensagens de correio de voz visuais"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Não é possível atualizar as mensagens de correio de voz visuais"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ocorreu um erro"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Contacte o serviço de apoio ao cliente através do número <xliff:g id="NUMBER">%1$s</xliff:g> e indique que o código de erro é 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termos de Utilização do Correio de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Tem de aceitar os Termos de Utilização da Verizon Wireless para utilizar o correio de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nTem de aceitar os Termos de Utilização da Verizon Wireless para utilizar o correio de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ativar o correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"O correio de voz visual será desativado se tiver recusado os Termos de Utilização."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desativar o correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"A transcrição das mensagens de correio de voz será desativada se tiver recusado os Termos de Utilização."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desativar a transcrição das mensagens de correio de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"O correio de voz está apenas disponível ao ligar para *86. Defina um novo PIN do correio de voz para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Definir PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pt/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pt/strings.xml
index bbe9340..ce2b4ee 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pt/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pt/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ativando correio de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Talvez você não receba notificações do correio de voz até que o correio de voz visual esteja totalmente ativado. Enquanto isso não acontecer, ligue para o correio de voz para receber as novas mensagens."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Não foi possível ativar o correio de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Verifique se seu smartphone tem uma conexão celular e tente novamente."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Verifique se seu smartphone tem uma conexão por rede móvel e tente novamente."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desative o modo avião e tente novamente."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sem conexão"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Você não será notificado sobre novos correios de voz. Se estiver usando Wi-Fi, sincronize agora para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Você não será notificado sobre novos correios de voz. Se estiver usando Wi-Fi, sincronize agora para verificar o correio de voz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Você não será notificado sobre novos correios de voz. Desative o modo avião para sincronizar seu correio de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Seu smartphone precisa de uma conexão de dados da rede celular para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Seu smartphone precisa de uma conexão de dados móveis para verificar o correio de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Não foi possível ativar o correio de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Não foi possível atualizar o correio de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Tente novamente quando estiver com uma conexão celular ou Wi-Fi melhor. Você ainda pode ligar para verificar o correio de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Tente novamente quando estiver com uma conexão de dados da rede celular melhor. Você ainda pode ligar para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Tente novamente quando estiver com uma conexão de dados móveis ou Wi‑Fi melhor. Você ainda pode ligar para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Tente novamente quando estiver com uma conexão de dados móveis melhor. Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Não foi possível atualizar o correio de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Não foi possível atualizar o correio de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ocorreu um erro"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Entre em contato com o atendimento ao cliente pelo número <xliff:g id="NUMBER">%1$s</xliff:g> e forneça o código de erro 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termos e Condições do correio de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Você precisa aceitar os termos e condições da Verizon Wireless para usar o correio de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVocê precisa aceitar os Termos e Condições da Verizon Wireless para usar o correio de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ativar correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"O correio de voz visual será desativado se os termos e condições forem recusados."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desativar correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"A transcrição do correio de voz será desativada se os Temos e Condições forem recusados."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desativar transcrição do correio de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"O correio de voz só estará acessível quando você ligar para *86. Defina um novo PIN do correio de voz para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Definir PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ro/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ro/strings.xml
index 263ab00..046df48 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ro/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ro/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Se activează mesageria vocală vizuală"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"E posibil să nu primiți notificări de la mesageria vocală până când mesageria vocală vizuală nu este activată complet. Apelați mesageria vocală pentru a prelua mesajele noi până la activarea completă a mesageriei."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nu se poate activa mesagerie vocală vizuală"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Asigurați-vă că telefonul are conexiune mobilă și încercați din nou."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Asigurați-vă că telefonul are o conexiune la o rețea mobilă și încercați din nou."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Dezactivați modul avion și încercați din nou."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nicio conexiune"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nu veți primi notificări pentru mesaje vocale noi. Dacă folosiți Wi-Fi, puteți verifica mesageria sincronizând acum."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nu veți primi notificări pentru mesaje vocale noi. Dacă folosiți Wi-Fi, puteți verifica mesageria sincronizând acum."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nu veți primi notificări pentru mesajele vocale noi. Dezactivați modul avion pentru a vă sincroniza mesageria."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefonul dvs. are nevoie de conexiune mobilă pentru a verifica mesageria vocală."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonul dvs. are nevoie de conexiune mobilă pentru a verifica mesageria vocală."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nu se poate activa mesagerie vocală vizuală"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nu se poate actualiza mesageria vocală vizuală"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Încercați din nou când aveți o conexiune Wi-Fi sau mobilă mai bună. Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Încercați din nou când aveți o conexiune mobilă mai bună. Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Încercați din nou când aveți o conexiune Wi-Fi sau mobilă mai bună. Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Încercați din nou când aveți o conexiune mobilă mai bună. Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nu se poate actualiza mesageria vocală vizuală"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nu se poate actualiza mesageria vocală vizuală"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"A apărut o eroare"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Contactați Serviciul de asistență pentru clienți la <xliff:g id="NUMBER">%1$s</xliff:g> și comunicați-le codul erorii: 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termeni și condiții pentru mesageria vocală vizuală"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Trebuie să acceptați termenii și condițiile Verizon Wireless pentru a folosi mesageria vocală vizuală:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nTrebuie să acceptați Termenii și condițiile Verizon Wireless pentru a folosi mesageria vocală vizuală:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activați Mesageria vocală vizuală"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Mesageria vocală vizuală va fi dezactivată dacă nu acceptați termenii și condițiile."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Dezactivați mesageria vocală vizuală"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transcrierea mesajelor vocale va fi dezactivată dacă termenii și condițiile sunt refuzate."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Dezactivați transcrierea mesajelor vocale"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Mesageria vocală va fi accesibilă numai apelând *86. Setați un cod PIN nou pentru mesageria vocală pentru a continua."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Setați codul PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ru/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ru/strings.xml
index 1989f26..4994b46 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ru/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ru/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Включение просмотра голосовой почты"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Вы не будете получать оповещения, пока не активируете визуальную голосовую почту. Позвоните, чтобы прослушать новые сообщения."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Не удалось включить просмотр голосовой почты"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Проверьте подключение к мобильной сети и повторите попытку."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Убедитесь, что телефон подключен к мобильной сети, и повторите попытку."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Отключите режим полета и повторите попытку."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Нет соединения"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Вы не будете получать оповещения о новых голосовых сообщениях. Если телефон подключен к Wi-Fi, выполните синхронизацию."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Вы не будете получать оповещения о новых голосовых сообщениях. Если телефон подключен к Wi-Fi, то вы можете выполнить синхронизацию и проверить голосовую почту сейчас."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Вы не будете получать оповещения о новых сообщениях. Чтобы выполнить синхронизацию, отключите режим полета."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Чтобы проверить голосовую почту, подключите мобильные данные."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Чтобы проверить голосовую почту, подключитесь к мобильному Интернету."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Не удалось включить просмотр голосовой почты"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Чтобы проверить голосовую почту, вы можете позвонить на специальный номер."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Не удалось обновить страницу просмотра голосовой почты"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Дождитесь стабильного сигнала Wi-Fi или мобильной сети и повторите попытку. Если вы хотите проверить почту сейчас, позвоните на специальный номер."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Дождитесь стабильного сигнала мобильной сети и повторите попытку. Если вы хотите проверить почту сейчас, позвоните на специальный номер."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Дождитесь стабильного сигнала Wi-Fi или мобильного Интернета и повторите попытку. Если вы хотите проверить голосовую почту сейчас, позвоните на специальный номер."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Дождитесь стабильного сигнала мобильного Интернета и повторите попытку. Если вы хотите проверить голосовую почту сейчас, позвоните на специальный номер."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Не удалось обновить страницу просмотра голосовой почты"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Чтобы проверить голосовую почту, вы можете позвонить на специальный номер."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Не удалось обновить страницу просмотра голосовой почты"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ошибка"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Свяжитесь со службой поддержки по номеру <xliff:g id="NUMBER">%1$s</xliff:g> и сообщите им код ошибки 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Условия использования визуальной голосовой почты"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Чтобы работать с визуальной голосовой почтой, примите Условия использования Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nЧтобы работать с визуальной голосовой почтой, примите Условия использования Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Включить визуальную голосовую почту"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Если вы не примете Условия использования, визуальная голосовая почта будет отключена."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Отключение визуальной голосовой почты"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Если вы не примете Условия использования, транскрипция голосовых сообщений будет отключена."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Отключение транскрипции голосовых сообщений"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Для прослушивания голосовой почты необходимо будет отправить вызов по номеру *86. Чтобы продолжить, установите новый PIN-код голосовой почты."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Установка PIN-кода"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-si/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-si/strings.xml
index 2a057fa..ddba002 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-si/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-si/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"දෘශ්‍ය හඬ තැපෑල ක්‍රියාත්මක කිරීම"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"දෘශ්‍ය හඬ තැපෑල සම්පූර්ණයෙන් සක්‍රිය කරන තෙක් ඔබට හඩ තැපැල් දැනුම් දීම් නොලැබීමට හැකිය. දෘශ්‍ය හඬ තැපෑල සම්පූර්ණයෙන් සක්‍රිය කරන තෙක් නව පණිවිඩ යළි ලබා ගැනීමට හඬ තැපෑල අමතන්න."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"දෘශ්‍ය හඬ තැපෑල ක්‍රියාත්මක කළ නොහැකිය"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ඔබේ දුරකථනයට සෙලියුලර් සම්බන්ධතාවක් ඇති බව පරීක්ෂා කර නැවත උත්සාහ කරන්න."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ඔබේ දුරකථනයට ජංගම ජාල සම්බන්ධතාවක් ඇති බව සහතික කරගෙන නැවත උත්සාහ කරන්න."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ගුවන් යානා ප්‍රකාරය ක්‍රියාවිරහිත කර නැවත උත්සාහ කරන්න."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"සම්බන්ධතාවය නැත"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ඔබට නව හඬ තැපැල් සඳහා දැනුම් දීම් නොලැබෙනු ඇත. ඔබ Wi-Fi මත සිටින්නේ නම්, ඔබට දැන් සමමුහුර්ත කිරීමෙන් හඬ තැපැල් සඳහා පරීක්ෂා කළ හැකිය."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ඔබට නව හඬ තැපැල් සඳහා දැනුම් දීම් නොලැබෙනු ඇත. ඔබ Wi-Fi වල සිටින්නේ නම්, ඔබට දැන් සමමුහුර්ත කිරීමෙන් හඬ තැපෑල සඳහා පරීක්ෂා කළ හැකිය."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ඔබට නව හඬ තැපැල් සඳහා දැනුම් දීම් නොලැබෙනු ඇත. ඔබේ හඬ තැපැල් සමමුහුර්ත කිරීමට ගුවන් යානා ප්‍රකාරය ක්‍රියාවිරහිත කරන්න."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"හඬ තැපැල් පරීක්ෂා කිරීමට ඔබේ දුරකථනයට සෙලියුලර් දත්ත සබැඳුමක් අවශ්‍යය."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"හඬ තැපෑල පරීක්ෂා කිරීමට ඔබේ දුරකථනයට ජංගම දත්ත සම්බන්ධතාවක් අවශ්‍යයි."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"දෘශ්‍ය හඬ තැපෑල ක්‍රියාත්මක කළ නොහැකිය"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"දෘශ්‍ය හඬ තැපෑල යාවත්කාලීන කළ නොහැකිය"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ඔබේ Wi-Fi හෝ සෙලියුලර් සබැඳුම වඩා යහපත් විට නැවත උත්සාහ කරන්න. ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ඔබේ සෙලියුලර් දත්ත සබැඳුම වඩා යහපත් විට නැවත උත්සාහ කරන්න. ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ඔබේ Wi-Fi හෝ ජංගම දත්ත සම්බන්ධතාව වඩා යහපත් විට නැවත උත්සාහ කරන්න. ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ඔබේ ජංගම දත්ත සම්බන්ධතාව වඩා යහපත් විට නැවත උත්සාහ කරන්න. ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"දෘශ්‍ය හඬ තැපෑල යාවත්කාලීන කළ නොහැකිය"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"දෘශ්‍ය හඬ තැපෑල යාවත්කාලීන කළ නොහැකිය"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"යම් දෙයක් වැරදිණි"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"කරුණාකර <xliff:g id="NUMBER">%1$s</xliff:g> අංකයට පාරිභෝගික සේවාව අමතා දෝෂ කේතය 9999 බව ඔවුන්ට පවසන්න."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"දෘශ්‍ය හඬ තැපෑල් නියම සහ කොන්දේසි"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ඔබ දෘශ්‍ය හඬ තැපෑල භාවිත කිරීමට Verizon Wireless හි නියම සහ කොන්දේසි පිළිගත යුතුය:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nඔබ දෘශ්‍ය හඬ තැපෑල භාවිත කිරීමට Verizon Wireless හි නියම සහ කොන්දේසි පිළිගත යුතුය:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"දෘශ්‍ය හඬ තැපෑල ක්‍රියාත්මක කරන්න"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"නියම සහ කොන්දේසි ප්‍රතික්ෂේප කර ඇති නම් දෘශ්‍ය හඬ තැපෑල අබල කරනු ඇත."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"දෘශ්‍ය හඬ තැපෑල අබල කරන්න"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"නියම සහ කොන්දේසි ප්‍රතික්ෂේප කර ඇති නම් හඬ තැපැල් පිටපත් කිරීම අබල කරනු ඇත."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"හඬ තැපැල් පිටපත් කිරීම අබල කරන්න"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"හඩ තැපෑල *86 වෙත ඇමතීමෙන් පමණක් ලබා ගත හැකිය. ඉදිරියට යාමට නව හඩ තැපැල් PIN එකක් පිහිටුවන්න."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN අංකය සකසන්න"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sk/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sk/strings.xml
index 165a9f5..692d68b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sk/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sk/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktivuje sa vizuálna hlasová schránka"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Kým nebude vizuálna hlasová schránka úplne aktivovaná, pravdepodobne nebudete dostávať upozornenia hlasovej schránky. Kým nebude hlasová schránka úplne aktivovaná, nové správy môžete načítať zavolaním do hlasovej schránky."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizuálna hlasová schránka sa nedá aktivovať"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Skontrolujte, či má telefón mobilné pripojenie, a skúste to znova."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Skontrolujte, či má telefón pripojenie k mobilnej sieti, a skúste to znova."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Vypnite režim v lietadle a skúste to znova."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Žiadne pripojenie"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nedostanete upozornenia na nové hlasové správy. Ak používate Wi-Fi, synchronizáciou môžete skontrolovať hlasovú schránku."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nedostanete upozornenia na nové hlasové správy. Ak používate Wi‑Fi, hlasovú schránku môžete skontrolovať synchronizáciou."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nedostanete upozornenia na nové hlasové správy. Vypnite režim v lietadle a synchronizujte hlasovú schránku."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Na kontrolu hlasovej schránky potrebuje telefón mobilné dátové pripojenie."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Na kontrolu hlasovej schránky potrebuje telefón mobilné dátové pripojenie."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizuálna hlasová schránka sa nedá aktivovať"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizuálna hlasová schránka sa nedá aktualizovať"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Skúste to znova, keď budete mať lepšie pripojenie cez Wi-Fi alebo lepšie mobilné pripojenie. Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Skúste to znova, keď budete mať lepšie mobilné dátové pripojenie. Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Skúste to znova, keď budete mať lepšie pripojenie cez Wi‑Fi alebo lepšie mobilné dátové pripojenie. Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Skúste to znova, keď budete mať lepšie mobilné dátové pripojenie. Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizuálna hlasová schránka sa nedá aktualizovať"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizuálna hlasová schránka sa nedá aktualizovať"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Vyskytol sa problém"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Obráťte sa na služby zákazníkom na čísle <xliff:g id="NUMBER">%1$s</xliff:g> a oznámte kód chyby 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Zmluvné podmienky vizuálnej hlasovej schránky"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Ak chcete používať vizuálnu hlasovú schránku, je nutné prijať zmluvné podmienky spoločnosti Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nAk chcete používať vizuálnu hlasovú schránku, prijmite zmluvné podmienky spoločnosti Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Zapnutie vizuálnej hlasovej schránky"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"V prípade odmietnutia zmluvných podmienok bude vizuálna hlasová schránka zakázaná."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Zakázať vizuálnu hlasovú schránku"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"V prípade odmietnutia zmluvných podmienok bude prepis hlasových správ zakázaný."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Zakázať prepis hlasových správ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Hlasová schránka bude k dispozícii len po zavolaní na číslo *86. Ak chcete pokračovať, nastavte nový PIN hlasovej schránky."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Nastavenie kódu PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sl/strings.xml
index d4f63c1..50a7199 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiviranje vizualnih sporočil v odzivniku"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Dokler niso vizualna sporočila v odzivniku v celoti aktivirana, morda ne boste prejemali obvestil o sporočilih v odzivniku. Pokličite odzivnik, da prenesete nova sporočila, dokler niso sporočila v odzivniku v celoti aktivirana."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizualnih sporočil v odzivniku ni mogoče aktivirati"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Preverite, ali je v telefonu vzpostavljena mobilna internetna povezava, in poskusite znova."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Preverite, ali je v telefonu vzpostavljena povezava z mobilnim omrežjem, in poskusite znova."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Izklopite način za letalo in poskusite znova."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ni povezave"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Obvestil o novih sporočilih v odzivniku ne boste prejemali. Če ste v omrežju Wi-Fi, lahko zdaj zaženete sinhronizacijo in preverite, ali ste prejeli sporočila v odzivniku."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Obvestil o novih sporočilih v odzivniku ne boste prejemali. Če ste v omrežju Wi-Fi, lahko zdaj zaženete sinhronizacijo in preverite, ali ste prejeli sporočila v odzivniku."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Obvestil o novih sporočilih v odzivniku ne boste prejemali. Če želite sinhronizirati sporočila v odzivniku, izklopite način za letalo."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Če želite preveriti sporočila v odzivniku, je treba v telefonu vzpostaviti povezavo za prenos podatkov v mobilnih omrežjih."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Če želite preveriti sporočila v odzivniku, je treba v telefonu vzpostaviti povezavo za prenos podatkov v mobilnem omrežju."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizualnih sporočil v odzivniku ni mogoče aktivirati"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizualnih sporočil v odzivniku ni mogoče posodobiti"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Poskusite znova, ko bo povezava Wi-FI ali mobilna internetna povezava boljša. Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Poskusite znova, ko bo mobilna internetna povezava boljša. Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Poskusite znova, ko bo povezava z omrežjem Wi-Fi ali povezava za prenos podatkov v mobilnem omrežju boljša. Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Poskusite znova, ko bo povezava za prenos podatkov v mobilnem omrežju boljša. Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizualnih sporočil v odzivniku ni mogoče posodobiti"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizualnih sporočil v odzivniku ni mogoče posodobiti"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Prišlo je do napake"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Obrnite se na podporo za stranke na številki <xliff:g id="NUMBER">%1$s</xliff:g> in jim sporočite to kodo napake: 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Določila in pogoji za vizualna sporočila v odzivniku"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Če želite uporabljati vizualna sporočila v odzivniku, morate sprejeti določila in pogoje podjetja Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nČe želite uporabljati vizualna sporočila v odzivniku, morate sprejeti določila in pogoje podjetja Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Vklop vizualnih sporočil v odzivniku"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Če zavrnete določila in pogoje, bodo vizualna sporočila v odzivniku onemogočena."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Onemogočanje vizualnih sporočil v odzivniku"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Če zavrnete določila in pogoje, bo prepis sporočil v odzivniku onemogočen."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Onemogočanje prepisa sporočil v odzivniku"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Sporočila v odzivniku so na voljo samo tako, da pokličete *86. Če želite nadaljevati, nastavite novo kodo PIN za sporočila v odzivniku."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Nastavitev kode PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sq/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sq/strings.xml
index d400cd8..459760c 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sq/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sq/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Po aktivizon postën zanore vizuale"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Mund të mos marrësh njoftime të postës zanore derisa posta zanore vizuale të aktivizohet plotësisht. Merr në telefon te posta zanore për të marrë mesazhet e reja derisa posta zanore të aktivizohet plotësisht."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Posta zanore vizuale nuk aktivizohet"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Sigurohu që telefoni tënd të ketë lidhje celulare dhe provo përsëri."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Sigurohu që telefoni yt të ketë një lidhje rrjeti celular dhe provo përsëri."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Çaktivizo modalitetin e aeroplanit dhe provo përsëri."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nuk ka lidhje"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nuk do të njoftohesh për postë zanore të re. Nëse je në rrjetin Wi-Fi, mund të kontrollosh për postë zanore duke sinkronizuar tani."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nuk do të njoftohesh për postat e reja zanore. Nëse je në rrjetin Wi-Fi, mund të kontrollosh për postën zanore duke e sinkronizuar tani."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nuk do të njoftohesh për postë zanore të re. Çaktivizo modalitetin në aeroplan për të sinkronizuar postën zanore."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefoni yt ka nevojë për lidhje me të dhënat celulare për të kontrolluar postën zanore."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefoni yt ka nevojë për një lidhje të të dhënave celulare për të kontrolluar postën zanore."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Posta zanore vizuale nuk aktivizohet"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Përsëri mund të telefonosh për të kontrolluar postën zanore."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Posta zanore vizuale nuk u përditësua"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Provo përsëri kur lidhja Wi-Fi ose celulare të jetë më e mirë. Përsëri mund të telefonosh për të kontrolluar postën zanore."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Provo përsëri kur lidhja e të dhënave celulare të jetë më e mirë. Përsëri mund të telefonosh për të kontrolluar postën zanore."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Provo përsëri kur lidhja Wi-Fi ose e të dhënave celulare të jetë më e mirë. Mund të telefonosh përsëri për të kontrolluar postën zanore."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Provo përsëri kur lidhja e të dhënave celulare të jetë më e mirë. Mund të telefonosh përsëri për të kontrolluar postën zanore."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Posta zanore vizuale nuk u përditësua"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Përsëri mund të telefonosh për të kontrolluar postën zanore."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Posta zanore vizuale nuk u përditësua"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ndodhi një gabim"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakto me \"Shërbimin e klientit\" në <xliff:g id="NUMBER">%1$s</xliff:g> dhe tregoju kodin e gabimit 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Kushtet e përgjithshme të postës zanore vizuale"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Duhet të pranosh kushtet e përgjithshme të Verizon Wireless për të përdorur postën zanore vizuale:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDuhet të pranosh kushtet e përgjithshme të Verizon Wireless për të përdorur postën zanore vizuale:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Aktivizo postën zanore vizuale"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Posta zanore vizuale duhet të çaktivizohet nëse refuzohen kushtet e përgjithshme."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Çaktivizo postën zanore vizuale"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkriptimi i postës zanore do të çaktivizohet nëse refuzohen kushtet e përgjithshme."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Çaktivizo transkriptimin e postës zanore"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Do të mund të qasesh te posta zanore vetëm duke telefonuar në *86. Cakto një kod PIN të ri për postën zanore për të vazhduar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Konfiguro kodin PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sr/strings.xml
index da1853a..6c65572 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Активира се визуелна говорна пошта"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Можда нећете добијати обавештења о говорној пошти док потпуно не активирате визуелну говорну пошту. Позовите говорну пошту да бисте преузели нове поруке док говорна пошта не буде потпуно активирана."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Активирање визуелне говорне поште није успело"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Проверите да ли телефон има мобилну везу и покушајте поново."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Проверите да ли телефон има везу преко мобилне мреже и пробајте поново."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Искључите режим рада у авиону и покушајте поново."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Веза није успостављена"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Нећете добијати обавештења о новим говорним порукама. Ако сте на Wi-Fi мрежи, синхронизујте да бисте проверили говорну пошту."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Нећете добијати обавештења о новим говорним порукама. Ако сте на Wi‑Fi мрежи, можете да синхронизујете да бисте проверили говорну пошту."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Нећете добијати обавештења о новим говорним порукама. Искључите режим рада у авиону да бисте синхронизовали говорну пошту."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Телефону треба мобилна веза за пренос података да бисте проверили говорну пошту."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Телефону је за проверу говорне поште потребна мобилна веза за пренос података."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Активирање визуелне говорне поште није успело"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"И даље можете да позовете говорну пошту да бисте је проверили."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ажурирање визуелне говорне поште није успело"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Пробајте поново кад будете имали бољу Wi-Fi или мобилну везу. И даље можете да позовете говорну пошту да бисте је проверили."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Пробајте поново кад будете имали бољу мобилну везу за пренос података. И даље можете да позовете говорну пошту да бисте је проверили."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Пробајте поново кад будете имали бољу Wi‑Fi или мобилну везу за пренос података. И даље можете да позовете говорну пошту да бисте је проверили."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Пробајте поново кад будете имали бољу мобилну везу за пренос података. И даље можете да позовете говорну пошту да бисте је проверили."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ажурирање визуелне говорне поште није успело"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"И даље можете да позовете говорну пошту да бисте је проверили."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ажурирање визуелне говорне поште није успело"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Нешто није у реду"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Контактирајте корисничку подршку на <xliff:g id="NUMBER">%1$s</xliff:g> и реците им да је кôд грешке 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Услови и одредбе за визуелну говорну пошту"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Морате да прихватите Verizon Wireless услове и одредбе да бисте користили визуелну говорну пошту:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nМорате да прихватите Verizon Wireless услове и одредбе да бисте користили визуелну говорну пошту:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Укључите визуелну говорну пошту"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ако одбијете услове и одредбе, онемогућићете визуелну говорну пошту."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Онемогућите визуелну говорну пошту"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Транскрипција говорне поште ће бити онемогућена ако се услови и одредбе одбију."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Онемогућите транскрипцију говорне поште"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Говорној пошти ћете моћи да приступите само ако позовете *86. Подесите нови PIN кôд говорне поште да бисте наставили."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Подесите PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sv/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sv/strings.xml
index cfab830..22dea5e 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sv/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sv/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiverar visuell röstbrevlåda"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Du får kanske inte röstmeddelanden tills visuell röstbrevlåda är helt aktiverad. Ring röstbrevlådan för att hämta nya meddelanden innan den är helt aktiverad."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Det går inte att aktivera visuell röstbrevlåda"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Se till att mobilen har en mobildataanslutning och försök igen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Se till att mobilen har en mobilnätverksanslutning och försök igen."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Inaktivera flygplansläget och försök igen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ingen anslutning"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du meddelas inte om nya röstmeddelanden. Om du är ansluten till Wi-Fi kan du kontrollera om du har fått nya röstmeddelanden genom att synkronisera."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du meddelas inte om nya röstmeddelanden. Om du är ansluten till Wi-Fi kan du lyssna på nya röstmeddelanden genom att synkronisera nu."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du blir inte meddelad om nya röstmeddelanden. Inaktivera flygplansläget om du vill synkronisera röstbrevlådan."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Mobilen måste ha en mobildataanslutning för att du ska kunna lyssna av röstbrevlådan."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Mobilen måste ha en mobildataanslutning för att lyssna av röstbrevlådan."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Det går inte att aktivera visuell röstbrevlåda"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kan fortfarande lyssna av röstbrevlådan genom att ringa."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Det går inte att uppdatera den visuella röstbrevlådan"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Försök igen när du har en bättre Wi-Fi- eller mobildataanslutning. Du kan fortfarande lyssna av röstbrevlådan."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Försök igen när du har en bättre mobildataanslutning. Du kan fortfarande lyssna av röstbrevlådan."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Försök igen när du har en bättre Wi-Fi- eller mobildataanslutning. Det går fortfarande att lyssna av röstbrevlådan."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Försök igen när du har en bättre mobildataanslutning. Det går fortfarande att lyssna av röstbrevlådan."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Det går inte att uppdatera den visuella röstbrevlådan"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kan fortfarande lyssna av röstbrevlådan genom att ringa."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Det går inte att uppdatera den visuella röstbrevlådan"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Något gick fel"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakta kundtjänst på <xliff:g id="NUMBER">%1$s</xliff:g> och ange felkoden 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Användarvillkor för visuell röstbrevlåda"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du måste acceptera Verizon Wireless användarvillkor för att använda visuell röstbrevlåda:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu måste godkänna Verizon Wireless användarvillkor för att använda visuell röstbrevlåda:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Aktivera visuell röstbrevlåda"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuell röstbrevlåda inaktiveras om användarvillkoren avböjs."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Inaktivera visuell röstbrevlåda"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkription av röstbrevlådan inaktiveras om användarvillkoren avböjs."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Inaktivera transkription av röstbrevlåda"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Röstbrevlådan är endast tillgänglig genom att ringa *86. Fortsätt genom att ställa in en ny PIN-kod till röstbrevlådan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ställ in pinkod"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sw/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sw/strings.xml
index 56aad21..6b8b1f3 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sw/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sw/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Inawasha kipengele cha ujumbe wa sauti unaoonekana"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Huenda usipokee arifa za ujumbe wa sauti mpaka kipengele cha ujumbe wa sauti unaoonekana kiwe kimewashwa kabisa. Piga nambari ya ujumbe wa sauti ili upate ujumbe mpya mpaka kipengele hicho kitakapokuwa kimewashwa kabisa."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Imeshindwa kuwasha kipengele cha ujumbe wa sauti unaoonekana"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Hakikisha kwamba simu yako ina muunganisho wa mtandao wa simu kisha ujaribu tena."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Hakikisha kwamba simu yako ina muunganisho wa mtandao wa simu kisha ujaribu tena."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Zima hali ya ndegeni kisha ujaribu tena."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Hakuna muunganisho"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Hutaarifiwa ukipata ujumbe mpya wa sauti. Kama unatumia Wi-Fi sasa hivi, unaweza kuangalia kama una ujumbe wa sauti kwa kusawazisha sasa."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Hutaarifiwa ukipata ujumbe mpya wa sauti. Kama unatumia Wi-Fi sasa hivi, unaweza kuangalia kama una ujumbe wa sauti kwa kusawazisha sasa."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Hutaarifiwa ukipata ujumbe mpya wa sauti. Zima hali ya ndegeni ili usawazishe ujumbe wa sauti."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Simu yako inahitaji muunganisho wa mtandao wa simu kufungua ujumbe wa sauti."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Simu yako inahitaji muunganisho wa mtandao wa simu kufungua ujumbe wa sauti."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Imeshindwa kuwasha kipengele cha ujumbe wa sauti unaoonekana"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Imeshindwa kusasisha kipengele cha ujumbe wa sauti unaoonekana"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Jaribu tena baadaye muunganisho wa Wi-Fi au mtandao wa simu ukiimarika. Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Jaribu tena baadaye muunganisho wa data ya simu za mkononi ukiimarika. Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Jaribu tena baadaye muunganisho wa Wi-Fi au mtandao wa simu ukiimarika. Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Jaribu tena baadaye muunganisho wa data ya simu za mkononi ukiimarika. Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Imeshindwa kusasisha kipengele cha ujumbe wa sauti unaoonekana"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Imeshindwa kusasisha kipengele cha ujumbe wa sauti unaoonekana"</string>
@@ -102,9 +102,15 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Hitilafu Fulani Imetokea"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Tafadhali wasiliana na Kituo cha Huduma kwa Wateja kupitia <xliff:g id="NUMBER">%1$s</xliff:g> na uwaambie kwamba msimbo wa hitilafu ni 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Sheria na Masharti ya kipengele cha Ujumbe wa Sauti Unaoonekana"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Lazima ukubali sheria na masharti ya Verizon Wireless ili uweze kutumia kipengele cha ujumbe wa sauti unaoonekana:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nNi lazima ukubali sheria na masharti ya Verizon Wireless ili uweze kutumia kipengele cha ujumbe wa sauti:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Washa Kipengele cha Ujumbe wa Sauti Unaoonekana"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for dialer_terms_and_conditions_message (6207219973959897196) -->
+    <skip />
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Kipengele cha ujumbe wa sauti unaoonekana kitazimwa ukikataa sheria na masharti."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Zima kipengele cha ujumbe wa sauti unaoonekana"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Kipengele cha unukuzi wa ujumbe wa sauti kitazimwa ukikataa sheria na masharti."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Zima kipengele cha unukuzi wa ujumbe wa sauti"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Utaweza kupata ujumbe wa sauti kwa kupiga *86 tu. Weka PIN mpya ya ujumbe wa sauti ili uweze kuendelea."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Weka PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ta/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ta/strings.xml
index f2613f0..5a51c94 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ta/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ta/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"விஷூவல் குரலஞ்சலைச் செயல்படுத்துகிறது"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"விஷுவல் குரலஞ்சலை முழுவதுமாக இயக்கும் வரை, உங்களால் குரலஞ்சல் அறிவிப்புகளைப் பெற முடியாமல் போகலாம். குரலஞ்சலை முழுவதுமாக இயக்கும் வரை புதிய செய்திகளைப் பெற, குரலஞ்சலை அழைக்கவும்."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"விஷூவல் குரலஞ்சலைச் செயல்படுத்த முடியவில்லை"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"உங்கள் மொபைலில் செல்லுலார் இணைப்பு உள்ளதை உறுதிசெய்து, மீண்டும் முயலவும்."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"உங்கள் ஃபோனில் மொபைல் நெட்வொர்க் இணைப்பு உள்ளதை உறுதிசெய்து, மீண்டும் முயலவும்."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"விமானப் பயன்முறையை முடக்கி, மீண்டும் முயலவும்."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"இணைப்பு இல்லை"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"புதிய குரலஞ்சல்கள் குறித்த அறிவிப்புகளைப் பெறமாட்டீர்கள். வைஃபை இணைப்பைப் பயன்படுத்திக்கொண்டிருந்தால், இப்போதே ஒத்திசைத்து குரலஞ்சல் உள்ளதா எனப் பார்க்கலாம்."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"புதிய குரலஞ்சல்கள் குறித்த அறிவிப்புகளைப் பெறமாட்டீர்கள். வைஃபை இணைப்பைப் பயன்படுத்திக்கொண்டிருந்தால், இப்போதே ஒத்திசைத்து குரலஞ்சல் உள்ளதா எனப் பார்க்கலாம்."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"புதிய குரலஞ்சல்கள் குறித்த அறிவிப்புகளைப் பெறமாட்டீர்கள். குரலஞ்சலை ஒத்திசைக்க, விமானப் பயன்முறையை முடக்கவும்."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"குரலஞ்சலைப் பார்க்க, உங்கள் மொபைலில் செல்லுலார் தரவு இணைப்பு இருக்க வேண்டும்."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"குரலஞ்சலைக் கேட்க, உங்கள் ஃபோனில் மொபைல் தரவு இணைப்பு இருக்க வேண்டும்."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"விஷூவல் குரலஞ்சலைச் செயல்படுத்த முடியவில்லை"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"விஷூவல் குரலஞ்சலைப் புதுப்பிக்க முடியவில்லை"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"வைஃபை அல்லது செல்லுலார் இணைப்பின் வேகம் முன்பை விட அதிகமாகும் போது, மீண்டும் முயலவும். குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"செல்லுலார் தரவு இணைப்பின் வேகம் முன்பை விட அதிகமாகும் போது, மீண்டும் முயலவும். குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"வைஃபை அல்லது மொபைல் தரவு இணைப்பின் வேகம் முன்பை விட அதிகமாகும் போது, மீண்டும் முயலவும். குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"மொபைல் தரவு இணைப்பின் வேகம் முன்பை விட அதிகமாகும் போது, மீண்டும் முயலவும். குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"விஷூவல் குரலஞ்சலைப் புதுப்பிக்க முடியவில்லை"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"விஷூவல் குரலஞ்சலைப் புதுப்பிக்க முடியவில்லை"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ஏதோ தவறாகிவிட்டது"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"<xliff:g id="NUMBER">%1$s</xliff:g> என்ற எண்ணில் வாடிக்கையாளர் சேவையை அழைத்து, அவர்களிடம் பிழையின் குறியீடு 9999 எனக் கூறவும்."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"விஷுவல் குரலஞ்சலின் விதிமுறைகள் மற்றும் நிபந்தனைகள்"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"விஷுவல் குரலஞ்சலைப் பயன்படுத்த Verizon Wireless இன் விதிமுறைகள் மற்றும் நிபந்தனைகளை ஏற்க வேண்டும்:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nவிஷுவல் குரலஞ்சலைப் பயன்படுத்த, Verizon Wireless இன் விதிமுறைகளையும் நிபந்தனைகளையும் ஏற்க வேண்டும்:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"விஷுவல் குரலஞ்சலை இயக்கவும்"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"விதிமுறைகள் மற்றும் நிபந்தனைகள் நிராகரிக்கப்பட்டால், விஷுவல் குரலஞ்சல் முடக்கப்படும்."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"விஷுவல் குரலஞ்சலை முடக்கு"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"விதிமுறைகளையும் நிபந்தனைகளையும் நிராகரித்தீர்கள் எனில், குரலஞ்சல் டிரான்ஸ்கிரிப்ஷன் முடக்கப்படும்."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"குரலஞ்சல் டிரான்ஸ்கிரிப்ஷனை முடக்கு"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*86ஐ அழைத்தால் மட்டுமே, குரலஞ்சலை அணுக முடியும். தொடர, புதிய குரலஞ்சல் பின்னை அமைக்கவும்."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"பின்னை அமை"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-te/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-te/strings.xml
index a881550..f17ad79 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-te/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-te/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"దృశ్య వాయిస్ మెయిల్‌ను సక్రియం చేస్తోంది"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"దృశ్య వాయిస్ మెయిల్ పూర్తిగా సక్రియం అయ్యే వరకు మీరు వాయిస్ మెయిల్ నోటిఫికేషన్‌లను స్వీకరించలేకపోవచ్చు. వాయిస్ మెయిల్ పూర్తిగా సక్రియం అయ్యే వరకు కొత్త సందేశాలను తిరిగి పొందడానికి వాయిస్ మెయిల్‌కి కాల్ చేయండి."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"దృశ్య వాయిస్ మెయిల్‌ను సక్రియం చేయడం సాధ్యపడదు"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"మీ ఫోన్‌కు సెల్యులార్ కనెక్షన్ ఉన్నట్లు నిర్ధారించుకొని, ఆపై మళ్లీ ప్రయత్నించండి."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"మీ ఫోన్‌కు మొబైల్ నెట్‌వర్క్ కనెక్షన్ ఉన్నట్లు నిర్ధారించుకొని, ఆపై మళ్లీ ప్రయత్నించండి."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ఎయిర్‌ప్లైన్ మోడ్‌ను ఆఫ్ చేసి, ఆపై మళ్లీ ప్రయత్నించండి."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"కనెక్షన్ లేదు"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"మీకు కొత్త వాయిస్ మెయిల్‌ల గురించి తెలియజేయబడదు. మీరు Wi-Fiలో ఉంటే, ఇప్పుడే సమకాలీకరించడం ద్వారా వాయిస్ మెయిల్‌‍ను తనిఖీ చేయవచ్చు."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"మీకు కొత్త వాయిస్ మెయిల్‌ల గురించి తెలియజేయబడదు. మీరు Wi-Fiలో ఉంటే, ఇప్పుడే సమకాలీకరించడం ద్వారా వాయిస్ మెయిల్‌‍ను తనిఖీ చేయవచ్చు."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"మీకు కొత్త వాయిస్ మెయిల్‌ల గురించి తెలియజేయబడదు. మీ వాయిస్ మెయిల్‌‍ను సమకాలీకరించడానికి ఎయిర్‌ప్లైన్ మోడ్‌ను ఆఫ్ చేయండి."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి మీ ఫోన్‌కు సెల్యులార్ డేటా కనెక్షన్ అవసరం."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి మీ ఫోన్‌కు మొబైల్ డేటా కనెక్షన్ అవసరం."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"దృశ్య వాయిస్ మెయిల్‌ను సక్రియం చేయడం సాధ్యపడదు"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"దృశ్య వాయిస్ మెయిల్‌ను నవీకరించడం సాధ్యపడదు"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"మీ Wi-Fi లేదా సెల్యులార్ కనెక్షన్ మెరుగైనప్పుడు మళ్లీ ప్రయత్నించండి. మీరు వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి ఇప్పటికీ కాల్ చేయవచ్చు."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"మీ సెల్యులార్ డేటా కనెక్షన్ మెరుగైనప్పుడు మళ్లీ ప్రయత్నించండి. మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"మీ Wi-Fi లేదా మొబైల్ డేటా కనెక్షన్ మెరుగైనప్పుడు మళ్లీ ప్రయత్నించండి. మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"మీ మొబైల్ డేటా కనెక్షన్ మెరుగైనప్పుడు మళ్లీ ప్రయత్నించండి. మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"దృశ్య వాయిస్ మెయిల్‌ను నవీకరించడం సాధ్యపడదు"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"దృశ్య వాయిస్ మెయిల్‌ను నవీకరించడం సాధ్యపడదు"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ఏదో తప్పు జరిగింది"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"దయచేసి <xliff:g id="NUMBER">%1$s</xliff:g> నంబర్‌లో వినియోగదారు సేవా కేంద్రానికి కాల్ చేసి, వారికి లోపం కోడ్ 9999గా తెలపండి."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"దృశ్య వాయిస్ మెయిల్ నిబంధనలు మరియు షరతులు"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"మీరు దృశ్య వాయిస్ మెయిల్‌ను ఉపయోగించడానికి తప్పనిసరిగా Verizon వైర్‌లెస్ నిబంధనలు మరియు షరతులను ఆమోదించాలి:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nమీరు దృశ్య వాయిస్ మెయిల్‌ను ఉపయోగించాలంటే Verizon Wireless నిబంధనలు మరియు షరతులను తప్పనిసరిగా ఆమోదించాలి:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"దృశ్య వాయిస్ మెయిల్‌ను ఆన్ చేయండి"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"నిబంధనలు మరియు షరతులను తిరస్కరిస్తే దృశ్య వాయిస్ మెయిల్ నిలిపివేయబడుతుంది."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"దృశ్య వాయిస్ మెయిల్‌ను నిలిపివేయండి"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"నిబంధనలు మరియు షరతులను నిరాకరిస్తే వాయిస్ మెయిల్ లిప్యంతరీకరణ నిలిపివేయబడుతుంది."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"వాయిస్ మెయిల్ లిప్యంతరీకరణను నిలిపివేయండి"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"వాయిస్ మెయిల్‌ను కేవలం *86కి కాల్ చేయడం ద్వారా మాత్రమే ప్రాప్యత చేయగలరు. కొనసాగించడానికి కొత్త వాయిస్ మెయిల్ PINని సెట్ చేయండి."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PINని సెట్ చేయండి"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-th/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-th/strings.xml
index 31302cc..fffae99 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-th/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-th/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"กำลังเปิดใช้ข้อความเสียงพร้อมภาพ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"คุณอาจไม่ได้รับการแจ้งเตือนข้อความเสียงจนกว่าจะเปิดใช้ข้อความเสียงพร้อมภาพแบบเต็มรูปแบบ โทรฟังข้อความเสียงเพื่อเรียกข้อความใหม่จนกว่าจะเปิดใช้ข้อความเสียงพร้อมภาพแบบเต็มรูปแบบ"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"เปิดใช้ข้อความเสียงพร้อมภาพไม่ได้"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"โปรดตรวจสอบว่าโทรศัพท์เชื่อมต่อเครือข่ายมือถืออยู่ แล้วลองใหม่"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"โปรดตรวจสอบว่าโทรศัพท์เชื่อมต่อเครือข่ายมือถืออยู่ แล้วลองใหม่"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ปิดโหมดบนเครื่องบินและลองใหม่"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ไม่มีการเชื่อมต่อ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"คุณจะไม่ได้รับข้อความเสียงใหม่ ถ้าเปิด Wi-Fi อยู่ คุณจะตรวจสอบข้อความเสียงได้โดยซิงค์เลย"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"คุณจะไม่ได้รับข้อความเสียงใหม่ ถ้าคุณใช้เครือข่าย Wi-Fi อยู่ สามารถตรวจสอบข้อความเสียงได้โดยซิงค์เดี๋ยวนี้"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"คุณจะไม่ได้รับข้อความเสียงใหม่ ปิดโหมดบนเครื่องบินเพื่อซิงค์ข้อความเสียง"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"โทรศัพท์ต้องเชื่อมต่ออินเทอร์เน็ตมือถือ จึงจะตรวจสอบข้อความเสียงได้"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"โทรศัพท์ต้องเชื่อมต่ออินเทอร์เน็ตมือถือจึงจะตรวจสอบข้อความเสียงได้"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"เปิดใช้ข้อความเสียงพร้อมภาพไม่ได้"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ไม่สามารถอัปเดตข้อความเสียงพร้อมภาพได้"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ลองใหม่เมื่อ Wi-Fi หรือสัญญาณเชื่อมต่อเครือข่ายมือถือดีขึ้น คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ลองใหม่เมื่อสัญญาณเชื่อมต่อเครือข่ายมือถือดีขึ้น คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ลองใหม่เมื่อ Wi-Fi หรือการเชื่อมต่ออินเทอร์เน็ตมือถือถือดีขึ้น คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ลองใหม่เมื่อการเชื่อมต่ออินเทอร์เน็ตมือถือดีขึ้น คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ไม่สามารถอัปเดตข้อความเสียงพร้อมภาพได้"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ไม่สามารถอัปเดตข้อความเสียงพร้อมภาพได้"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"เกิดข้อผิดพลาด"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"โปรดติดต่อฝ่ายสนับสนุนลูกค้าที่หมายเลข <xliff:g id="NUMBER">%1$s</xliff:g> และแจ้งรหัสข้อผิดพลาด 9999"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ข้อกำหนดในการให้บริการข้อความเสียงพร้อมภาพ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"คุณต้องยอมรับข้อกำหนดในการให้บริการของ Verizon Wireless จึงจะใช้ข้อความเสียงพร้อมภาพได้:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nคุณต้องยอมรับข้อกำหนดในการให้บริการของ Verizon Wireless เพื่อใช้ข้อความเสียงพร้อมภาพ:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"เปิดใช้ข้อความเสียงพร้อมภาพ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"หากคุณไม่ยอมรับข้อกำหนดในการใช้บริการ ข้อความเสียงพร้อมภาพจะถูกปิดใช้งาน"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ปิดใช้ข้อความเสียงพร้อมภาพ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"หากคุณไม่ยอมรับข้อกำหนดในการใช้บริการ การถอดข้อความเสียงจะปิดใช้งาน"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ปิดใช้การถอดข้อความเสียง"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"คุณสามารถรับฟังข้อความเสียงด้วยการโทรไป *86 เท่านั้น และตั้งค่า PIN ข้อความเสียงใหม่เพื่อดำเนินการต่อ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ตั้งค่า PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-tl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-tl/strings.xml
index b99d0c3..b7b0caf 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-tl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-tl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ina-activate ang visual na voicemail"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Maaaring hindi ka makatanggap ng mga notification sa voicemail hanggang sa ganap na ma-activate ang visual na voicemail. Tawagan ang voicemail upang makuha ang mga bagong mensahe hanggang sa ganap na ma-activate ang voicemail."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Hindi ma-activate ang visual na voicemail"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Tiyaking mayroong cellular na koneksyon ang iyong telepono at subukang muli."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Tiyaking mayroong koneksyon sa mobile network ang iyong telepono at subukang muli."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"I-off ang airplane mode at subukang muli."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Walang koneksyon"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Hindi ka aabisuhan para sa mga bagong voicemail. Kung nasa Wi-Fi ka, maaari mong tingnan ang voicemail sa pamamagitan ng pag-sync ngayon."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Hindi ka aabisuhan para sa mga bagong voicemail. Kung nasa Wi-Fi ka, maaari mong tingnan ang voicemail sa pamamagitan ng pag-sync ngayon."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Hindi ka aabisuhan para sa mga bagong voicemail. I-off ang airplane mode para i-sync ang iyong voicemail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Kailangan ng cellular data na koneksyon ng iyong telepono upang tingnan ang voicemail."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Kailangan ng koneksyon ng mobile data ng iyong telepono upang tingnan ang voicemail."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Hindi ma-activate ang visual na voicemail"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Hindi ma-update ang visual na voicemail"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Subukang muli kapag mas maganda na ang iyong Wi-Fi o cellular na koneksyon. Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Subukang muli kapag mas maganda na ang iyong cellular data na koneksyon. Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Subukang muli kapag mas maganda na ang iyong Wi-Fi o koneksyon ng mobile data."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Subukang muli kapag mas maganda na ang iyong koneksyon ng mobile data. Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Hindi ma-update ang visual na voicemail"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Hindi ma-update ang visual na voicemail"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nagkaroon ng Problema"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Pakikontak ang Customer Service sa <xliff:g id="NUMBER">%1$s</xliff:g> at sabihin sa kanila na ang code ng error ay 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Mga Tuntunin at Kundisyon ng Visual na Voicemail"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Kailangan mong tanggapin ang mga tuntunin at kundisyon ng Verizon Wireless upang gamitin ang visual na voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nKailangan mong tanggapin ang mga tuntunin at kundisyon ng Verizon Wireless upang gamitin ang visual na voicemail:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"I-on ang Visual na Voicemail"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Idi-disable ang visual na voicemail kung tatanggihan ang mga tuntunin at kundisyon."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"I-disable ang visual na voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Idi-disable ang transkripsyon ng voicemail kung tatanggihan ang mga tuntunin at kundisyon."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"I-disable ang transkripsyon ng voicemail"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Maa-access lang ang voicemail sa pamamagitan ng pagtawag sa *86. Magtakda ng bagong PIN sa voicemail upang magpatuloy."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Magtakda ng PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-tr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-tr/strings.xml
index be5cbb0..3d0e379 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-tr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-tr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Görsel sesli mesaj etkinleştiriliyor"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Görsel sesli mesaj tam olarak etkinleştirilene dek sesli mesaj bildirimlerini almayabilirsiniz. Sesli mesaj tam olarak etkinleştirilene kadar, yeni mesajları almak için sesli mesaj hizmetini arayın."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Görsel sesli mesaj etkinleştirilemiyor"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Telefonunuzda hücresel bağlantı bulunduğundan emin olun ve tekrar deneyin."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Telefonunuzda mobil ağ bağlantısı olduğundan emin olup tekrar deneyin."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Uçak modunu kapatıp tekrar deneyin."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Bağlantı yok"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Yeni sesli mesajlarla ilgili olarak bilgilendirilmeyeceksiniz. Kablosuz bağlantınız varsa şimdi senkronizasyon gerçekleştirerek sesli mesajlarınızı kontrol edebilirsiniz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Yeni sesli mesajlarla ilgili olarak bilgilendirilmeyeceksiniz. Kablosuz bağlantınız varsa şimdi senkronizasyon gerçekleştirerek sesli mesajlarınızı kontrol edebilirsiniz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Yeni sesli mesajlarla ilgili olarak bilgilendirilmeyeceksiniz. Sesli mesajlarınızı senkronize etmek için uçak modunu kapatın."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Sesli mesaj kontrolü için telefonunuzda hücresel veri bağlantısı bulunmalıdır."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Sesli mesaj kontrolü için telefonunuzda mobil veri bağlantısı olmalıdır."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Görsel sesli mesaj etkinleştirilemiyor"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Görsel sesli mesaj güncellenemiyor"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Kablosuz veya hücresel bağlantı kalitesi daha iyi olduğunda tekrar deneyin. Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Hücresel veri bağlantısı kalitesi daha iyi olduğunda tekrar deneyin. Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Kablosuz veya mobil veri bağlantısı kalitesi daha iyi olduğunda tekrar deneyin. Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Mobil veri bağlantısı kalitesi daha iyi olduğunda tekrar deneyin. Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Görsel sesli mesaj güncellenemiyor"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Görsel sesli mesaj güncellenemiyor"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Bir Sorun Oluştu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Lütfen <xliff:g id="NUMBER">%1$s</xliff:g> numaralı telefondan Müşteri Hizmetleri ile iletişime geçerek hata kodunun 9999 olduğunu bildirin."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Görsel Sesli Mesaj Şartlar ve Koşulları"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Görsel sesli mesajı kullanmak için Verizon Wireless\'ın şartlar ve koşullarını kabul etmelisiniz:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nGörsel sesli mesajı kullanabilmek için Verizon Wireless\'ın şartlar ve koşullarını kabul etmelisiniz:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Görsel Sesli Mesaj\'ı etkinleştirme"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Şartlar ve koşullar reddedilirse görsel sesli mesaj devre dışı bırakılır."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Görsel sesli mesajı devre dışı bırak"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Şartlar ve koşullar reddedilirse sesli mesaj çeviri yazısı devre dışı bırakılır."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Sesli mesaj çeviri yazısını devre dışı bırakın"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Sesli mesajlara yalnızca *86 aranarak erişilebilir. Devam etmek için yeni bir sesli mesaj PIN\'i belirleyin."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN belirleyin"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-uk/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-uk/strings.xml
index 6adf49a..08cfb23 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-uk/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-uk/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Активація візуальної голосової пошти"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Якщо візуальну голосову пошту активовано неповністю, сповіщення голосової пошти можуть не надходити. У такому разі слід телефонувати на голосову пошту, щоб прослуховувати нові повідомлення."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Не вдалось активувати візуальну голосову пошту"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Переконайтеся, що в телефоні ввімкнено мобільний зв’язок, і спробуйте ще раз."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Переконайтеся, що в телефоні ввімкнено мобільний Інтернет, і спробуйте ще раз."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Вимкніть режим польоту та спробуйте ще раз."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Немає з’єднання"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Ви не отримуватимете сповіщення про нові повідомлення голосової пошти. Якщо активовано Wi-Fi, можете просто ввімкнути синхронізацію, і нові повідомлення завантажаться."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Ви не отримуватимете сповіщення про нові повідомлення голосової пошти. Якщо активовано Wi-Fi, можете просто ввімкнути синхронізацію, і нові повідомлення завантажаться."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Ви не отримуватимете сповіщення про нові повідомлення голосової пошти. Щоб синхронізувати голосову пошту, вимкніть режим польоту."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Щоб перевірити голосову пошту, потрібен мобільний трафік."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Щоб перевірити голосову пошту, потрібно ввімкнути мобільний Інтернет."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Не вдалось активувати візуальну голосову пошту"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Не вдалось оновити візуальну голосову пошту"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Спробуйте ще раз, коли буде кращий мобільний або Wi-Fi-зв’язок. Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Спробуйте ще раз, коли буде кращий мобільний зв’язок. Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Спробуйте ще раз, коли буде вища швидкість мобільного Інтернету або кращий сигнал Wi-Fi. Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Спробуйте ще раз, коли буде вища швидкість мобільного Інтернету. Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Не вдалось оновити візуальну голосову пошту"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Не вдалось оновити візуальну голосову пошту"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Сталася помилка"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Зв’яжіться зі службою обслуговування клієнтів за номером <xliff:g id="NUMBER">%1$s</xliff:g> і повідомте такий код помилки: 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Умови використання візуальної голосової пошти"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Щоб використовувати візуальну голосову пошту, потрібно прийняти Умови використання Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nЩоб використовувати візуальну голосову пошту, потрібно прийняти правила та умови Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Увімкнути візуальну голосову пошту"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Якщо відхилити умови використання, візуальну голосову пошту буде вимкнено."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Вимкнути візуальну голосову пошту"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Якщо відхилити правила та умови, транскрипцію голосової пошти буде вимкнено."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Вимкнути транскрипцію голосової пошти"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Прослухати голосову пошту можна буде, лише набравши *86. Установіть новий PIN-код для голосової пошти, щоб продовжити."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Установити PIN-код"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ur/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ur/strings.xml
index e6fd9f7..55f1e0b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ur/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ur/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"بصری صوتی میل کو فعال کیا جا رہا ہے"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"بصری صوتی میل کے مکمل طور پر فعال ہونے تک ہو سکتا ہے آپ کو صوتی میل کی اطلاعات موصول نہ ہو۔ صوتی میل کے مکمل طور پر فعال ہونے تک نئے پیغامات کی بازیافت کیلئے صوتی میل پر کال کریں۔"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"بصری صوتی میل کو فعال نہیں کیا جا سکتا"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"یقینی بنائیں کہ آپ کے فون میں ایک سیلولر کنکشن موجود ہے اور دوبارہ کوشش کریں۔"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"یقینی بنائیں کہ آپ کے فون میں ایک موبائل کنکشن موجود ہے اور دوبارہ کوشش کریں۔"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ہوائی جہاز وضع آف کریں اور دوبارہ کوشش کریں۔"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"کوئی کنکشن نہیں ہے"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"‏آپ کو نئی صوتی میلز سے مطلع نہیں کیا جائے گا۔ اگر آپ Wi-Fi پر ہیں تو آپ ابھی مطابقت پذیری کرکے صوتی میل کیلئے چیک کر سکتے ہیں۔"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"‏آپ کو نئی صوتی میلز سے مطلع نہیں کیا جائے گا۔ اگر آپ Wi-Fi پر ہیں تو آپ ابھی مطابقت پذیری کرکے صوتی میل کیلئے چیک کر سکتے ہیں۔"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"آپ کو نئی صوتی میلز سے مطلع نہیں کیا جائے گا۔ اپنی صوتی میل کو مطابقت پذیر بنانے کیلئے ہوائی جہاز وضع آف کریں۔"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"صوتی میل چیک کرنے کیلئے آپ کے فون کو سیلولر ڈیٹا کنکشن کی ضرورت ہے۔"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"صوتی میل چیک کرنے کیلئے آپ کے فون کو موبائل ڈیٹا کنکشن کی ضرورت ہے۔"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"بصری صوتی میل کو فعال نہیں کیا جا سکتا"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"بصری صوتی میل اپ ڈیٹ نہیں ہو سکتی"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"‏جب آپ کا Wi-Fi یا سیلولر کنکشن بہتر تو دوبارہ کوشش کریں۔ صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"جب آپ کا سیلولر ڈیٹا کنکشن بہتر تو دوبارہ کوشش کریں۔ صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"‏جب آپ کا Wi-Fi یا موبائل کنکشن بہتر تو دوبارہ کوشش کریں۔ صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"جب آپ کا موبائل ڈیٹا کنکشن بہتر تو دوبارہ کوشش کریں۔ صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"بصری صوتی میل اپ ڈیٹ نہیں ہو سکتی"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"بصری صوتی میل اپ ڈیٹ نہیں ہو سکتی"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"کچھ غلط ہوگیا"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"براہ کرم <xliff:g id="NUMBER">%1$s</xliff:g> پر کسٹمر سروس سے رابطہ کریں اور انہیں بتائیں کہ خرابی کا کوڈ 9999 ہے۔"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"بصری صوتی میل کی شرائط و ضوابط"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"‏بصری صوتی میل استعمال کرنے کیلئے آپ کو Verizon وائرلیس کی شرائط و ضوابط قبول کرنا ہونگی:\n\n‎%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"‏%1$s\n\nصوتی میل استعمال کرنے کیلئے آپ کو Verizon وائرلیس کی شرائط و ضوابط قبول کرنی چاہئیں::\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"بصری صوتی میل آن کریں"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"‎%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"شرائط و ضوابط مسترد کئے جانے کی صورت میں بصری صوتی میل غیر فعال کر دی جائے گی۔"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"بصری صوتی میل کو غیر فعال کریں"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"شرائط و ضوابط مسترد کئے جانے کی صورت میں صوتی میل ٹرانسکرپشن غیر فعال کر دی جائے گی۔"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"صوتی میل ٹرانسکرپشن غیر فعال کریں"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"‏صوتی میل تک رسائی صرف ‎*86 کو کال کرنے سے ہوگی۔ آگے بڑھنے کیلئے صوتی میل کی نئی PIN سیٹ کریں۔"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"‏PIN سیٹ کریں"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-uz/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-uz/strings.xml
index 5583e27..f312074 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-uz/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-uz/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Vizual ovozli pochta faollashtirilmoqda"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Vizual ovozli pochta xizmati faollashtirilmasa, yangi ovozli xabarlar haqida bildirishnoma kelmaydi. Ungacha ovozli pochtaga qo‘ng‘iroq qilib, yangi xabarlarni tinglashingiz mumkin."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizual ovozli pochtani faollashtirib bo‘lmadi"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Telefoningizda uyali aloqa faol ekanligini tekshiring va qayta urinib ko‘ring."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Telefoningizda mobil internet yoqilganligini tekshiring va qayta urinib ko‘ring."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Parvoz rejimini o‘chiring va qayta urinib ko‘ring."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Aloqa yo‘q"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Sizga yangi ovozli pochta xabarlari haqida bildirishnoma kelmaydi. Agar Wi-Fi tarmog‘idan foydalanayotgan bo‘lsangiz, xabarlarni olish uchun shunchaki sinxronlash xususiyatini yoqing."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Sizga yangi ovozli xabarlar haqida bildirishnoma kelmaydi. Wi-Fi tarmog‘iga ulangan qurilmangizda sinxronizatsiya yoqilsa, xabarlar yuklanadi."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Sizga yangi ovozli pochta xabarlari haqida bildirishnoma kelmaydi. Ovozli pochtani sinxronlash uchun parvoz rejimini o‘chiring."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Ovozli pochtani tekshirish uchun mobil internet yoqilgan bo‘lishi lozim."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Ovozli pochtani tekshirish uchun mobil internet yoqilgan bo‘lishi lozim."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizual ovozli pochtani faollashtirib bo‘lmadi"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Ovozli pochtani qo‘ng‘iroq qilib ham tekshirishingiz mumkin."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizual ovozli pochtani yangilab bo‘lmadi"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi tarmog‘iga ulanish imkoni paydo bo‘lganda yoki mobil internet sifati yaxshilanganda qayta urinib ko‘ring. Ovozli pochtani qo‘ng‘iroq qilib ham tekshirishingiz mumkin."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Mobil internet sifati yaxshilanganda qayta urinib ko‘ring. Ovozli pochtani qo‘ng‘iroq qilib ham tekshirishingiz mumkin."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Tezkor Wi-Fi yoki mobil internetdan foydalanish imkoniyati paydo bo‘lganida, qayta urinib ko‘ring. Ovozli pochtani uyali qo‘ng‘iroq orqali ham tekshirish mumkin."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Tezkor mobil internetdan foydalanish imkoniyati paydo bo‘lganida, qayta urinib ko‘ring. Ovozli pochtani uyali qo‘ng‘iroq orqali ham tekshirish mumkin."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizual ovozli pochtani yangilab bo‘lmadi"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Ovozli pochtani qo‘ng‘iroq qilib ham tekshirishingiz mumkin."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizual ovozli pochtani yangilab bo‘lmadi"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Noma’lum xatolik yuz berdi"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"<xliff:g id="NUMBER">%1$s</xliff:g> raqami orqali mijozlarni qo‘llab-quvvatlash markazi bilan bog‘laning va ularga xatolik kodi haqida xabar bering (kod: 9999)."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vizual ovozli pochtadan foydalanish shartlari"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Vizual ovozli pochtadan foydalanish uchun Verizon Wireless xizmatidan foydalanish shartlarini qabul qilish lozim: \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVizual ovozli pochtadan foydalanish uchun Verizon Wireless xizmatidan foydalanish shartlarini qabul qilish lozim:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Vizual ovozli pochtani yoqish"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Agar foydalanish shartlari qabul qilinmasa, vizual ovozli pochta o‘chirib qo‘yiladi."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Vizual ovozli pochta o‘chirib qo‘yilsin"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Agar Foydalanish shartlari qabul qilinmasa, ovozli xabarlarni transkripsiyalash xizmati o‘chirib qo‘yiladi."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Ovozli xabarlarni transkripsiyalash xususiyatini o‘chirib qo‘yish"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ovozli pochta xabarlarini *86 raqamiga qo‘ng‘iroq qilib tinglash mumkin. Davom ettirish uchun ovozli pochtaga yangi PIN kod o‘rnating."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN kod o‘rnatish"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-vi/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-vi/strings.xml
index 029396e..895cf48 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-vi/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-vi/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Đang kích hoạt thư thoại kèm theo hình ảnh"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Bạn có thể không nhận được thông báo thư thoại cho đến khi thư thoại kèm theo hình ảnh được kích hoạt hoàn toàn. Gọi thư thoại để truy xuất tin nhắn mới cho đến khi thư thoại được kích hoạt hoàn toàn."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Không kích hoạt được thư thoại kèm theo hình ảnh"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Đảm bảo điện thoại của bạn có kết nối di động và thử lại."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Đảm bảo điện thoại của bạn có kết nối mạng di động và thử lại."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Hãy tắt chế độ trên máy bay và thử lại."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Không có kết nối"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Bạn sẽ không được thông báo về thư thoại mới. Nếu đang dùng Wi-Fi, bạn có thể kiểm tra thư thoại bằng cách đồng bộ hóa ngay bây giờ."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Bạn sẽ không được thông báo về thư thoại mới. Nếu đang dùng Wi-Fi, bạn có thể kiểm tra thư thoại bằng cách đồng bộ hóa ngay bây giờ."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Bạn sẽ không được thông báo về thư thoại mới. Hãy tắt chế độ trên máy bay để đồng bộ hóa thư thoại của bạn."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Điện thoại của bạn cần kết nối dữ liệu di động để kiểm tra thư thoại."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Điện thoại của bạn cần kết nối dữ liệu di động để kiểm tra thư thoại."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Không kích hoạt được thư thoại kèm theo hình ảnh"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Không cập nhật được thư thoại kèm theo hình ảnh"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Hãy thử lại khi Wi-Fi hoặc kết nối di động của bạn tốt hơn. Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Hãy thử lại khi kết nối dữ liệu di động của bạn tốt hơn. Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Hãy thử lại khi Wi-Fi hoặc kết nối dữ liệu di động của bạn tốt hơn. Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Hãy thử lại khi kết nối dữ liệu di động của bạn tốt hơn. Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Không cập nhật được thư thoại kèm theo hình ảnh"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Không cập nhật được thư thoại kèm theo hình ảnh"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Đã xảy ra lỗi"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Vui lòng liên hệ với bộ phận Dịch vụ khách hàng theo số <xliff:g id="NUMBER">%1$s</xliff:g> và cho họ biết mã lỗi là 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Điều khoản và điều kiện của thư thoại kèm theo hình ảnh"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Bạn phải chấp nhận điều khoản và điều kiện của Verizon Wireless để sử dụng thư thoại kèm theo hình ảnh:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nBạn phải chấp nhận điều khoản và điều kiện của Verizon Wireless để sử dụng thư thoại kèm theo hình ảnh:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Bật Thư thoại kèm theo hình ảnh"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Thư thoại kèm theo hình ảnh sẽ bị tắt nếu điều khoản và điều kiện bị từ chối."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Tắt thư thoại kèm theo hình ảnh"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ghi âm thư thoại sẽ bị vô hiệu hóa nếu bạn từ chối điều khoản và điều kiện."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Vô hiệu hóa ghi âm thư thoại"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Bạn chỉ có thể truy cập thư thoại bằng cách gọi *86. Hãy đặt mã PIN thư thoại mới để tiếp tục."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Đặt mã PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-zh-rCN/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-zh-rCN/strings.xml
index faa36de..deb0185 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-zh-rCN/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"正在激活可视语音信箱"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"在可视语音信箱未完全激活前，您可能不会收到新语音邮件通知。在完全激活前，请呼叫语音信箱以获取新邮件。"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"无法激活可视语音信箱"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"请确保您的手机已连接到移动网络，然后重试。"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"请确保您的手机已连接到移动网络，然后重试。"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"请关闭飞行模式，然后重试。"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"无网络连接"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"您将不会收到关于新语音邮件的通知。如果您已连接到 WLAN 网络，则可以立即同步以便查看语音邮件。"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"您将不会收到关于新语音邮件的通知。如果您已连接到 WLAN 网络，则可以立即同步以便查看语音邮件。"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"您将不会收到关于新语音邮件的通知。请关闭飞行模式以便同步语音信箱。"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"要查看语音邮件，您的手机需要连接到移动数据网络。"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"要查看语音邮件，您的手机需要连接到移动数据网络。"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"无法激活可视语音信箱"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"您仍然可以通过拨打电话来查看语音邮件。"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"无法更新可视语音信箱"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"请在 WLAN 或移动网络连接信号较强时重试。您仍然可以通过拨打电话来查看语音邮件。"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"请在移动数据网络连接信号较强时重试。您仍然可以通过拨打电话来查看语音邮件。"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"请在 WLAN 或移动网络连接信号较强时重试。您仍然可以通过拨打电话来查看语音邮件。"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"请在移动数据网络连接信号较强时重试。您仍然可以通过拨打电话来查看语音邮件。"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"无法更新可视语音信箱"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"您仍然可以通过拨打电话来查看语音邮件。"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"无法更新可视语音信箱"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"出了点问题"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"请拨打 <xliff:g id="NUMBER">%1$s</xliff:g> 联系客户服务人员，并告诉他们错误代码是 9999。"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"可视语音信箱条款及条件"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"您必须接受 Verizon Wireless 的条款及条件，才能使用可视语音信箱：\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\n您必须接受 Verizon Wireless 的条款及条件才能使用可视语音信箱：\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"启用可视语音信箱"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"如果您拒绝接受条款及条件，可视语音信箱将被停用。"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"停用可视语音信箱"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"如果您拒绝接受条款及条件，语音邮件转录功能将被停用。"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"停用语音邮件转录功能"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"您只能通过拨打 *86 来访问语音信箱。请先设置新的语音信箱 PIN 码再继续操作。"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"设置 PIN 码"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-zh-rHK/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-zh-rHK/strings.xml
index e51a0a9..add6d1a 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-zh-rHK/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"正在啟用視像留言"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"視像留言完全啟用前，您可能無法接收留言通知。請致電留言信箱以取得新訊息，直至視像留言完全啟用。"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"無法啟用視像留言"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"請確定您的手機有數據連線，然後再試一次。"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"請確定您的手機有數據連線，然後再試一次。"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"關閉飛行模式，然後再試一次。"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"沒有連線"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"您不會收到新留言通知。如果您使用的是 Wi-Fi，可以立即透過同步處理的方式查看是否有留言。"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"您不會收到新留言通知。如果您使用的是 Wi-Fi，可以立即透過同步處理的方式查看是否有留言。"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"您不會收到新留言通知。請關閉飛行模式，以便同步處理留言信箱。"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"您的手機需要有流動數據連線，才能查看留言信箱。"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"您的手機需要有流動數據連線，才能查看留言。"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"無法啟用視像留言"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"您仍可撥號以查看留言信箱。"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"無法更新視像留言信箱"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"請在您的 Wi-Fi 或數據連線品質較佳時再試一次。您仍可撥號以查看留言信箱。"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"請在您的數據連線品質較佳時再試一次。您仍可撥號以查看留言信箱。"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"請在您的 Wi-Fi 或數據連線品質較佳時再試一次。您仍可撥號以查看留言。"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"請在您的數據連線品質較佳時再試一次。您仍可撥號以查看留言。"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"無法更新視像留言信箱"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"您仍可撥號以查看留言信箱。"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"無法更新視像留言信箱"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"發生問題"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"請致電 <xliff:g id="NUMBER">%1$s</xliff:g> 聯絡客戶服務，並提供錯誤代碼 9999。"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"視像留言條款及細則"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"您必須接受 Verizon Wireless 的條款及細則，才能使用視像留言：\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\n您必須接受 Verizon Wireless 條款及細則，才能使用視像留言：\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"啟用視像留言"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"如果拒絕條款及細則，視像留言將會停用。"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"停用視像留言"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"如果拒絕條款及細則，留言轉錄功能將會停用。"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"停用留言轉錄功能"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"您只可以撥打 *86 使用留言信箱。請先設定新留言信箱 PIN 碼，然後繼續。"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"設定 PIN 碼"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-zh-rTW/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-zh-rTW/strings.xml
index 7f2e1d6..5937bb1 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-zh-rTW/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"啟用視覺化語音信箱"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"您必須完整啟用視覺化語音信箱，才會收到語音留言通知。在未完整啟用這項功能之前，如要擷取新訊息，請撥打語音信箱號碼。"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"無法啟用視覺化語音信箱"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"請確定您的手機能收到訊號，然後再試一次。"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"請確認你的手機已連上行動網路，然後再試一次。"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"請關閉飛航模式，然後再試一次。"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"沒有訊號"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"您不會收到新的語音留言通知。如果您已連上 Wi-Fi，立即執行同步處理，就能檢查是否有語音留言。"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"你不會收到新的語音留言通知。如果你已連上 Wi-Fi 網路，立即執行同步處理就能檢查是否有語音留言。"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"您不會收到新的語音留言通知。請關閉飛航模式，以便同步處理語音留言。"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"手機必須要有數據連線才能檢查語音留言。"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"手機必須要有行動數據連線才能檢查語音留言。"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"無法啟用視覺化語音信箱"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"您也可以撥打電話來檢查語音留言。"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"無法更新視覺化語音信箱"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"請在 Wi-Fi 連線品質較佳或手機訊號較強時再試一次。您也可以撥打電話來檢查語音留言。"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"請在數據連線品質較佳時再試一次。您也可以撥打電話來檢查語音留言。"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"請在 Wi‑Fi 或行動網路連線品質較佳時再試一次。你還是可以撥打電話來檢查語音留言。"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"請在行動網路連線品質較佳時再試一次。你還是可以撥打電話來檢查語音留言。"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"無法更新視覺化語音信箱"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"您也可以撥打電話來檢查語音留言。"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"無法更新視覺化語音信箱"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"發生錯誤"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"請撥打 <xliff:g id="NUMBER">%1$s</xliff:g> 與客服人員聯絡，並告訴對方錯誤代碼為 9999。"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"視覺化語音信箱條款及細則"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"你必須接受 Verizon Wireless 的條款及細則，才能使用視覺化語音信箱：\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\n你必須接受 Verizon Wireless 的條款及細則才能使用視覺化語音信箱：\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"啟用視覺化語音信箱"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"如果你拒絕接受相關條款及細則，系統將停用視覺化語音信箱功能。"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"停用視覺化語音信箱"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"如果拒絕接受條款及細則，系統將停用語音信箱留言轉錄功能。"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"停用語音信箱留言轉錄"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"必須撥打 *86 才能聽取語音信箱。如要繼續進行，請先設定新的語音信箱密碼。"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"設定語音信箱密碼"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-zu/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-zu/strings.xml
index 8d3cd79..5b31e3a 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-zu/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-zu/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Yenza kusebenze ivoyisimeyili ebonakalayo"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Kungenzeka ungatholi izaziso zevoyisimeyili kuze kwenziwe kusebenze ngokugcwele ivoyisimeyili ebonakalayo. Shayela ivoyisimeyili ukuze uthole imilayezo emisha kuze kwenziwe kusebenze ngokugcwele ivoyisimeyili."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Ayikwazi ukwenza kusebenze ivoyisimeyili ebonakalayo"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Qiniseka ukuthi ifoni yakho inokuxhumeka kweselula uphinde uzame futhi."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Qiniseka ukuthi ifoni yakho inoxhumo lenethiwekhi leselula bese uyazama futhi."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Vala imodi yendiza uphinde uzame futhi."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Akukho ukuxhumana"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Ngeke uze waziswe ngamavoyisimeyili amasha. Uma uku-Wi-Fi, ungahlolela ivoyisimeyili ngokuvumelanisa manje."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Ngeke uze waziswe ngamavoyisimeyili amasha. Uma uku-Wi-Fi, ungahlolela ivoyisimeyili ngokuvumelanisa manje."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Ngeke waziswe ngamavoyisimeyili amasha. Vala imodi yendiza ukuze uvumelanise ivoyisimeyili yakho."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Ifoni yakho idinga ukuxhumeka kwedatha yeselula ukuze ihlole ivoyisimeyili."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Ifoni yakho idinga ukuxhumeka kwedatha yeselula ukuze ihlole ivoyisimeyili."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Ayikwazi ukwenza kusebenze ivoyisimeyili ebonakalayo"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Usengashaya ukuze uhlole ivoyisimeyili"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ayikwazi ukubuyekeza ivoyisimeyili ebonakalayo"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Zama futhi uma i-Wi-Fi yakho noma ukuxhumeka kwakho kweselula kungcono. Usengashaya ukuze uhlole ivoyisimeyili."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Zama futhi uma ukuxhumeka kwakho kweselula sekungcono. Usengashaya ukuze uhlole ivoyisimeyili."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Zama futhi uma i-Wi-Fi yakho noma ukuxhumeka kwakho kwedatha kungcono. Usengashaya ukuze uhlole ivoyisimeyili."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Zama futhi uma ukuxhumeka kwakho kwedaha sekungcono. Usengashaya ukuze uhlole ivoyisimeyili."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ayikwazi ukubuyekeza ivoyisimeyili ebonakalayo"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Usengashaya ukuze uhlole ivoyisimeyili"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ayikwazi ukubuyekeza ivoyisimeyili ebonakalayo"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Kukhona okungahambanga kahle"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Sicela uxhumane Nesevisi Yekhasimende ku-<xliff:g id="NUMBER">%1$s</xliff:g> uphinde ubatshele ukuthi ikhodi yephutha ngu-9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Imigomo nemibandela ye-Visual Voicemail"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Kufanele wamukele imigomo nemibandela ye-Verizon Wireless ukuze usebenzise i-visual voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nKufanele wamukele imogomo nemibandela ye-Verizon Wireless ukuze usebenzise ivoyisimeyili yokubuka:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Vula ivoyisimeyili yokubuka"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"I-Visual voicemail izokhutshazwa uma imigomo nemibandela inqatshawa."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Khubaza i-visual voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ukubhalwa kweviyisimeyili kuizokhutshazwa uma imigomo nemibandela inqatshawa."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Khuyaza ukubhalwa kwevoyisimeyili"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ivoyisimeyili izofinyeleleka kuphela ngokushayela ku-*86. Setha iphinikhodi entsha yevoyisimeyili ukuze uqhubeke."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Setha iphinikhodi"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values/dimens.xml b/java/com/android/dialer/app/voicemail/error/res/values/dimens.xml
index 090311f..dd815ca 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values/dimens.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values/dimens.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
 <resources>
   <dimen name="alert_icon_size">24dp</dimen>
   <dimen name="alert_start_padding">16dp</dimen>
@@ -22,4 +38,6 @@
   <dimen name="voicemail_promo_card_line_spacing">4dp</dimen>
   <dimen name="voicemail_promo_card_title_text_size">16sp</dimen>
   <dimen name="voicemail_promo_card_message_size">14sp</dimen>
-</resources>
\ No newline at end of file
+
+  <dimen name="voicemail_tos_image_size">200dp</dimen>
+</resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values/strings.xml
index 94d3dba..80349e1 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values/strings.xml
@@ -21,20 +21,20 @@
   <string name="voicemail_error_activating_message">You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated.</string>
 
   <string name="voicemail_error_not_activate_no_signal_title">Can\'t activate visual voicemail</string>
-  <string name="voicemail_error_not_activate_no_signal_message">Make sure your phone has cellular connection and try again.</string>
+  <string name="voicemail_error_not_activate_no_signal_message">Make sure your phone has a mobile network connection and try again.</string>
   <string name="voicemail_error_not_activate_no_signal_airplane_mode_message">Turn off airplane mode and try again.</string>
 
   <string name="voicemail_error_no_signal_title">No connection</string>
-  <string name="voicemail_error_no_signal_message">You won\'t be notified for new voicemails. If you\'re on Wi-Fi, you can check for voicemail by syncing now.</string>
+  <string name="voicemail_error_no_signal_message">You won\'t be notified for new voicemails. If you\'re on Wi\u2011Fi, you can check for voicemail by syncing now.</string>
   <string name="voicemail_error_no_signal_airplane_mode_message">You won\'t be notified for new voicemails. Turn off airplane mode to sync your voicemail.</string>
-  <string name="voicemail_error_no_signal_cellular_required_message">Your phone needs a cellular data connection to check voicemail.</string>
+  <string name="voicemail_error_no_signal_cellular_required_message">Your phone needs a mobile data connection to check voicemail.</string>
 
   <string name="voicemail_error_activation_failed_title">Can\'t activate visual voicemail</string>
   <string name="voicemail_error_activation_failed_message">You can still call to check voicemail.</string>
 
   <string name="voicemail_error_no_data_title">Can\'t update visual voicemail</string>
-  <string name="voicemail_error_no_data_message">Try again when your Wi-Fi or cellular connection is better. You can still call to check voicemail.</string>
-  <string name="voicemail_error_no_data_cellular_required_message">Try again when your cellular data connection is better. You can still call to check voicemail.</string>
+  <string name="voicemail_error_no_data_message">Try again when your Wi\u2011Fi or mobile data connection is better. You can still call to check voicemail.</string>
+  <string name="voicemail_error_no_data_cellular_required_message">Try again when your mobile data connection is better. You can still call to check voicemail.</string>
 
   <string name="voicemail_error_bad_config_title">Can\'t update visual voicemail</string>
   <string name="voicemail_error_bad_config_message">You can still call to check voicemail.</string>
@@ -141,7 +141,10 @@
   <string translatable="false" name="verizon_domestic_customer_support_display_number">(800) 922–0204</string>
 
   <string name="verizon_terms_and_conditions_title">Visual Voicemail Terms and Conditions</string>
-  <string name="verizon_terms_and_conditions_message">You must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%s</string>
+  <string name="verizon_terms_and_conditions_message">%1$s\n\nYou must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%2$s</string>
+
+  <string name="dialer_terms_and_conditions_title">Turn on Visual Voicemail</string>
+  <string name="dialer_terms_and_conditions_message">%s</string>
 
   <string translatable="false" name="verizon_terms_and_conditions_1.1_english">
 Visual Voice Mail (VVM) is a service that provides access to voice mail messages directly on the device, without the need to call *86. This service requires traditional Voice Mail but does not support all traditional Voice Mail features, which you can access by dialing *86 from your handset. Use of this feature will be billed on a per-megabyte basis, or according to any data package you have. Mobile to mobile minutes do not apply. Standard rates apply to any calls, emails or messages initiated from Visual Voice Mail.\n
@@ -152,7 +155,7 @@
 \n
 Speech recordings may be collected and stored for a period of 30 days, solely for the purpose of testing and improving transcription technology and performance, subject to the Verizon Wireless Privacy Policy, which can be found at http://www.verizon.com/about/privacy/policy/\n
 \n
-You understand that by selecting ACCEPT, your messages will be stored and anyone in possession of this device will have access to your voice mail. You further understand that your voice mail messages may be stored in electronic format on this device. To limit unauthorized access to your voice mail, you should consider locking your phone when not in use. Not available in all areas or over Wi-Fi.\n
+You understand that by selecting ACCEPT, your messages will be stored and anyone in possession of this device will have access to your voice mail. You further understand that your voice mail messages may be stored in electronic format on this device. To limit unauthorized access to your voice mail, you should consider locking your phone when not in use. Not available in all areas or over Wi\u2011Fi.\n
 \n
 If you do not accept all of these terms and conditions, do not use Visual Voice Mail.  </string>
 
@@ -165,19 +168,35 @@
 \n
 Es posible que reunamos y almacenemos grabaciones de voz durante 30 días, con el único fin de probar y mejorar el rendimiento y la tecnología de la transcripción, sujeto a la Política de privacidad de Verizon Wireless, disponible en http://www.verizon.com/about/privacy/policy/.\n
 \n
-Entiende que, al seleccionar ACEPTAR, sus mensajes se almacenarán, y cualquier persona que disponga de este dispositivo tendrá acceso al buzón de voz. Entiende, además, que los mensajes de voz pueden almacenarse en formato electrónico en este dispositivo. Para limitar el acceso no autorizado al buzón de voz, debe considerar el bloqueo del teléfono cuando no está en uso. No está disponible en todas las áreas ni mediante Wi-Fi.\n
+Entiende que, al seleccionar ACEPTAR, sus mensajes se almacenarán, y cualquier persona que disponga de este dispositivo tendrá acceso al buzón de voz. Entiende, además, que los mensajes de voz pueden almacenarse en formato electrónico en este dispositivo. Para limitar el acceso no autorizado al buzón de voz, debe considerar el bloqueo del teléfono cuando no está en uso. No está disponible en todas las áreas ni mediante Wi\u2011Fi.\n
 \n
 Si no acepta todos estos términos y condiciones, no use el buzón de voz visual.
   </string>
 
-  <string translatable="false" name="verizon_terms_and_conditions_accept_english">Accept</string>
+  <string translatable="false" name="dialer_terms_and_conditions_1.0_english">
+  See and listen to your messages, without having to call voicemail.\nGet transcripts of your voicemail using Google’s transcription service.
+  </string>
+
+  <string translatable="false" name="dialer_terms_and_conditions_1.0_spanish">
+  ***TRANSLATE TO SPANISH***\nSee and listen to your messages, without having to call voicemail.\nGet transcripts of your voicemail using Google’s transcription service.
+  </string>
+
+  <string translatable="false" name="verizon_terms_and_conditions_accept_english">Turn On</string>
   <string translatable="false" name="verizon_terms_and_conditions_accept_spanish">Aceptar</string>
-  <string translatable="false" name="verizon_terms_and_conditions_decline_english">Decline</string>
+  <string translatable="false" name="verizon_terms_and_conditions_decline_english">No Thanks</string>
   <string translatable="false" name="verizon_terms_and_conditions_decline_spanish">Rechazar</string>
 
+  <string translatable="false" name="dialer_terms_and_conditions_accept_english">Turn On</string>
+  <string translatable="false" name="dialer_terms_and_conditions_accept_spanish">Aceptar</string>
+  <string translatable="false" name="dialer_terms_and_conditions_decline_english">No Thanks</string>
+  <string translatable="false" name="dialer_terms_and_conditions_decline_spanish">Rechazar</string>
+
   <string name="verizon_terms_and_conditions_decline_dialog_message">Visual voicemail will be disabled if the terms and conditions are declined.</string>
   <string name="verizon_terms_and_conditions_decline_dialog_downgrade">Disable visual voicemail</string>
 
+  <string name="dialer_terms_and_conditions_decline_dialog_message">Voicemail transcription will be disabled if the terms and conditions are declined.</string>
+  <string name="dialer_terms_and_conditions_decline_dialog_downgrade">Disable voicemail transcription</string>
+
   <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message">Voicemail will only be accessible by calling *86. Set a new voicemail PIN to proceed.</string>
   <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin">Set PIN</string>
-</resources>
\ No newline at end of file
+</resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values/styles.xml b/java/com/android/dialer/app/voicemail/error/res/values/styles.xml
index c4a8542..257e93d 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values/styles.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values/styles.xml
@@ -1,6 +1,21 @@
 <?xml version="1.0" encoding="utf-8"?>
-<resources>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
 
+<resources>
   <style name="ErrorActionStyle">
     <item name="android:layout_width">wrap_content</item>
     <item name="android:layout_height">48dp</item>
@@ -9,7 +24,23 @@
     <item name="android:paddingEnd">8dp</item>
     <item name="android:layout_marginStart">8dp</item>
     <item name="android:layout_marginEnd">8dp</item>
-    <item name="android:textColor">@color/dialtacts_theme_color</item>
+    <item name="android:textColor">@color/dialer_theme_color</item>
+    <item name="android:fontFamily">"sans-serif-medium"</item>
+    <item name="android:focusable">true</item>
+    <item name="android:singleLine">true</item>
+    <item name="android:textAllCaps">true</item>
+    <item name="android:textSize">14sp</item>
+  </style>
+
+  <style name="ErrorActionDeclineStyle">
+    <item name="android:layout_width">wrap_content</item>
+    <item name="android:layout_height">48dp</item>
+    <item name="android:gravity">end|center_vertical</item>
+    <item name="android:paddingStart">8dp</item>
+    <item name="android:paddingEnd">8dp</item>
+    <item name="android:layout_marginStart">8dp</item>
+    <item name="android:layout_marginEnd">8dp</item>
+    <item name="android:textColor">@color/dialer_secondary_text_color</item>
     <item name="android:fontFamily">"sans-serif-medium"</item>
     <item name="android:focusable">true</item>
     <item name="android:singleLine">true</item>
@@ -23,4 +54,4 @@
     <item name="android:textSize">14sp</item>
     <item name="android:layout_height">@dimen/call_log_action_height</item>
   </style>
-</resources>
\ No newline at end of file
+</resources>
diff --git a/java/com/android/dialer/app/widget/DialpadSearchEmptyContentView.java b/java/com/android/dialer/app/widget/DialpadSearchEmptyContentView.java
index 85fd5ec..5846b1f 100644
--- a/java/com/android/dialer/app/widget/DialpadSearchEmptyContentView.java
+++ b/java/com/android/dialer/app/widget/DialpadSearchEmptyContentView.java
@@ -21,6 +21,7 @@
 import android.widget.LinearLayout;
 import com.android.dialer.app.R;
 import com.android.dialer.util.OrientationUtil;
+import com.android.dialer.widget.EmptyContentView;
 
 /** Empty content view to be shown when dialpad is visible. */
 public class DialpadSearchEmptyContentView extends EmptyContentView {
diff --git a/java/com/android/dialer/app/widget/EmptyContentView.java b/java/com/android/dialer/app/widget/EmptyContentView.java
deleted file mode 100644
index cfc8665..0000000
--- a/java/com/android/dialer/app/widget/EmptyContentView.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * Copyright (C) 2015 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.dialer.app.widget;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-import com.android.dialer.app.R;
-
-public class EmptyContentView extends LinearLayout implements View.OnClickListener {
-
-  /** Listener to call when action button is clicked. */
-  public interface OnEmptyViewActionButtonClickedListener {
-    void onEmptyViewActionButtonClicked();
-  }
-
-  public static final int NO_LABEL = 0;
-  public static final int NO_IMAGE = 0;
-
-  private ImageView mImageView;
-  private TextView mDescriptionView;
-  private TextView mActionView;
-  private OnEmptyViewActionButtonClickedListener mOnActionButtonClickedListener;
-
-  public EmptyContentView(Context context) {
-    this(context, null);
-  }
-
-  public EmptyContentView(Context context, AttributeSet attrs) {
-    this(context, attrs, 0);
-  }
-
-  public EmptyContentView(Context context, AttributeSet attrs, int defStyleAttr) {
-    this(context, attrs, defStyleAttr, 0);
-  }
-
-  public EmptyContentView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
-    super(context, attrs, defStyleAttr, defStyleRes);
-    inflateLayout();
-
-    // Don't let touches fall through the empty view.
-    setClickable(true);
-    mImageView = (ImageView) findViewById(R.id.emptyListViewImage);
-    mDescriptionView = (TextView) findViewById(R.id.emptyListViewMessage);
-    mActionView = (TextView) findViewById(R.id.emptyListViewAction);
-    mActionView.setOnClickListener(this);
-  }
-
-  public void setDescription(int resourceId) {
-    if (resourceId == NO_LABEL) {
-      mDescriptionView.setText(null);
-      mDescriptionView.setVisibility(View.GONE);
-    } else {
-      mDescriptionView.setText(resourceId);
-      mDescriptionView.setVisibility(View.VISIBLE);
-    }
-  }
-
-  public void setImage(int resourceId) {
-    if (resourceId == NO_LABEL) {
-      mImageView.setImageDrawable(null);
-      mImageView.setVisibility(View.GONE);
-    } else {
-      mImageView.setImageResource(resourceId);
-      mImageView.setVisibility(View.VISIBLE);
-    }
-  }
-
-  public void setActionLabel(int resourceId) {
-    if (resourceId == NO_LABEL) {
-      mActionView.setText(null);
-      mActionView.setVisibility(View.GONE);
-    } else {
-      mActionView.setText(resourceId);
-      mActionView.setVisibility(View.VISIBLE);
-    }
-  }
-
-  public boolean isShowingContent() {
-    return mImageView.getVisibility() == View.VISIBLE
-        || mDescriptionView.getVisibility() == View.VISIBLE
-        || mActionView.getVisibility() == View.VISIBLE;
-  }
-
-  public void setActionClickedListener(OnEmptyViewActionButtonClickedListener listener) {
-    mOnActionButtonClickedListener = listener;
-  }
-
-  @Override
-  public void onClick(View v) {
-    if (mOnActionButtonClickedListener != null) {
-      mOnActionButtonClickedListener.onEmptyViewActionButtonClicked();
-    }
-  }
-
-  protected void inflateLayout() {
-    setOrientation(LinearLayout.VERTICAL);
-    final LayoutInflater inflater =
-        (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
-    inflater.inflate(R.layout.empty_content_view, this);
-  }
-
-}
diff --git a/java/com/android/dialer/app/widget/SearchEditTextLayout.java b/java/com/android/dialer/app/widget/SearchEditTextLayout.java
index f83c482..95bd12a 100644
--- a/java/com/android/dialer/app/widget/SearchEditTextLayout.java
+++ b/java/com/android/dialer/app/widget/SearchEditTextLayout.java
@@ -52,7 +52,6 @@
   private View mVoiceSearchButtonView;
   private View mOverflowButtonView;
   private View mBackButtonView;
-  private View mExpandedSearchBox;
   private View mClearButtonView;
 
   private ValueAnimator mAnimator;
@@ -90,20 +89,27 @@
     mVoiceSearchButtonView = findViewById(R.id.voice_search_button);
     mOverflowButtonView = findViewById(R.id.dialtacts_options_menu_button);
     mBackButtonView = findViewById(R.id.search_back_button);
-    mExpandedSearchBox = findViewById(R.id.search_box_expanded);
+    mBackButtonView
+        .getResources()
+        .getDrawable(R.drawable.quantum_ic_arrow_back_vd_theme_24, null)
+        .setAutoMirrored(true);
     mClearButtonView = findViewById(R.id.search_close_button);
 
-    // Convert a long click into a click to expand the search box, and then long click on the
-    // search view. This accelerates the long-press scenario for copy/paste.
+    // Convert a long click into a click to expand the search box. Touch events are also
+    // forwarded to the searchView. This accelerates the long-press scenario for copy/paste.
     mCollapsed.setOnLongClickListener(
         new OnLongClickListener() {
           @Override
           public boolean onLongClick(View view) {
             mCollapsed.performClick();
-            mSearchView.performLongClick();
             return false;
           }
         });
+    mCollapsed.setOnTouchListener(
+        (v, event) -> {
+          mSearchView.onTouchEvent(event);
+          return false;
+        });
 
     mSearchView.setOnFocusChangeListener(
         new OnFocusChangeListener() {
@@ -212,7 +218,7 @@
       AnimUtils.crossFadeViews(mExpanded, mCollapsed, ANIMATION_DURATION);
       mAnimator = ValueAnimator.ofFloat(EXPAND_MARGIN_FRACTION_START, 0f);
       setMargins(EXPAND_MARGIN_FRACTION_START);
-      prepareAnimator(true);
+      prepareAnimator();
     } else {
       mExpanded.setVisibility(View.VISIBLE);
       mExpanded.setAlpha(1);
@@ -241,7 +247,7 @@
     if (animate) {
       AnimUtils.crossFadeViews(mCollapsed, mExpanded, ANIMATION_DURATION);
       mAnimator = ValueAnimator.ofFloat(0f, 1f);
-      prepareAnimator(false);
+      prepareAnimator();
     } else {
       mCollapsed.setVisibility(View.VISIBLE);
       mCollapsed.setAlpha(1);
@@ -279,7 +285,7 @@
     }
   }
 
-  private void prepareAnimator(final boolean expand) {
+  private void prepareAnimator() {
     if (mAnimator != null) {
       mAnimator.cancel();
     }
diff --git a/java/com/android/dialer/backup/DialerBackupAgent.java b/java/com/android/dialer/backup/DialerBackupAgent.java
index dec1ca1..40de8e2 100644
--- a/java/com/android/dialer/backup/DialerBackupAgent.java
+++ b/java/com/android/dialer/backup/DialerBackupAgent.java
@@ -34,8 +34,8 @@
 import android.telecom.PhoneAccountHandle;
 import android.util.Pair;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.telecom.TelecomUtil;
diff --git a/java/com/android/dialer/backup/DialerBackupUtils.java b/java/com/android/dialer/backup/DialerBackupUtils.java
index 17e82e4..fe714f6 100644
--- a/java/com/android/dialer/backup/DialerBackupUtils.java
+++ b/java/com/android/dialer/backup/DialerBackupUtils.java
@@ -31,8 +31,8 @@
 import android.telecom.TelecomManager;
 import android.util.Pair;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.voicemail.VoicemailComponent;
 import com.google.common.io.ByteStreams;
 import com.google.common.io.Files;
diff --git a/java/com/android/dialer/backup/proto/voicemail_info.proto b/java/com/android/dialer/backup/proto/voicemail_info.proto
index b74cce9..7497683 100644
--- a/java/com/android/dialer/backup/proto/voicemail_info.proto
+++ b/java/com/android/dialer/backup/proto/voicemail_info.proto
@@ -4,6 +4,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 package com.android.dialer.backup;
 
 // Next id: 20
diff --git a/java/com/android/dialer/binary/aosp/AospDialerRootComponent.java b/java/com/android/dialer/binary/aosp/AospDialerRootComponent.java
index 595401c..6a7c588 100644
--- a/java/com/android/dialer/binary/aosp/AospDialerRootComponent.java
+++ b/java/com/android/dialer/binary/aosp/AospDialerRootComponent.java
@@ -18,6 +18,8 @@
 
 import com.android.dialer.binary.basecomponent.BaseDialerRootComponent;
 import com.android.dialer.calllog.CallLogModule;
+import com.android.dialer.common.concurrent.DialerExecutorModule;
+import com.android.dialer.configprovider.SharedPrefConfigProviderModule;
 import com.android.dialer.enrichedcall.stub.StubEnrichedCallModule;
 import com.android.dialer.inject.ContextModule;
 import com.android.dialer.lightbringer.stub.StubLightbringerModule;
@@ -34,6 +36,8 @@
   modules = {
     CallLogModule.class,
     ContextModule.class,
+    DialerExecutorModule.class,
+    SharedPrefConfigProviderModule.class,
     SimulatorModule.class,
     StubCallLocationModule.class,
     StubEnrichedCallModule.class,
diff --git a/java/com/android/dialer/binary/aosp/testing/AndroidManifest.xml b/java/com/android/dialer/binary/aosp/testing/AndroidManifest.xml
new file mode 100644
index 0000000..15870cb
--- /dev/null
+++ b/java/com/android/dialer/binary/aosp/testing/AndroidManifest.xml
@@ -0,0 +1,24 @@
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialer.binary.aosp.testing">
+
+  <application>
+    <activity android:name="com.android.dialer.binary.aosp.testing.TestActivity"/>
+  </application>
+
+</manifest>
diff --git a/java/com/android/dialer/binary/aosp/testing/TestActivity.java b/java/com/android/dialer/binary/aosp/testing/TestActivity.java
new file mode 100644
index 0000000..9cb26da
--- /dev/null
+++ b/java/com/android/dialer/binary/aosp/testing/TestActivity.java
@@ -0,0 +1,25 @@
+/*
+ * Copyright (C) 2017 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.dialer.binary.aosp.testing;
+
+import android.app.Activity;
+
+/**
+ * An empty Activity to use in tests. This can be useful when UI needs to be tested outside an
+ * Activity, either as a background or to keep the test framework running.
+ */
+public class TestActivity extends Activity {}
diff --git a/java/com/android/dialer/binary/basecomponent/BaseDialerRootComponent.java b/java/com/android/dialer/binary/basecomponent/BaseDialerRootComponent.java
index 2deb7fd..8ac071f 100644
--- a/java/com/android/dialer/binary/basecomponent/BaseDialerRootComponent.java
+++ b/java/com/android/dialer/binary/basecomponent/BaseDialerRootComponent.java
@@ -17,8 +17,12 @@
 package com.android.dialer.binary.basecomponent;
 
 import com.android.dialer.calllog.CallLogComponent;
+import com.android.dialer.calllog.database.CallLogDatabaseComponent;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
+import com.android.dialer.configprovider.ConfigProviderComponent;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.lightbringer.LightbringerComponent;
+import com.android.dialer.main.MainComponent;
 import com.android.dialer.simulator.SimulatorComponent;
 import com.android.incallui.calllocation.CallLocationComponent;
 import com.android.incallui.maps.MapsComponent;
@@ -31,6 +35,10 @@
 public interface BaseDialerRootComponent
     extends CallLocationComponent.HasComponent,
         CallLogComponent.HasComponent,
+        CallLogDatabaseComponent.HasComponent,
+        ConfigProviderComponent.HasComponent,
+        DialerExecutorComponent.HasComponent,
+        MainComponent.HasComponent,
         EnrichedCallComponent.HasComponent,
         MapsComponent.HasComponent,
         SimulatorComponent.HasComponent,
diff --git a/java/com/android/dialer/binary/common/DialerApplication.java b/java/com/android/dialer/binary/common/DialerApplication.java
index a4c2e7d..08666a2 100644
--- a/java/com/android/dialer/binary/common/DialerApplication.java
+++ b/java/com/android/dialer/binary/common/DialerApplication.java
@@ -20,6 +20,7 @@
 import android.os.StrictMode;
 import android.os.Trace;
 import android.support.annotation.NonNull;
+import android.support.v4.os.BuildCompat;
 import com.android.dialer.blocking.BlockedNumbersAutoMigrator;
 import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
 import com.android.dialer.buildtype.BuildType;
@@ -49,14 +50,17 @@
     CallLogComponent.get(this).callLogFramework().registerContentObservers(getApplicationContext());
     PersistentLogger.initialize(this);
 
-    NotificationChannelManager.getInstance().firstInitIfNeeded(this);
+    if (BuildCompat.isAtLeastO()) {
+      NotificationChannelManager.initChannels(this);
+    }
     Trace.endSection();
   }
 
   private void enableStrictMode() {
     StrictMode.setThreadPolicy(
-        new StrictMode.ThreadPolicy.Builder().detectAll().penaltyDeath().build());
-    StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectAll().penaltyDeath().build());
+        new StrictMode.ThreadPolicy.Builder().detectAll().penaltyLog().penaltyDeath().build());
+    StrictMode.setVmPolicy(
+        new StrictMode.VmPolicy.Builder().detectAll().penaltyLog().penaltyDeath().build());
   }
 
   /**
diff --git a/java/com/android/dialer/blocking/FilteredNumbersUtil.java b/java/com/android/dialer/blocking/FilteredNumbersUtil.java
index cdcf1f7..9e0c23c 100644
--- a/java/com/android/dialer/blocking/FilteredNumbersUtil.java
+++ b/java/com/android/dialer/blocking/FilteredNumbersUtil.java
@@ -27,6 +27,7 @@
 import android.provider.Settings;
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
+import android.support.v4.os.BuildCompat;
 import android.support.v4.os.UserManagerCompat;
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
@@ -35,8 +36,7 @@
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.logging.InteractionEvent;
 import com.android.dialer.logging.Logger;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
+import com.android.dialer.notification.NotificationChannelId;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.PermissionsUtil;
 import java.util.concurrent.TimeUnit;
@@ -45,8 +45,7 @@
 public class FilteredNumbersUtil {
 
   public static final String CALL_BLOCKING_NOTIFICATION_TAG = "call_blocking";
-  public static final int CALL_BLOCKING_DISABLED_BY_EMERGENCY_CALL_NOTIFICATION_ID =
-      R.id.notification_call_blocking_disabled_by_emergency_call;
+  public static final int CALL_BLOCKING_DISABLED_BY_EMERGENCY_CALL_NOTIFICATION_ID = 10;
   // Pref key for storing the time of end of the last emergency call in milliseconds after epoch.\
   @VisibleForTesting
   public static final String LAST_EMERGENCY_CALL_MS_PREF_KEY = "last_emergency_call_ms";
@@ -254,7 +253,9 @@
                         context.getString(R.string.call_blocking_disabled_notification_text))
                     .setAutoCancel(true);
 
-            NotificationChannelManager.applyChannel(builder, context, Channel.DEFAULT, null);
+            if (BuildCompat.isAtLeastO()) {
+              builder.setChannelId(NotificationChannelId.DEFAULT);
+            }
             builder.setContentIntent(
                 PendingIntent.getActivity(
                     context,
diff --git a/java/com/android/dialer/blocking/res/values-hu/strings.xml b/java/com/android/dialer/blocking/res/values-hu/strings.xml
index 1070454..7981d6c 100644
--- a/java/com/android/dialer/blocking/res/values-hu/strings.xml
+++ b/java/com/android/dialer/blocking/res/values-hu/strings.xml
@@ -33,7 +33,7 @@
     <string name="block_number_undo" msgid="5158120911892491697">"VISSZAVONÁS"</string>
     <string name="send_to_voicemail_import_failed" msgid="1012752662074208237">"Az importálás nem sikerült"</string>
     <string name="call_blocking_disabled_notification_title" msgid="7211352205255347489">"A hívások tiltása funkció kikapcsolva 48 órára"</string>
-    <string name="call_blocking_disabled_notification_text" msgid="141384084865180722">"Letiltva vészhívás miatt."</string>
+    <string name="call_blocking_disabled_notification_text" msgid="141384084865180722">"Letiltva segélyhívás miatt."</string>
     <string name="block_report_number_alert_title" msgid="2740581989824959611">"Letiltja a következő számot: <xliff:g id="NUMBER">%1$s</xliff:g>?"</string>
     <string name="block_report_number_alert_details" msgid="2652479394593143562">"A jövőben nem fogad hívásokat erről a számról."</string>
     <string name="block_number_alert_details" msgid="715942751312046429">"<xliff:g id="TEXT">%1$s</xliff:g> A hívást spamként jelentjük be."</string>
diff --git a/java/com/android/dialer/callcomposer/AndroidManifest.xml b/java/com/android/dialer/callcomposer/AndroidManifest.xml
index 369db6f..cce7110 100644
--- a/java/com/android/dialer/callcomposer/AndroidManifest.xml
+++ b/java/com/android/dialer/callcomposer/AndroidManifest.xml
@@ -17,7 +17,7 @@
   xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.callcomposer">
 
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
     <activity
       android:name="com.android.dialer.callcomposer.CallComposerActivity"
       android:exported="true"
diff --git a/java/com/android/dialer/callcomposer/CallComposerActivity.java b/java/com/android/dialer/callcomposer/CallComposerActivity.java
index 074fc6d..df5cc29 100644
--- a/java/com/android/dialer/callcomposer/CallComposerActivity.java
+++ b/java/com/android/dialer/callcomposer/CallComposerActivity.java
@@ -23,30 +23,33 @@
 import android.animation.ValueAnimator;
 import android.content.Context;
 import android.content.Intent;
+import android.content.SharedPreferences;
 import android.content.res.Configuration;
 import android.net.Uri;
 import android.os.Bundle;
+import android.os.Handler;
 import android.support.annotation.NonNull;
+import android.support.annotation.VisibleForTesting;
 import android.support.v4.content.ContextCompat;
 import android.support.v4.content.FileProvider;
-import android.support.v4.view.ViewPager;
 import android.support.v4.view.ViewPager.OnPageChangeListener;
 import android.support.v4.view.animation.FastOutSlowInInterpolator;
 import android.support.v7.app.AppCompatActivity;
 import android.text.TextUtils;
 import android.util.Base64;
+import android.view.Gravity;
 import android.view.View;
 import android.view.View.OnClickListener;
-import android.view.View.OnLayoutChangeListener;
 import android.view.ViewAnimationUtils;
 import android.view.ViewGroup;
-import android.view.WindowManager.LayoutParams;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
+import android.widget.ProgressBar;
 import android.widget.QuickContactBadge;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
+import android.widget.Toast;
 import com.android.contacts.common.ContactPhotoManager;
 import com.android.dialer.callcomposer.CallComposerFragment.CallComposerListener;
 import com.android.dialer.callintent.CallInitiationType;
@@ -55,19 +58,24 @@
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.UiUtil;
 import com.android.dialer.common.concurrent.DialerExecutors;
+import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.constants.Constants;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
-import com.android.dialer.enrichedcall.EnrichedCallManager.State;
 import com.android.dialer.enrichedcall.Session;
+import com.android.dialer.enrichedcall.Session.State;
 import com.android.dialer.enrichedcall.extensions.StateExtension;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.multimedia.MultimediaData;
 import com.android.dialer.protos.ProtoParsers;
 import com.android.dialer.telecom.TelecomUtil;
+import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.ViewUtil;
 import com.android.dialer.widget.DialerToolbar;
+import com.android.dialer.widget.LockableViewPager;
 import com.google.protobuf.InvalidProtocolBufferException;
 import java.io.File;
 
@@ -86,10 +94,10 @@
     implements OnClickListener,
         OnPageChangeListener,
         CallComposerListener,
-        OnLayoutChangeListener,
         EnrichedCallManager.StateChangedListener {
 
   public static final String KEY_CONTACT_NAME = "contact_name";
+  private static final String KEY_IS_FIRST_CALL_COMPOSE = "is_first_call_compose";
 
   private static final int ENTRANCE_ANIMATION_DURATION_MILLIS = 500;
   private static final int EXIT_ANIMATION_DURATION_MILLIS = 500;
@@ -98,11 +106,19 @@
   private static final String ARG_CALL_COMPOSER_CONTACT_BASE64 = "CALL_COMPOSER_CONTACT_BASE64";
 
   private static final String ENTRANCE_ANIMATION_KEY = "entrance_animation_key";
+  private static final String SEND_AND_CALL_READY_KEY = "send_and_call_ready_key";
   private static final String CURRENT_INDEX_KEY = "current_index_key";
   private static final String VIEW_PAGER_STATE_KEY = "view_pager_state_key";
   private static final String SESSION_ID_KEY = "session_id_key";
 
-  private CallComposerContact contact;
+  private final Handler timeoutHandler = ThreadUtil.getUiThreadHandler();
+  private final Runnable sessionStartedTimedOut =
+      () -> {
+        LogUtil.i("CallComposerActivity.sessionStartedTimedOutRunnable", "session never started");
+        setFailedResultAndFinish();
+      };
+
+  private DialerContact contact;
   private Long sessionId = Session.NO_SESSION_ID;
 
   private TextView nameView;
@@ -113,10 +129,11 @@
   private View sendAndCall;
   private TextView sendAndCallText;
 
+  private ProgressBar loading;
   private ImageView cameraIcon;
   private ImageView galleryIcon;
   private ImageView messageIcon;
-  private ViewPager pager;
+  private LockableViewPager pager;
   private CallComposerPagerAdapter adapter;
 
   private FrameLayout background;
@@ -126,10 +143,10 @@
   private boolean shouldAnimateEntrance = true;
   private boolean inFullscreenMode;
   private boolean isSendAndCallHidingOrHidden = true;
-  private boolean layoutChanged;
+  private boolean sendAndCallReady;
   private int currentIndex;
 
-  public static Intent newIntent(Context context, CallComposerContact contact) {
+  public static Intent newIntent(Context context, DialerContact contact) {
     Intent intent = new Intent(context, CallComposerActivity.class);
     ProtoParsers.put(intent, ARG_CALL_COMPOSER_CONTACT, contact);
     return intent;
@@ -140,19 +157,20 @@
     super.onCreate(savedInstanceState);
     setContentView(R.layout.call_composer_activity);
 
-    nameView = (TextView) findViewById(R.id.contact_name);
-    numberView = (TextView) findViewById(R.id.phone_number);
-    contactPhoto = (QuickContactBadge) findViewById(R.id.contact_photo);
-    cameraIcon = (ImageView) findViewById(R.id.call_composer_camera);
-    galleryIcon = (ImageView) findViewById(R.id.call_composer_photo);
-    messageIcon = (ImageView) findViewById(R.id.call_composer_message);
-    contactContainer = (RelativeLayout) findViewById(R.id.contact_bar);
-    pager = (ViewPager) findViewById(R.id.call_composer_view_pager);
-    background = (FrameLayout) findViewById(R.id.background);
-    windowContainer = (LinearLayout) findViewById(R.id.call_composer_container);
-    toolbar = (DialerToolbar) findViewById(R.id.toolbar);
+    nameView = findViewById(R.id.contact_name);
+    numberView = findViewById(R.id.phone_number);
+    contactPhoto = findViewById(R.id.contact_photo);
+    cameraIcon = findViewById(R.id.call_composer_camera);
+    galleryIcon = findViewById(R.id.call_composer_photo);
+    messageIcon = findViewById(R.id.call_composer_message);
+    contactContainer = findViewById(R.id.contact_bar);
+    pager = findViewById(R.id.call_composer_view_pager);
+    background = findViewById(R.id.background);
+    windowContainer = findViewById(R.id.call_composer_container);
+    toolbar = findViewById(R.id.toolbar);
     sendAndCall = findViewById(R.id.send_and_call_button);
-    sendAndCallText = (TextView) findViewById(R.id.send_and_call_text);
+    sendAndCallText = findViewById(R.id.send_and_call_text);
+    loading = findViewById(R.id.call_composer_loading);
 
     interpolator = new FastOutSlowInInterpolator();
     adapter =
@@ -162,7 +180,6 @@
     pager.setAdapter(adapter);
     pager.addOnPageChangeListener(this);
 
-    background.addOnLayoutChangeListener(this);
     cameraIcon.setOnClickListener(this);
     galleryIcon.setOnClickListener(this);
     messageIcon.setOnClickListener(this);
@@ -172,17 +189,13 @@
 
     if (savedInstanceState != null) {
       shouldAnimateEntrance = savedInstanceState.getBoolean(ENTRANCE_ANIMATION_KEY);
+      sendAndCallReady = savedInstanceState.getBoolean(SEND_AND_CALL_READY_KEY);
       pager.onRestoreInstanceState(savedInstanceState.getParcelable(VIEW_PAGER_STATE_KEY));
       currentIndex = savedInstanceState.getInt(CURRENT_INDEX_KEY);
       sessionId = savedInstanceState.getLong(SESSION_ID_KEY, Session.NO_SESSION_ID);
       onPageSelected(currentIndex);
     }
 
-    int adjustMode =
-        isLandscapeLayout()
-            ? LayoutParams.SOFT_INPUT_ADJUST_PAN
-            : LayoutParams.SOFT_INPUT_ADJUST_RESIZE;
-    getWindow().setSoftInputMode(adjustMode);
     // Since we can't animate the views until they are ready to be drawn, we use this listener to
     // track that and animate the call compose UI as soon as it's ready.
     ViewUtil.doOnPreDraw(
@@ -221,6 +234,7 @@
   protected void onPause() {
     super.onPause();
     getEnrichedCallManager().unregisterStateChangedListener(this);
+    timeoutHandler.removeCallbacks(sessionStartedTimedOut);
   }
 
   @Override
@@ -240,12 +254,36 @@
         "state: %s",
         StateExtension.toString(state));
 
-    if (state == EnrichedCallManager.STATE_START_FAILED
-        || state == EnrichedCallManager.STATE_CLOSED) {
-      setFailedResultAndFinish();
+    switch (state) {
+      case Session.STATE_STARTING:
+        timeoutHandler.postDelayed(sessionStartedTimedOut, getSessionStartedTimeoutMillis());
+        if (sendAndCallReady) {
+          showLoadingUi();
+        }
+        break;
+      case Session.STATE_STARTED:
+        timeoutHandler.removeCallbacks(sessionStartedTimedOut);
+        if (sendAndCallReady) {
+          sendAndCall();
+        }
+        break;
+      case Session.STATE_START_FAILED:
+      case Session.STATE_CLOSED:
+        setFailedResultAndFinish();
+        break;
+      case Session.STATE_MESSAGE_FAILED:
+      case Session.STATE_MESSAGE_SENT:
+      case Session.STATE_NONE:
+      default:
+        break;
     }
   }
 
+  @VisibleForTesting
+  public long getSessionStartedTimeoutMillis() {
+    return ConfigProviderBindings.get(this).getLong("ec_session_started_timeout", 10_000);
+  }
+
   @Override
   protected void onNewIntent(Intent intent) {
     super.onNewIntent(intent);
@@ -264,13 +302,15 @@
     } else if (view == sendAndCall) {
       sendAndCall();
     } else {
-      Assert.fail();
+      throw Assert.createIllegalStateFailException("View on click not implemented: " + view);
     }
   }
 
   @Override
   public void sendAndCall() {
     if (!sessionReady()) {
+      sendAndCallReady = true;
+      showLoadingUi();
       LogUtil.i("CallComposerActivity.onClick", "sendAndCall pressed, but the session isn't ready");
       Logger.get(this)
           .logImpression(
@@ -338,23 +378,38 @@
     }
   }
 
+  private void showLoadingUi() {
+    loading.setVisibility(View.VISIBLE);
+    pager.setSwipingLocked(true);
+  }
+
   private boolean sessionReady() {
     Session session = getEnrichedCallManager().getSession(sessionId);
-    if (session == null) {
-      return false;
-    }
-
-    return session.getState() == EnrichedCallManager.STATE_STARTED;
+    return session != null && session.getState() == Session.STATE_STARTED;
   }
 
   private void placeRCSCall(MultimediaData.Builder builder) {
-    LogUtil.i("CallComposerActivity.placeRCSCall", "placing enriched call");
+    MultimediaData data = builder.build();
+    LogUtil.i("CallComposerActivity.placeRCSCall", "placing enriched call, data: " + data);
     Logger.get(this).logImpression(DialerImpression.Type.CALL_COMPOSER_ACTIVITY_PLACE_RCS_CALL);
-    getEnrichedCallManager().sendCallComposerData(sessionId, builder.build());
+    getEnrichedCallManager().sendCallComposerData(sessionId, data);
     TelecomUtil.placeCall(
         this,
         new CallIntentBuilder(contact.getNumber(), CallInitiationType.Type.CALL_COMPOSER).build());
     setResult(RESULT_OK);
+    SharedPreferences preferences =
+        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(this);
+
+    // Show a toast for privacy purposes if this is the first time a user uses call composer.
+    if (preferences.getBoolean(KEY_IS_FIRST_CALL_COMPOSE, true)) {
+      int privacyMessage =
+          data.hasImageData() ? R.string.image_sent_messages : R.string.message_sent_messages;
+      Toast toast = Toast.makeText(this, privacyMessage, Toast.LENGTH_LONG);
+      int yOffset = getResources().getDimensionPixelOffset(R.dimen.privacy_toast_y_offset);
+      toast.setGravity(Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM, 0, yOffset);
+      toast.show();
+      preferences.edit().putBoolean(KEY_IS_FIRST_CALL_COMPOSE, false).apply();
+    }
     finish();
   }
 
@@ -376,10 +431,6 @@
     }
     if (currentIndex == CallComposerPagerAdapter.INDEX_MESSAGE) {
       UiUtil.hideKeyboardFrom(this, windowContainer);
-    } else if (position == CallComposerPagerAdapter.INDEX_MESSAGE
-        && inFullscreenMode
-        && !isLandscapeLayout()) {
-      UiUtil.openKeyboardFrom(this, windowContainer);
     }
     currentIndex = position;
     CallComposerFragment fragment = (CallComposerFragment) adapter.instantiateItem(pager, position);
@@ -398,6 +449,7 @@
     super.onSaveInstanceState(outState);
     outState.putParcelable(VIEW_PAGER_STATE_KEY, pager.onSaveInstanceState());
     outState.putBoolean(ENTRANCE_ANIMATION_KEY, shouldAnimateEntrance);
+    outState.putBoolean(SEND_AND_CALL_READY_KEY, sendAndCallReady);
     outState.putInt(CURRENT_INDEX_KEY, currentIndex);
     outState.putLong(SESSION_ID_KEY, sessionId);
   }
@@ -424,28 +476,6 @@
     animateSendAndCall(fragment.shouldHide());
   }
 
-  // To detect when the keyboard changes.
-  @Override
-  public void onLayoutChange(
-      View view,
-      int left,
-      int top,
-      int right,
-      int bottom,
-      int oldLeft,
-      int oldTop,
-      int oldRight,
-      int oldBottom) {
-    // To prevent infinite layout change loops
-    if (layoutChanged) {
-      layoutChanged = false;
-      return;
-    }
-
-    layoutChanged = true;
-    showFullscreen(contactContainer.getTop() < 0 || inFullscreenMode);
-  }
-
   /**
    * Reads arguments from the fragment arguments and populates the necessary instance variables.
    * Copied from {@link com.android.contacts.common.dialog.CallSubjectDialog}.
@@ -456,14 +486,14 @@
       byte[] bytes =
           Base64.decode(intent.getStringExtra(ARG_CALL_COMPOSER_CONTACT_BASE64), Base64.DEFAULT);
       try {
-        contact = CallComposerContact.parseFrom(bytes);
+        contact = DialerContact.parseFrom(bytes);
       } catch (InvalidProtocolBufferException e) {
         throw Assert.createAssertionFailException(e.toString());
       }
     } else {
       contact =
           ProtoParsers.getTrusted(
-              intent, ARG_CALL_COMPOSER_CONTACT, CallComposerContact.getDefaultInstance());
+              intent, ARG_CALL_COMPOSER_CONTACT, DialerContact.getDefaultInstance());
     }
     updateContactInfo();
   }
diff --git a/java/com/android/dialer/callcomposer/CameraComposerFragment.java b/java/com/android/dialer/callcomposer/CameraComposerFragment.java
index f65207f..1002b27 100644
--- a/java/com/android/dialer/callcomposer/CameraComposerFragment.java
+++ b/java/com/android/dialer/callcomposer/CameraComposerFragment.java
@@ -17,13 +17,14 @@
 package com.android.dialer.callcomposer;
 
 import android.Manifest;
-import android.Manifest.permission;
 import android.content.Intent;
+import android.content.SharedPreferences;
 import android.content.pm.PackageManager;
 import android.graphics.drawable.Animatable;
 import android.hardware.Camera.CameraInfo;
 import android.net.Uri;
 import android.os.Bundle;
+import android.preference.PreferenceManager;
 import android.provider.Settings;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
@@ -56,6 +57,7 @@
 public class CameraComposerFragment extends CallComposerFragment
     implements CameraManagerListener, OnClickListener, CameraManager.MediaCallback {
 
+  private static final String CAMERA_PRIVACY_PREF = "camera_privacy_permission";
   private static final String CAMERA_DIRECTION_KEY = "camera_direction";
   private static final String CAMERA_URI_KEY = "camera_key";
 
@@ -89,17 +91,17 @@
       LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle bundle) {
     View root = inflater.inflate(R.layout.fragment_camera_composer, container, false);
     permissionView = root.findViewById(R.id.permission_view);
-    loading = (ProgressBar) root.findViewById(R.id.loading);
-    cameraView = (CameraMediaChooserView) root.findViewById(R.id.camera_view);
+    loading = root.findViewById(R.id.loading);
+    cameraView = root.findViewById(R.id.camera_view);
     shutter = cameraView.findViewById(R.id.camera_shutter_visual);
-    exitFullscreen = (ImageButton) cameraView.findViewById(R.id.camera_exit_fullscreen);
-    fullscreen = (ImageButton) cameraView.findViewById(R.id.camera_fullscreen);
-    swapCamera = (ImageButton) cameraView.findViewById(R.id.swap_camera_button);
-    capture = (ImageButton) cameraView.findViewById(R.id.camera_capture_button);
-    cancel = (ImageButton) cameraView.findViewById(R.id.camera_cancel_button);
-    focus = (RenderOverlay) cameraView.findViewById(R.id.focus_visual);
-    preview = (CameraPreviewHost) cameraView.findViewById(R.id.camera_preview);
-    previewImageView = (ImageView) root.findViewById(R.id.preview_image_view);
+    exitFullscreen = cameraView.findViewById(R.id.camera_exit_fullscreen);
+    fullscreen = cameraView.findViewById(R.id.camera_fullscreen);
+    swapCamera = cameraView.findViewById(R.id.swap_camera_button);
+    capture = cameraView.findViewById(R.id.camera_capture_button);
+    cancel = cameraView.findViewById(R.id.camera_cancel_button);
+    focus = cameraView.findViewById(R.id.focus_visual);
+    preview = cameraView.findViewById(R.id.camera_preview);
+    previewImageView = root.findViewById(R.id.preview_image_view);
 
     exitFullscreen.setOnClickListener(this);
     fullscreen.setOnClickListener(this);
@@ -107,11 +109,12 @@
     capture.setOnClickListener(this);
     cancel.setOnClickListener(this);
 
-    if (!PermissionsUtil.hasPermission(getContext(), permission.CAMERA)) {
+
+    if (!PermissionsUtil.hasCameraPermissions(getContext())) {
       LogUtil.i("CameraComposerFragment.onCreateView", "Permission view shown.");
       Logger.get(getContext()).logImpression(DialerImpression.Type.CAMERA_PERMISSION_DISPLAYED);
-      ImageView permissionImage = (ImageView) permissionView.findViewById(R.id.permission_icon);
-      TextView permissionText = (TextView) permissionView.findViewById(R.id.permission_text);
+      ImageView permissionImage = permissionView.findViewById(R.id.permission_icon);
+      TextView permissionText = permissionView.findViewById(R.id.permission_text);
       allowPermission = permissionView.findViewById(R.id.allow);
 
       allowPermission.setOnClickListener(this);
@@ -131,6 +134,12 @@
   }
 
   private void setupCamera() {
+    SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getContext());
+    if (!preferences.getBoolean(CAMERA_PRIVACY_PREF, false)) {
+      Toast.makeText(getContext(), getString(R.string.camera_privacy_text), Toast.LENGTH_LONG)
+          .show();
+      preferences.edit().putBoolean(CAMERA_PRIVACY_PREF, true).apply();
+    }
     CameraManager.get().setListener(this);
     preview.setShown();
     CameraManager.get().setRenderOverlay(focus);
@@ -336,6 +345,12 @@
       previewImageView.setVisibility(View.GONE);
     }
 
+    if (cameraDirection == CameraInfo.CAMERA_FACING_FRONT) {
+      swapCamera.setContentDescription(getString(R.string.description_camera_switch_camera_rear));
+    } else {
+      swapCamera.setContentDescription(getString(R.string.description_camera_switch_camera_facing));
+    }
+
     if (cameraUri == null && isCameraAvailable) {
       CameraManager.get().resetPreview();
       cancel.setVisibility(View.GONE);
diff --git a/java/com/android/dialer/callcomposer/CopyAndResizeImageWorker.java b/java/com/android/dialer/callcomposer/CopyAndResizeImageWorker.java
index aeb8e03..725cea7 100644
--- a/java/com/android/dialer/callcomposer/CopyAndResizeImageWorker.java
+++ b/java/com/android/dialer/callcomposer/CopyAndResizeImageWorker.java
@@ -21,6 +21,7 @@
 import android.graphics.Bitmap;
 import android.graphics.Bitmap.CompressFormat;
 import android.graphics.BitmapFactory;
+import android.media.ExifInterface;
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
 import android.support.annotation.NonNull;
@@ -47,17 +48,26 @@
   }
 
   /**
-   * @param input The input Uri is expected to be a image openable by {@link
-   *     android.content.ContentResolver#openInputStream(Uri)}.
+   * @param input The filepath where the image is located.
    * @return a Pair where the File contains the resized image, and the String is the result File's
    *     MIME type.
    */
   @Nullable
   @Override
   public Pair<File, String> doInBackground(@Nullable Uri input) throws Throwable {
+    // BitmapFactory.decodeStream strips exif data, so we need to save it here and apply it later.
+    int rotation = 0;
+    try {
+      rotation =
+          new ExifInterface(input.getPath())
+              .getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_NORMAL);
+    } catch (Exception ignored) {
+      // Couldn't get exif tags, not the end of the world
+    }
+
     try (InputStream inputStream = context.getContentResolver().openInputStream(input)) {
       Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
-      bitmap = BitmapResizer.resizeForEnrichedCalling(bitmap);
+      bitmap = BitmapResizer.resizeForEnrichedCalling(bitmap, exifToDegrees(rotation));
 
       File outputFile = DialerUtils.createShareableFile(context);
       try (OutputStream outputStream = new FileOutputStream(outputFile)) {
@@ -67,4 +77,17 @@
       }
     }
   }
+
+  private static int exifToDegrees(int exifOrientation) {
+    switch (exifOrientation) {
+      case ExifInterface.ORIENTATION_ROTATE_90:
+        return 90;
+      case ExifInterface.ORIENTATION_ROTATE_180:
+        return 180;
+      case ExifInterface.ORIENTATION_ROTATE_270:
+        return 270;
+      default:
+        return 0;
+    }
+  }
 }
diff --git a/java/com/android/dialer/callcomposer/GalleryCursorLoader.java b/java/com/android/dialer/callcomposer/GalleryCursorLoader.java
index f9990e1..39d6a4a 100644
--- a/java/com/android/dialer/callcomposer/GalleryCursorLoader.java
+++ b/java/com/android/dialer/callcomposer/GalleryCursorLoader.java
@@ -28,7 +28,7 @@
 public class GalleryCursorLoader extends CursorLoader {
   public static final String MEDIA_SCANNER_VOLUME_EXTERNAL = "external";
   public static final String[] ACCEPTABLE_IMAGE_TYPES =
-      new String[] {"image/jpeg", "image/jpg", "image/png", "image/gif", "image/webp"};
+      new String[] {"image/jpeg", "image/jpg", "image/png", "image/webp"};
 
   private static final Uri STORAGE_URI = Files.getContentUri(MEDIA_SCANNER_VOLUME_EXTERNAL);
   private static final String SORT_ORDER = Media.DATE_MODIFIED + " DESC";
@@ -47,7 +47,7 @@
   @SuppressLint("DefaultLocale")
   private static String createSelection() {
     return String.format(
-        "mime_type IN ('image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/webp')"
+        "mime_type IN ('image/jpeg', 'image/jpg', 'image/png', 'image/webp')"
             + " AND media_type in (%d)",
         FileColumns.MEDIA_TYPE_IMAGE);
   }
diff --git a/java/com/android/dialer/callcomposer/MessageComposerFragment.java b/java/com/android/dialer/callcomposer/MessageComposerFragment.java
index 2a342bb..392f6e7 100644
--- a/java/com/android/dialer/callcomposer/MessageComposerFragment.java
+++ b/java/com/android/dialer/callcomposer/MessageComposerFragment.java
@@ -24,11 +24,8 @@
 import android.text.TextWatcher;
 import android.view.KeyEvent;
 import android.view.LayoutInflater;
-import android.view.MotionEvent;
 import android.view.View;
 import android.view.View.OnClickListener;
-import android.view.View.OnLongClickListener;
-import android.view.View.OnTouchListener;
 import android.view.ViewGroup;
 import android.widget.EditText;
 import android.widget.TextView;
@@ -36,17 +33,12 @@
 
 /** Fragment used to compose call with message fragment. */
 public class MessageComposerFragment extends CallComposerFragment
-    implements OnClickListener,
-        TextWatcher,
-        OnTouchListener,
-        OnLongClickListener,
-        OnEditorActionListener {
+    implements OnClickListener, TextWatcher, OnEditorActionListener {
   private static final String CHAR_LIMIT_KEY = "char_limit";
 
   public static final int NO_CHAR_LIMIT = -1;
 
   private EditText customMessage;
-  private boolean isLongClick = false;
   private int charLimit;
 
   public static MessageComposerFragment newInstance(int charLimit) {
@@ -73,8 +65,6 @@
     customMessage = (EditText) view.findViewById(R.id.custom_message);
 
     urgent.setOnClickListener(this);
-    customMessage.setOnTouchListener(this);
-    customMessage.setOnLongClickListener(this);
     customMessage.addTextChangedListener(this);
     customMessage.setOnEditorActionListener(this);
     if (charLimit != NO_CHAR_LIMIT) {
@@ -118,30 +108,6 @@
     getListener().composeCall(this);
   }
 
-  /**
-   * EditTexts take two clicks to dispatch an onClick() event, so instead we add an onTouchListener
-   * to listen for them. The caveat to this is that it also requires listening for onLongClicks to
-   * distinguish whether a MotionEvent came from a click or a long click.
-   */
-  @Override
-  public boolean onTouch(View view, MotionEvent event) {
-    if (event.getAction() == MotionEvent.ACTION_UP) {
-      if (isLongClick) {
-        isLongClick = false;
-      } else {
-        getListener().showFullscreen(true);
-      }
-    }
-    view.performClick();
-    return false;
-  }
-
-  @Override
-  public boolean onLongClick(View v) {
-    isLongClick = true;
-    return false;
-  }
-
   @Override
   public boolean shouldHide() {
     return TextUtils.isEmpty(getMessage());
diff --git a/java/com/android/dialer/callcomposer/camera/CameraManager.java b/java/com/android/dialer/callcomposer/camera/CameraManager.java
index 4cc08ba..5915ce3 100644
--- a/java/com/android/dialer/callcomposer/camera/CameraManager.java
+++ b/java/com/android/dialer/callcomposer/camera/CameraManager.java
@@ -509,62 +509,61 @@
     }.execute();
   }
 
-  /** Updates the orientation of the camera to match the orientation of the device */
-  private void updateCameraOrientation() {
-    if (mCamera == null || mCameraPreview == null || mTakingPicture) {
-      return;
+  /**
+   * Updates the orientation of the {@link Camera} w.r.t. the orientation of the device and the
+   * orientation that the physical camera is mounted on the device.
+   *
+   * @param camera that needs to be reorientated
+   * @param screenRotation rotation of the physical device
+   * @param cameraOrientation {@link CameraInfo#orientation}
+   * @param cameraIsFrontFacing {@link CameraInfo#CAMERA_FACING_FRONT}
+   * @return rotation that images returned from {@link
+   *     android.hardware.Camera.PictureCallback#onPictureTaken(byte[], Camera)} will be rotated.
+   */
+  @VisibleForTesting
+  static int updateCameraRotation(
+      @NonNull Camera camera,
+      int screenRotation,
+      int cameraOrientation,
+      boolean cameraIsFrontFacing) {
+    Assert.isNotNull(camera);
+    Assert.checkArgument(cameraOrientation % 90 == 0);
+
+    int rotation = screenRotationToDegress(screenRotation);
+    boolean portrait = rotation == 0 || rotation == 180;
+
+    if (!portrait && !cameraIsFrontFacing) {
+      rotation += 180;
+    }
+    rotation += cameraOrientation;
+    rotation %= 360;
+
+    // Rotate the camera
+    if (portrait && cameraIsFrontFacing) {
+      camera.setDisplayOrientation((rotation + 180) % 360);
+    } else {
+      camera.setDisplayOrientation(rotation);
     }
 
-    final WindowManager windowManager =
-        (WindowManager) mCameraPreview.getContext().getSystemService(Context.WINDOW_SERVICE);
+    // Rotate the images returned when a picture is taken
+    Camera.Parameters params = camera.getParameters();
+    params.setRotation(rotation);
+    camera.setParameters(params);
+    return rotation;
+  }
 
-    int degrees;
-    switch (windowManager.getDefaultDisplay().getRotation()) {
+  private static int screenRotationToDegress(int screenRotation) {
+    switch (screenRotation) {
       case Surface.ROTATION_0:
-        degrees = 0;
-        break;
+        return 0;
       case Surface.ROTATION_90:
-        degrees = 90;
-        break;
+        return 90;
       case Surface.ROTATION_180:
-        degrees = 180;
-        break;
+        return 180;
       case Surface.ROTATION_270:
-        degrees = 270;
-        break;
+        return 270;
       default:
-        throw Assert.createAssertionFailException("");
-    }
-
-    // The display orientation of the camera (this controls the preview image).
-    int orientation;
-
-    // The clockwise rotation angle relative to the orientation of the camera. This affects
-    // pictures returned by the camera in Camera.PictureCallback.
-    int rotation;
-    if (mCameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
-      orientation = (mCameraInfo.orientation + degrees) % 360;
-      rotation = orientation;
-      // compensate the mirror but only for orientation
-      orientation = (360 - orientation) % 360;
-    } else { // back-facing
-      orientation = (mCameraInfo.orientation - degrees + 360) % 360;
-      rotation = orientation;
-    }
-    mRotation = rotation;
-    try {
-      mCamera.setDisplayOrientation(orientation);
-      final Camera.Parameters params = mCamera.getParameters();
-      params.setRotation(rotation);
-      mCamera.setParameters(params);
-    } catch (final RuntimeException e) {
-      LogUtil.e(
-          "CameraManager.updateCameraOrientation",
-          "RuntimeException in CameraManager.updateCameraOrientation",
-          e);
-      if (mListener != null) {
-        mListener.onCameraError(ERROR_OPENING_CAMERA, e);
-      }
+        throw Assert.createIllegalStateFailException("Invalid surface rotation.");
     }
   }
 
@@ -589,13 +588,19 @@
         mOrientationHandler.disable();
         mOrientationHandler = null;
       }
-      //      releaseMediaRecorder(true /* cleanupFile */);
       mFocusOverlayManager.onPreviewStopped();
       return;
     }
     try {
       mCamera.stopPreview();
-      updateCameraOrientation();
+      if (!mTakingPicture) {
+        mRotation =
+            updateCameraRotation(
+                mCamera,
+                getScreenRotation(),
+                mCameraInfo.orientation,
+                mCameraInfo.facing == CameraInfo.CAMERA_FACING_FRONT);
+      }
 
       final Camera.Parameters params = mCamera.getParameters();
       final Camera.Size pictureSize = chooseBestPictureSize();
@@ -644,6 +649,14 @@
     }
   }
 
+  private int getScreenRotation() {
+    return mCameraPreview
+        .getContext()
+        .getSystemService(WindowManager.class)
+        .getDefaultDisplay()
+        .getRotation();
+  }
+
   public boolean isCameraAvailable() {
     return mCamera != null && !mTakingPicture && mIsHardwareAccelerationSupported;
   }
@@ -681,7 +694,14 @@
 
     @Override
     public void onOrientationChanged(final int orientation) {
-      updateCameraOrientation();
+      if (!mTakingPicture) {
+        mRotation =
+            updateCameraRotation(
+                mCamera,
+                getScreenRotation(),
+                mCameraInfo.orientation,
+                mCameraInfo.facing == CameraInfo.CAMERA_FACING_FRONT);
+      }
     }
   }
 
diff --git a/java/com/android/dialer/callcomposer/camera/ImagePersistTask.java b/java/com/android/dialer/callcomposer/camera/ImagePersistTask.java
index 31751e5..8620701 100644
--- a/java/com/android/dialer/callcomposer/camera/ImagePersistTask.java
+++ b/java/com/android/dialer/callcomposer/camera/ImagePersistTask.java
@@ -20,13 +20,10 @@
 import android.content.Context;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
-import android.graphics.Canvas;
-import android.graphics.Matrix;
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
 import android.support.v4.content.FileProvider;
 import com.android.dialer.callcomposer.camera.exif.ExifInterface;
-import com.android.dialer.callcomposer.camera.exif.ExifTag;
 import com.android.dialer.callcomposer.util.BitmapResizer;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.concurrent.FallibleAsyncTask;
@@ -71,13 +68,7 @@
     File outputFile = DialerUtils.createShareableFile(mContext);
 
     try (OutputStream outputStream = new FileOutputStream(outputFile)) {
-      if (mHeightPercent != 1.0f) {
-        writeClippedBitmap(outputStream);
-      } else {
-        Bitmap bitmap = BitmapFactory.decodeByteArray(mBytes, 0, mBytes.length);
-        bitmap = BitmapResizer.resizeForEnrichedCalling(bitmap);
-        bitmap.compress(Bitmap.CompressFormat.JPEG, 90, outputStream);
-      }
+      writeClippedBitmap(outputStream);
     }
 
     return FileProvider.getUriForFile(
@@ -105,10 +96,12 @@
     } catch (final IOException e) {
       // Couldn't get exif tags, not the end of the world
     }
+
+    ExifInterface.OrientationParams params = ExifInterface.getOrientationParams(orientation);
     Bitmap bitmap = BitmapFactory.decodeByteArray(mBytes, 0, mBytes.length);
     final int clippedWidth;
     final int clippedHeight;
-    if (ExifInterface.getOrientationParams(orientation).invertDimensions) {
+    if (params.invertDimensions) {
       Assert.checkState(mWidth == bitmap.getHeight());
       Assert.checkState(mHeight == bitmap.getWidth());
       clippedWidth = (int) (mHeight * mHeightPercent);
@@ -119,24 +112,18 @@
       clippedWidth = mWidth;
       clippedHeight = (int) (mHeight * mHeightPercent);
     }
-    final int offsetTop = (bitmap.getHeight() - clippedHeight) / 2;
-    final int offsetLeft = (bitmap.getWidth() - clippedWidth) / 2;
+
+    int offsetTop = (bitmap.getHeight() - clippedHeight) / 2;
+    int offsetLeft = (bitmap.getWidth() - clippedWidth) / 2;
     mWidth = clippedWidth;
     mHeight = clippedHeight;
+
     Bitmap clippedBitmap =
-        Bitmap.createBitmap(clippedWidth, clippedHeight, Bitmap.Config.ARGB_8888);
-    clippedBitmap.setDensity(bitmap.getDensity());
-    final Canvas clippedBitmapCanvas = new Canvas(clippedBitmap);
-    final Matrix matrix = new Matrix();
-    matrix.postTranslate(-offsetLeft, -offsetTop);
-    clippedBitmapCanvas.drawBitmap(bitmap, matrix, null /* paint */);
-    clippedBitmapCanvas.save();
-    clippedBitmap = BitmapResizer.resizeForEnrichedCalling(clippedBitmap);
-    // EXIF data can take a big chunk of the file size and is often cleared by the
-    // carrier, only store orientation since that's critical
-    final ExifTag orientationTag = exifInterface.getTag(ExifInterface.TAG_ORIENTATION);
+        Bitmap.createBitmap(bitmap, offsetLeft, offsetTop, clippedWidth, clippedHeight);
+    clippedBitmap = BitmapResizer.resizeForEnrichedCalling(clippedBitmap, params.rotation);
+    // EXIF data can take a big chunk of the file size and we've already manually rotated our image,
+    // so remove all of the exif data.
     exifInterface.clearExif();
-    exifInterface.setTag(orientationTag);
     exifInterface.writeExif(clippedBitmap, outputStream);
 
     clippedBitmap.recycle();
diff --git a/java/com/android/dialer/callcomposer/camera/exif/ExifInterface.java b/java/com/android/dialer/callcomposer/camera/exif/ExifInterface.java
index 92dee1c..1bf9519 100644
--- a/java/com/android/dialer/callcomposer/camera/exif/ExifInterface.java
+++ b/java/com/android/dialer/callcomposer/camera/exif/ExifInterface.java
@@ -286,7 +286,7 @@
 
   /** Wrapper class to define some orientation parameters. */
   public static class OrientationParams {
-    int rotation = 0;
+    public int rotation = 0;
     int scaleX = 1;
     int scaleY = 1;
     public boolean invertDimensions = false;
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/layout/camera_view.xml b/java/com/android/dialer/callcomposer/cameraui/res/layout/camera_view.xml
index a4198fc..8169a3d 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/layout/camera_view.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/layout/camera_view.xml
@@ -24,7 +24,7 @@
   <FrameLayout
     android:id="@+id/mediapicker_enabled"
     android:layout_width="match_parent"
-    android:layout_height="wrap_content" >
+    android:layout_height="wrap_content">
 
     <!-- Default to using the hardware rendered camera preview, we will fall back to
     SoftwareCameraPreview in CameraMediaChooserView if needed -->
@@ -37,14 +37,14 @@
     <com.android.dialer.callcomposer.camera.camerafocus.RenderOverlay
       android:id="@+id/focus_visual"
       android:layout_width="match_parent"
-      android:layout_height="match_parent" />
+      android:layout_height="match_parent"/>
 
     <View
       android:id="@+id/camera_shutter_visual"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:background="@android:color/white"
-      android:visibility="gone" />
+      android:visibility="gone"/>
 
     <ImageView
       android:id="@+id/preview_image_view"
@@ -71,7 +71,8 @@
         android:layout_marginEnd="@dimen/camera_view_button_margin"
         android:layout_marginBottom="@dimen/camera_view_button_margin"
         android:src="@drawable/quantum_ic_fullscreen_white_48"
-        android:background="?android:selectableItemBackgroundBorderless"/>
+        android:background="?android:selectableItemBackgroundBorderless"
+        android:contentDescription="@string/description_camera_switch_full_screen"/>
 
       <ImageButton
         android:id="@+id/camera_exit_fullscreen"
@@ -82,7 +83,8 @@
         android:layout_marginBottom="@dimen/camera_view_button_margin"
         android:src="@drawable/quantum_ic_fullscreen_exit_white_48"
         android:visibility="gone"
-        android:background="?android:selectableItemBackgroundBorderless"/>
+        android:background="?android:selectableItemBackgroundBorderless"
+        android:contentDescription="@string/description_camera_switch_preview_screen"/>
 
       <ImageButton
         android:id="@+id/camera_capture_button"
@@ -93,7 +95,7 @@
         android:background="?android:selectableItemBackgroundBorderless"
         android:src="@drawable/ic_capture"
         android:scaleType="fitXY"
-        android:contentDescription="@string/camera_take_picture"/>
+        android:contentDescription="@string/description_camera_take_picture"/>
 
       <ImageButton
         android:id="@+id/swap_camera_button"
@@ -103,8 +105,7 @@
         android:layout_marginStart="@dimen/camera_view_button_margin"
         android:layout_marginBottom="@dimen/camera_view_button_margin"
         android:src="@drawable/front_back_switch_button_animation"
-        android:background="@drawable/transparent_button_background"
-        android:contentDescription="@string/camera_switch_camera_rear"/>
+        android:background="@drawable/transparent_button_background"/>
 
       <ImageButton
         android:id="@+id/camera_cancel_button"
@@ -116,7 +117,7 @@
         android:visibility="gone"
         android:background="@drawable/transparent_button_background"
         android:src="@drawable/quantum_ic_undo_white_48"
-        android:contentDescription="@string/camera_cancel_recording" />
+        android:contentDescription="@string/description_camera_cancel_photo" />
     </FrameLayout>
   </FrameLayout>
 
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-af/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-af/strings.xml
index 3892a20..f6326c1 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-af/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-af/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Skakel na volskerm-kamera oor"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Knoppie is nou voorste kamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Knoppie is nou agterste kamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stop video-opname"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Gebruik tans voorste kamera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Gebruik tans agterste kamera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Neem foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Skakel oor na volskerm-kamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Skakel oor na kameravoorskou"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Skakel oor na voorste kamera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Skakel oor na agterste kamera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Neem foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Neem foto weer"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-am/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-am/strings.xml
index e271798..87c70c7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-am/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-am/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ወደ ሙሉ ማያ ገጽ ካሜራ ቀይር"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"አዝራር አሁን የፊት ካሜራ ነው"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"አዝራር አሁን የኋላ ካሜራ ነው"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ቪዲዮ መቅዳትን አቁም"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"የፊት ካሜራ በመጠቀም ላይ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"የኋላ ካሜራ በመጠቀም ላይ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ፎቶ ያንሱ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ወደ ሙሉ ማያ ገጽ ካሜራ ይቀይሩ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ወደ ካሜራ ቅድመ ዕይታ ይቀይሩ"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ወደ የፊት ካሜራ ይቀይሩ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ወደ የኋላ ካሜራ ይቀይሩ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ፎቶ ያንሱ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ፎቶ በድጋሚ ያንሱ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ar/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ar/strings.xml
index a045a11..fa27db7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ar/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ar/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"التبديل إلى الكاميرا بملء الشاشة"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"يشير الزر الآن إلى الكاميرا الأمامية"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"يشير الزر الآن إلى الكاميرا الخلفية"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"إيقاف تسجيل الفيديو"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"استخدام الكاميرا الأمامية"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"استخدام الكاميرا الخلفية"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"التقاط صورة"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"التبديل إلى الكاميرا بملء الشاشة"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"التبديل إلى معاينة الكاميرا"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"تبديل إلى الكاميرا الأمامية"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"تبديل مرة أخرى إلى الكاميرا الأمامية"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"التقاط صورة"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"إعادة التقاط الصورة"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-az/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-az/strings.xml
index 514463c..bfbf204 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-az/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-az/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Tam ekranlı kameraya keçin"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Düymə indi ön kameradır"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Düymə indi arxa kameradır"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Video qeydi dayandırın"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Ön kamera istifadə olunur"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Arxa kamera istifadə olunur"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotoşəkil çəkin"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Tam ekranlı kameraya keçin"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Kamera önizləməsinə keçin"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Ön kameraya keçin"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Arxa kameraya keçin"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Foto çəkin"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Fotonu yenidən çəkin"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-b+sr+Latn/strings.xml
index aad8d9d..565b188 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-b+sr+Latn/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Pređite na prikaz kamere preko celog ekrana"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Dugme sad aktivira prednju kameru"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Dugme sad aktivira zadnju kameru"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zaustavite snimanje videa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Koristimo prednju kameru"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Koristimo zadnju kameru"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Snimite sliku"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Prebacite na prikaz kamere preko celog ekrana"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Prebacite na pregled kamere"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Prebacite na prednju kameru"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Prebacite na zadnju kameru"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Snimite sliku"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ponovo snimite sliku"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-be/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-be/strings.xml
index 108ab7f..f15bbb9 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-be/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-be/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Пераключыцца на поўнаэкранную камеру"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Кнопка зараз замацавана за пярэдняй камерай"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Кнопка зараз замацавана за задняй камерай"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Спыніць запіс відэа"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Выкарыстанне пярэдняй камеры"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Выкарыстанне задняй камеры"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Зрабіць фота"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Пераключыцца на поўнаэкранную камеру"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Пераключыцца ў рэжым перадпрагляду камеры"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Пераключыцца на пярэднюю камеру"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Пераключыцца на заднюю камеру"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Зрабіць фота"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Зрабіць фота яшчэ раз"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-bg/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-bg/strings.xml
index e965ed9..92352ff 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-bg/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-bg/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Превключване към камера на цял екран"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Бутонът сега е за предната камера"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Бутонът сега е за задната камера"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Спиране на видеозаписа"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Използва се предната камера"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Използва се задната камера"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Правене на снимка"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Превключване към камера на цял екран"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Превключване към визуализация на камерата"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Превключване към предната камера"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Превключване към задната камера."</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Снимане"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Повторно снимане"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-bn/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-bn/strings.xml
index 447b7e3..83774c7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-bn/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-bn/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"পূর্ণ স্ক্রীন ক্যামেরাতে পাল্টান"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"বোতামটিকে এখন সামনের ক্যামেরার জন্য ব্যবহার করা হবে"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"বোতামটিকে এখন পিছনের ক্যামেরার জন্য ব্যবহার করা হবে"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ভিডিও রেকর্ডিং বন্ধ করুন"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"সামনের ক্যামেরা ব্যবহার করা হচ্ছে"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"পিছনের ক্যামেরা ব্যবহার করা হচ্ছে"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ফটো তুলুন"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"সম্পূর্ণ স্ক্রীন জুড়ে ক্যামেরা খুলুন"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ক্যামেরার পূর্বরূপ মোডে পাল্টান"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"সামনের ক্যামেরাতে পাল্টান"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"পিছনের ক্যামেরাতে পাল্টান"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ফটো তুলুন"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"আবার ফটো তুলুন"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-bs/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-bs/strings.xml
index 8946f4f..c77a5de 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-bs/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-bs/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Prebaci na kameru preko cijelog ekrana"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Dugme je sada prednja kamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Dugme je sada zadnja kamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zaustavi snimanje videozapisa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Koristi se prednja kamera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Koristi se zadnja kamera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Snimi fotografiju"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Prebaci na kameru preko cijelog ekrana"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Prebaci na pregled kamere"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Prebaci na prednju kameru"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Prebaci na stražnju kameru"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Snimi fotografiju"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ponovo snimi fotografiju"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ca/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ca/strings.xml
index 6d8ffdc..39c069b 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ca/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ca/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Canvia a la càmera en pantalla completa"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"El botó ara és la càmera frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"El botó ara és la càmera posterior"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Deixa d\'enregistrar el vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"S\'està utilitzant la càmera frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"S\'està utilitzant la càmera posterior"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fes una foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Canvia a la càmera en pantalla completa"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Canvia a la previsualització de la càmera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Canvia a la càmera frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Canvia a la càmera posterior"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fes una foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Torna a fer la foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-cs/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-cs/strings.xml
index 0e31108..222eb81 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-cs/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-cs/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Přepnout na fotoaparát na celou obrazovku"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Tlačítko nyní funguje pro přední fotoaparát"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Tlačítko nyní funguje pro zadní fotoaparát"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zastavit natáčení videa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Používá se přední fotoaparát"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Používá se zadní fotoaparát"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Vyfotit"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Přepnout na fotoaparát na celou obrazovku"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Přepnout na náhled fotoaparátu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Přepnout na přední fotoaparát"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Přepnout na zadní fotoaparát"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Vyfotit"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Znovu vyfotit"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-da/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-da/strings.xml
index ca5a79e..0de7e08 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-da/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-da/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Skift til kamera i fuld skærm"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Knappen er nu frontkamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Knappen er nu bagsidekamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stands optagelse af video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Bruger frontkameraet"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Bruger bagsidekameraet"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tag billede"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Skift til kamera i fuld skærm"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Skift til forhåndsvisning af kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Skift til kamera på forsiden"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Skift til kamera på bagsiden"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tag billede"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Tag billedet om"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-de/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-de/strings.xml
index 53d22eb..1b0d639 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-de/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-de/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Zur Vollbildkamera wechseln"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Schaltfläche ist jetzt Frontkamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Schaltfläche ist jetzt Rückkamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Videoaufzeichnung beenden"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Frontkamera wird verwendet"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Rückkamera wird verwendet"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Foto aufnehmen"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Zur Vollbildkamera wechseln"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Zur Kameravorschau wechseln"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Zur Frontkamera wechseln"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Zur Rückkamera wechseln"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Foto aufnehmen"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Foto neu aufnehmen"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-el/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-el/strings.xml
index 5763dec..d657f93 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-el/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-el/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Εναλλαγή σε κάμερα πλήρους οθόνης"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Το κουμπί είναι τώρα η μπροστινή κάμερα"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Το κουμπί είναι τώρα η πίσω κάμερα"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Διακοπή εγγραφής βίντεο"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Χρήση μπροστινής κάμερας"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Χρήση πίσω κάμερας"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Λήψη φωτογραφίας"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Εναλλαγή σε κάμερα πλήρους οθόνης"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Εναλλαγή σε προεπισκόπηση κάμερας"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Εναλλαγή σε κάμερα πρόσοψης"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Εναλλαγή σε πίσω κάμερα"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Λήψη φωτογραφίας"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Επανάληψη λήψης φωτογραφίας"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rAU/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rAU/strings.xml
index 5b8b4aa..9e76a69 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rAU/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Switch to full-screen camera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Button is now front-facing camera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Button is now rear-facing camera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stop recording video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Using front-facing camera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Using rear-facing camera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Take photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Switch to full-screen camera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Switch to camera preview"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Switch to front-facing camera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Switch to rear-facing camera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Take photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Retake photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rGB/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rGB/strings.xml
index 5b8b4aa..9e76a69 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rGB/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Switch to full-screen camera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Button is now front-facing camera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Button is now rear-facing camera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stop recording video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Using front-facing camera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Using rear-facing camera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Take photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Switch to full-screen camera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Switch to camera preview"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Switch to front-facing camera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Switch to rear-facing camera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Take photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Retake photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rIN/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rIN/strings.xml
index 5b8b4aa..9e76a69 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rIN/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Switch to full-screen camera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Button is now front-facing camera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Button is now rear-facing camera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stop recording video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Using front-facing camera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Using rear-facing camera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Take photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Switch to full-screen camera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Switch to camera preview"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Switch to front-facing camera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Switch to rear-facing camera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Take photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Retake photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-es-rUS/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-es-rUS/strings.xml
index a98e74c..f103564 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-es-rUS/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Cambiar a cámara en pantalla completa"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"El botón cambió a la cámara frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"El botón cambió a la cámara trasera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Detener la grabación de video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Usando la cámara frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Usando la cámara trasera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tomar una foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Cambiar a cámara en pantalla completa"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Cambiar a vista previa de la cámara"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Cambiar a cámara frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Cambiar a cámara trasera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tomar foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Volver a tomar foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-es/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-es/strings.xml
index 5c4391e..5afb8c8 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-es/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-es/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Cambiar a cámara en pantalla completa"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"El botón se usa ahora para la cámara frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"El botón se usa ahora para la cámara trasera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Detener la grabación de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Estás utilizando la cámara frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Estás utilizando la cámara trasera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Hacer una foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Cambiar a la cámara en pantalla completa"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Cambiar a la vista previa de la cámara"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Cambiar a la cámara frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Cambiar a la cámara trasera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Hacer una foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Repetir la foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-et/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-et/strings.xml
index d82dcd5..d4c37fe 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-et/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-et/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Täisekraaniga kaamerale lülitamine"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Nuppu kasutatakse nüüd esikaamera jaoks"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Nuppu kasutatakse nüüd tagakaamera jaoks"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Video salvestamise peatamine"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Esikaamera kasutamine"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Tagakaamera kasutamine"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Foto jäädvustamine"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Täisekraaniga kaamerale lülitumine"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Kaamera eelvaatele lülitumine"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Esikaamerale lülitumine"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Tagakaamerale lülitumine"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Foto jäädvustamine"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Foto uuesti jäädvustamine"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-eu/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-eu/strings.xml
index b3c20c9..4271983 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-eu/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-eu/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Erabili pantaila osoko kamera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Orain, aurreko kamera erabiltzeko da botoia"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Orain, atzeko kamera erabiltzeko da botoia"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Utzi bideoa grabatzeari"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Aurreko kamera erabiltzen"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Atzeko kamera erabiltzen"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Atera argazkia"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Erabili pantaila osoko kamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Erabili kameraren aurrebista"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Erabili aurreko kamera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Erabili atzeko kamera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Atera argazkia"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Atera berriro argazkia"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-fa/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-fa/strings.xml
index 24e757b..5d58771 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-fa/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-fa/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"جابه‌جایی به دوربین تمام صفحه"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"اکنون دکمه، دوربین جلو است"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"اکنون دکمه، دوربین عقب است"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"توقف ضبط ویدیو"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"استفاده از دوربین جلو"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"استفاده از دوربین عقب"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"عکس گرفتن"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"رفتن به دوربین تمام صفحه"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"رفتن به پیش‌نمایش دوربین"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"رفتن به دوربین جلو"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"رفتن به دوربین عقب"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"عکس گرفتن"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"عکس گرفتن مجدد"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-fi/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-fi/strings.xml
index 5a3ddd8..9d7cb09 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-fi/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-fi/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Siirry koko näytön kameraan"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Painikkeeseen on nyt määritetty etukamera."</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Painikkeeseen on nyt määritetty takakamera."</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Lopeta videon tallentaminen"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Etukamera käytössä"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Takakamera käytössä"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ota kuva"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Siirry koko näytön kameraan"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Siirry kameran esikatseluun"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Vaihda etukameraan"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Vaihda takakameraan"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ota kuva"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ota kuva uudelleen"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-fr-rCA/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-fr-rCA/strings.xml
index f0e644e..b202840 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-fr-rCA/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Passer au mode plein écran de l\'appareil photo"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Le bouton est maintenant utilisé pour l\'appareil photo avant"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Le bouton est maintenant utilisé pour l\'appareil photo arrière"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Arrêter l\'enregistrement vidéo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Utilisation de la caméra avant"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Utilisation de la caméra arrière"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Prendre une photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Passer au mode Plein écran de l\'appareil photo"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Passer au mode Aperçu de l\'appareil photo"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Passer à l\'appareil photo avant"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Passer à l\'appareil photo arrière"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Prendre une photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Reprendre la photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-fr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-fr/strings.xml
index 72de07f..a9cfe71 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-fr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-fr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Passer en caméra plein écran"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Le bouton affiche désormais la caméra frontale."</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Le bouton affiche désormais la caméra arrière."</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Arrêter l\'enregistrement vidéo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Caméra frontale activée"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Caméra arrière activée"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Prendre une photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Passer en mode plein écran"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Passer en mode aperçu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Utiliser la caméra avant"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Utiliser la caméra arrière"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Prendre une photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Reprendre la photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-gl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-gl/strings.xml
index 2ab1ef0..3568a0f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-gl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-gl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Cambiar á cámara de pantalla completa"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Agora o botón é a cámara dianteira"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Agora o botón é a cámara traseira"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Deter gravación de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Estase utilizando a cámara frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Estase utilizando a cámara traseira"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tirar foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Cambia á cámara de pantalla completa"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Cambia á vista previa da cámara"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Cambia á cámara frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Cambia á cámara traseira"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tira unha foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Repite a foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-gu/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-gu/strings.xml
index 60780d9..88037b5 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-gu/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-gu/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"પૂર્ણ સ્ક્રીન કૅમેરા પર સ્વિચ કરો"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"બટન હવે આગળનો કૅમેરો છે"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"બટન હવે પાછળનો કૅમેરો છે"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"વિડિઓ રેકોર્ડિંગ બંધ કરો"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"આગળના કૅમેરાનો ઉપયોગ કરી રહ્યાં છે"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"પાછળના કૅમેરાનો ઉપયોગ કરી રહ્યાં છે"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ફોટો લો"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"પૂર્ણ સ્ક્રીન કૅમેરા પર સ્વિચ કરો"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"કૅમેરા પૂર્વાવલોકન પર સ્વીચ કરો"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ફ્ર્ન્ટ ફેસિંગ કૅમેરા પર સ્વિચ કરો"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"પાછળના કૅમેરા પર સ્વિચ કરો"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ફોટો લો"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ફોટો ફરીથી લો"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-hi/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-hi/strings.xml
index cf89a7d..09a441f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-hi/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-hi/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"पूर्ण स्क्रीन कैमरा पर स्विच करें"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"बटन अब सामने का कैमरा है"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"बटन अब पीछे का कैमरा है"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"वीडियो रिकॉर्ड करना बंद करें"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"आगे वाले कैमरे का उपयोग करना"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"पीछे वाले कैमरे का उपयोग करना"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"फ़ोटो लें"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"पूर्ण स्क्रीन कैमरे में बदलें"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"कैमरा पूर्वावलोकन में बदलें"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"सामने वाले कैमरे में बदलें"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"पीछे वाले कैमरे में बदलें"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"फ़ोटो लें"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"फि‍र से फ़ोटो लें"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-hr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-hr/strings.xml
index 3d59fd4..2dca9bd 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-hr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-hr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Prebaci na fotoaparat na punom zaslonu"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Gumb je sada za prednji fotoaparat"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Gumb je sada za stražnji fotoaparat"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zaustavi snimanje videozapisa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Upotreba prednje kamere"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Upotreba stražnje kamere"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Snimi fotografiju"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Prebaci na prikaz fotoaparata preko cijelog zaslona"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Prebaci na pregled fotoaparata"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Prebaci na prednji fotoaparat"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Prebaci na stražnji fotoaparat"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Snimi fotografiju"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ponovno snimi fotografiju"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-hu/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-hu/strings.xml
index 1639ca7..5007b3f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-hu/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-hu/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Váltás teljes képernyős kameranézetre"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"A gomb beállítása jelenleg: elülső kamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"A gomb beállítása jelenleg: hátsó kamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Videofelvétel leállítása"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Első kamera használata"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Hátsó kamera használata"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotó készítése"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Váltás teljes képernyős kameranézetre"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Váltás kamera-előnézetre"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Váltás az első kamerára"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Váltás a hátsó kamerára"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fotó készítése"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Új felvétel"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-hy/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-hy/strings.xml
index 1da5c68..2c1bd79 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-hy/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-hy/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Միացնել լիաէկրան ռեժիմը"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Կոճակն այժմ առջևի տեսախցիկը միացնելու կոճակն է"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Կոճակն այժմ հետևի տեսախցիկը միացնելու կոճակն է"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Դադարեցնել տեսագրումը"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Օգտագործվում է առջևի տեսախցիկը"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Օգտագործվում է հետևի տեսախցիկը"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Լուսանկարել"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Միացնել լիաէկրան ռեժիմը"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Միացնել նախադիտման ռեժիմը"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Միացնել առջևի տեսախցիկը"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Միացնել հետևի տեսախցիկը"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Լուսանկարել"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Նորից լուսանկարել"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-in/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-in/strings.xml
index 6073d8e..4c922cd 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-in/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-in/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Beralih ke kamera layar penuh"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Tombol kini berfungsi untuk kamera depan"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Tombol kini berfungsi untuk kamera belakang"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Berhenti merekam video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Menggunakan kamera depan"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Menggunakan kamera belakang"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ambil foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Beralih ke kamera layar penuh"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Beralih ke pratinjau kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Beralih ke kamera depan"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Beralih ke kamera belakang"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ambil foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ambil ulang foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-is/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-is/strings.xml
index d16b2e2..c796d22 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-is/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-is/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Skipta yfir í myndavél á öllum skjánum"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Hnappurinn er nú fremri myndavél"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Hnappurinn er nú aftari myndavél"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stöðva upptöku myndskeiðs"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Notar fremri myndavél"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Notar aftari myndavél"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Taka mynd"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Skipta yfir í myndavél á öllum skjánum"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Skipta yfir í forskoðun á myndavél"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Skipta yfir í fremri myndavél"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Skipta yfir í aftari myndavél"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Taka mynd"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Taka mynd aftur"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-it/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-it/strings.xml
index 63fac07..abf5d3f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-it/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-it/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Passa alla fotocamera a schermo intero"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Il pulsante viene ora utilizzato per la fotocamera frontale"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Il pulsante viene ora utilizzato per la fotocamera posteriore"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Interrompi registrazione video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"In uso la fotocamera frontale"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"In uso la fotocamera posteriore"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Scatta foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Passa alla fotocamera a schermo intero"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Passa all\'anteprima della fotocamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Passa alla fotocamera anteriore"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Passa alla fotocamera posteriore"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Scatta foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Scatta foto di nuovo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-iw/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-iw/strings.xml
index 3db2e94..e6aed2e 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-iw/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-iw/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"מעבר למצלמה במסך מלא"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"הלחצן מוגדר עכשיו למצלמה הקדמית"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"הלחצן מוגדר עכשיו למצלמה האחורית"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"עצירה של צילום הווידאו"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"באמצעות המצלמה הקדמית"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"באמצעות המצלמה האחורית"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"צילום תמונה"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"מעבר למצלמה במסך מלא"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"מעבר לתצוגה מקדימה של המצלמה"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"מעבר למצלמה הקדמית"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"מעבר למצלמה האחורית"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"צילום תמונה"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"צילום מחדש של התמונה"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ja/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ja/strings.xml
index ffb3a17..85ef3c8 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ja/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ja/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"全画面カメラに切り替え"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"現在、ボタンは前面カメラになっています"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"現在、ボタンは背面カメラになっています"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"録画を停止"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"前面カメラを使用しています"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"背面カメラを使用しています"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"写真を撮る"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"全画面カメラに切り替えます"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"カメラのプレビューに切り替えます"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"前面カメラに切り替えます"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"背面カメラに切り替えます"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"写真を撮影します"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"写真を撮り直します"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ka/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ka/strings.xml
index 6a94b65..edaf33f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ka/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ka/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"სრულეკრანიან კამერაზე გადართვა"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ახლა ღილაკი გამოიყენება წინა კამერისთვის"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ახლა ღილაკი გამოიყენება უკანა კამერისთვის"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ვიდეოს ჩაწერის შეჩერება"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"თქვენ იყენებთ წინა კამერას"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"თქვენ იყენებთ უკანა კამერას"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ფოტოს გადაღება"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"სრულეკრანიან კამერაზე გადართვა"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"კამერის წინასწარ ხედზე გადართვა"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"წინა კამერაზე გადართვა"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"უკანა კამერაზე გადართვა"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ფოტოს გადაღება"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ფოტოს ხელახლა გადაღება"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-kk/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-kk/strings.xml
index 22b89fd..795a063 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-kk/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-kk/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Толық экранды камераға ауысу"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Түйме – енді алдыңғы камера"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Түйме – енді артқы камера"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Бейне жазуды тоқтату"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Алдыңғы камера қолданылуда"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Артқы камера қолданылуда"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Суретке түсіру"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Толық экранды камераға ауысу"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Камераның алдын ала көру режиміне ауысу"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Камераның анфас режиміне ауысу"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Камераның қалыпты режиміне ауысу"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Суретке түсіру"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Суретке қайта түсіру"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-km/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-km/strings.xml
index dd547dd..377f885 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-km/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-km/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ប្ដូរ​ទៅ​កាមេរ៉ា​ពេញ​អេក្រង់"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ឥឡូវ ប៊ូតុង​ស្ថិត​នៅ​​កាមេរ៉ា​មុខ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ឥឡូវ ប៊ូតុងស្ថិត​នៅ​កាមេរ៉ា​ក្រោយ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"បញ្ឈប់​ការ​ថត​វីដេអូ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"កំពុង​ប្រើ​ប្រាស់​កាមេរ៉ា​មុខ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"កំពុង​ប្រើប្រាស់​​​កាមេរ៉ា​ក្រោយ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ថតរូប"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ប្ដូរ​ទៅ​កាមេរ៉ា​ពេញ​អេក្រង់"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ប្ដូរ​ទៅ​ការមើល​កាមេរ៉ា​សាកល្បង"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ប្ដូរ​ទៅ​កាមេរ៉ា​ខាង​មុខ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ប្តូរទៅកាមេរ៉ាខាងក្រោយ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ថតរូប"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ថតរូប​ឡើងវិញ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-kn/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-kn/strings.xml
index 471cfc9..1f5d1ea 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-kn/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-kn/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ಪೂರ್ಣ ಪರದೆ ಕ್ಯಾಮರಾಗೆ ಬದಲಿಸಿ"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ಬಟನ್ ಈಗ ಮುಂಬದಿ ಕ್ಯಾಮರಾದಲ್ಲಿ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ಬಟನ್ ಈಗ ಹಿಂಬದಿ ಕ್ಯಾಮರಾದಲ್ಲಿ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ವೀಡಿಯೊ ರೆಕಾರ್ಡಿಂಗ್ ನಿಲ್ಲಿಸಿ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ಮುಂಬದಿ ಕ್ಯಾಮರಾ ಬಳಸಲಾಗುತ್ತಿದೆ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"ಹಿಂಬದಿ ಕ್ಯಾಮರಾ ಬಳಸಲಾಗುತ್ತಿದೆ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ಫೋಟೋ ತೆಗೆಯಿರಿ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ಪೂರ್ಣ ಪರದೆ ಕ್ಯಾಮರಾಗೆ ಬದಲಿಸಿ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ಕ್ಯಾಮರಾ ಪೂರ್ವವೀಕ್ಷಣೆಗೆ ಬದಲಾಯಿಸಿ"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ಮುಂಬದಿಯ ಕ್ಯಾಮರಾಗೆ ಬದಲಾಯಿಸಿ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ಹಿಂಬದಿಯ ಕ್ಯಾಮರಾಗೆ ಬದಲಾಯಿಸಿ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ಫೋಟೋ ತೆಗೆಯಿರಿ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ಫೋಟೋವನ್ನು ಮರುಸೆರೆಹಿಡಿಯಿರಿ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ko/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ko/strings.xml
index bb5e64d..1b675e7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ko/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ko/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"전체화면 카메라로 전환"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"현재 버튼: 전면 카메라"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"현재 버튼: 후면 카메라"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"동영상 녹화 중지"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"전면 카메라 사용 중"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"후면 카메라 사용 중"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"사진 촬영"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"전체화면 카메라로 전환"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"카메라 미리보기로 전환"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"전면 카메라로 전환"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"후면 카메라로 전환"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"사진 찍기"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"사진 다시 찍기"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ky/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ky/strings.xml
index fca2893..771f576 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ky/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ky/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Камераны толук экранга которуу"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Азыр баскычта \"Маңдайкы камера\" деп жазылып турат"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Азыр баскычта \"Арткы камера\" деп жазылып турат"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Видео жаздырууну токтотуу"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Маңдайкы камера колдонулууда"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Арткы камера колдонулууда"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Сүрөткө тартуу"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Камераны толук экранга которуу"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Камераны алдын ала көрүү режимине которуу"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Маңдайкы камерага которуу"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Арткы камерага которуу"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Сүрөткө тартуу"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Кайра сүрөткө тартуу"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-lo/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-lo/strings.xml
index 0257e75..6bfdf4e 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-lo/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-lo/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ສະຫຼັບໄປໃຊ້ກ້ອງແບບເຕັມຈໍ"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ຕອນນີ້ເປັນປຸ່ມກ້ອງໜ້າແລ້ວ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ຕອນນີ້ເປັນປຸ່ມກ້ອງຫຼັງແລ້ວ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ຢຸດການບັນທຶກວິດີໂອ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ກຳລັງໃຊ້ກ້ອງໜ້າ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"ກຳລັງໃຊ້ກ້ອງຫຼັງ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ຖ່າຍຮູບ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ສະຫຼັບໄປໃຊ້ກ້ອງແບບເຕັມຈໍ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ສະຫຼັບໄປໃຊ້ຕົວຢ່າງກ້ອງ"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ສະຫຼັບໄປໃຊ້ກ້ອງໜ້າ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ສະຫຼັບໄປໃຊ້ກ້ອງຫຼັງ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ຖ່າຍຮູບ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ຖ່າຍຮູບໃໝ່"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-lt/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-lt/strings.xml
index 62c6de9..6ff3b0d 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-lt/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-lt/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Perjungti į viso ekrano režimu veikiantį fotoaparatą"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Dabar tai yra priekinio fotoaparato mygtukas"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Dabar tai yra užpakalinio fotoaparato mygtukas"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Sustabdyti vaizdo įrašymą"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Naudojamas priekinis fotoaparatas"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Naudojamas užpakalinis fotoaparatas"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotografuoti"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Perjungti į viso ekrano režimu veikiantį fotoaparatą"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Perjungti į fotoaparato peržiūrą"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Perjungti į priekinį fotoaparatą"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Perjungti į užpakalinį fotoaparatą"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fotografuoti"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Fotografuoti iš naujo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-lv/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-lv/strings.xml
index 4800f6b..d6d4782 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-lv/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-lv/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Pārslēgties uz pilnekrāna kameru"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Poga tagad tiek izmantota priekšējai kamerai"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Poga tagad tiek izmantota aizmugurējai kamerai"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Pārtraukt videoklipa ierakstīšanu"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Tiek izmantota priekšējā kamera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Tiek izmantota aizmugurējā kamera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Uzņemt fotoattēlu"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Pārslēgt uz pilnekrāna kameru"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Pārslēgt uz kameras priekšskatījumu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Pārslēgt uz priekšējo kameru"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Pārslēgt uz aizmugurējo kameru"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Uzņemt fotoattēlu"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Atkārtoti uzņemt fotoattēlu"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-mk/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-mk/strings.xml
index 82c466f..a0f84a0 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-mk/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-mk/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Префрлете на камера на цел екран"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Копчето е сега предна камера"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Копчето е сега задна камера"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Сопрете со снимање видео"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Се користи предната камера"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Се користи задната камера"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Фотографирај"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Префрлете на камера на цел екран"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Префрлете на преглед на камера"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Префрлете на предна камера"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Префрлете на задна камера"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Фотографирај"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Фотографирај пак"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ml/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ml/strings.xml
index 0423da2..77c0a4f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ml/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ml/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"പൂർണ്ണസ്ക്രീൻ ക്യാമറയിലേക്ക് മാറുക"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ബട്ടൺ അമർത്തിയാൻ മുൻ ക്യാമറ ലഭിക്കും"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ബട്ടൺ അമർത്തിയാൻ പിൻ ക്യാമറ ലഭിക്കും"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"വീഡിയോ റെക്കോർഡുചെയ്യൽ നിർത്തുക"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"മുൻവശത്തെ ക്യാമറ ഉപയോഗിക്കുന്നു"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"പിൻഭാഗത്തുള്ള ക്യാമറ ഉപയോഗിക്കുന്നു"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ഫോട്ടോ എടുക്കുക"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"പൂർണ്ണസ്ക്രീൻ ക്യാമറയിലേക്ക് മാറുക"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ക്യാമറ പ്രിവ്യൂവിലേക്ക് മാറുക"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"മുൻ ക്യാമറയിലേക്ക് മാറുക"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"പിൻ ക്യാമറയിലേക്ക് മാറുക"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ഫോട്ടോ എടുക്കുക"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ഫോട്ടോ വീണ്ടുമെടുക്കുക"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-mn/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-mn/strings.xml
index 024e004..1894634 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-mn/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-mn/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Бүтэн дэлгэцийн камер руу сэлгэх"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Товчлуур нь урд талын камер боллоо"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Товчлуур нь ард талын камер боллоо"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Видео бичилтийг зогсоох"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Урд камер ашиглаж байна"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Арын камер ашиглаж байна"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Зураг авах"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Бүтэн дэлгэцийн камер руу сэлгэх"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Камерын урьдчилан үзэх рүү сэлгэх"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Урд талын камер руу сэлгэх"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Ар талын камер руу сэлгэх"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Зураг авах"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Зураг дахин авах"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-mr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-mr/strings.xml
index bc9c2fb..24c1931 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-mr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-mr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"पूर्ण स्क्रीन कॅमेर्‍यावर स्विच करा"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"बटण आता पुढील कॅमेरा आहे"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"बटण आता मागील कॅमेरा आहे"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"व्हिडिओ रेकॉर्ड करणे थांबवा"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"समोरील कॅमेरा वापरत आहे"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"मागील कॅमेरा वापरत आहे"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"फोटो घ्‍या"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"पूर्ण स्क्रीन कॅमेर्‍यावर स्विच करा"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"कॅमेरा पूर्वावलोकनावर स्विच करा"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"समोरील कॅमऱ्यावर स्विच करा"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"मागील कॅमेर्‍यावर स्‍विच करा"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"फोटो घ्‍या"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"फोटो पुन्हा घ्या"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ms/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ms/strings.xml
index 3245b9c..44806f5 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ms/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ms/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Tukar kepada kamera skrin penuh"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Butang kini kamera depan"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Butang kini kamera belakang"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Berhenti merakam video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Menggunakan kamera depan"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Menggunakan kamera belakang"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ambil foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Beralih ke kamera skrin penuh"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Beralih ke pratonton kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Beralih ke kamera menghadap depan"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Beralih ke kamera menghadap belakang"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ambil foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ambil semula foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-my/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-my/strings.xml
index 884c0c8..7112abc 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-my/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-my/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"မျက်နှာပြင်အပြည့်ကင်မရာသို့ ပြောင်းရန်"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ခလုတ်မှာ အရှေ့ကင်မရာအတွက် ဖြစ်သွားပါပြီ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ခလုတ်မှာ အနောက်ကင်မရာအတွက် ဖြစ်သွားပါပြီ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ဗီဒီယိုရိုက်ကူးခြင်း ရပ်ရန်"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"အရှေ့ကင်မရာကို သုံးနေသည်"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"အနောက်ကင်မရာကို သုံးနေသည်"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ဓာတ်ပုံရိုက်ရန်"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"မျက်နှာပြင်အပြည့်ကင်မရာသို့ ပြောင်းရန်"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ကင်မရာအစမ်းကြည့်ရှုမှုသို့ ပြောင်းရန်"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"အရှေ့ကင်မရာသို့ ပြောင်းရန်"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"အနောက်ကင်မရာသို့ ပြောင်းရန်"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ဓာတ်ပုံရိုက်ရန်"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ဓာတ်ပုံပြန်ရိုက်ရန်"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-nb/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-nb/strings.xml
index bfa58ed..5e5fb60 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-nb/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-nb/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Bytt til fullskjermkamera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Nå er knappen frontkameraet"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Nå er knappen det bakre kameraet"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Slutt å filme"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Bruker frontkameraet"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Bruker det bakre kameraet"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ta et bilde"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Bytt til fullskjermkamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Bytt til forhåndsvisning for kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Bytt til frontkamera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Bytt til bakovervendt kamera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ta bilde"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ta bilde på nytt"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ne/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ne/strings.xml
index 1362b32..d8ea795 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ne/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ne/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"पूर्ण स्क्रिन क्यामेरामा बदल्नुहोस्"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"बटन अब अगाडिको क्यामेराका लागि हो"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"बटन अब पछाडिको क्यामेराका लागि हो"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"भिडियो रेकर्ड रोक्नुहोस्"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"अगाडिको क्यामेरा प्रयोग गरिँदै"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"पछाडिको क्यामेरा प्रयोग गरिँदै"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"तस्बिर खिच्नुहोस्"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"पूर्ण स्क्रिन क्यामेरामा बदल्नुहोस्"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"क्यामेराको पूर्वावलोकन मोडमा बदल्नुहोस्"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"अगाडिपट्टिको क्यामेरामा बदल्नुहोस्"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"पछाडिपट्टिको क्यामेरामा बदल्नुहोस्"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"तस्बिर खिच्नुहोस्"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"पुन: तस्बिर खिच्नुहोस्"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-nl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-nl/strings.xml
index 94f2718..0369fed 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-nl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-nl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Overschakelen naar camera op volledig scherm"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"De knop wordt nu gebruikt voor de camera aan de voorzijde"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"De knop wordt nu gebruikt voor de camera aan de achterzijde"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Video-opname stoppen"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"De camera aan de voorzijde wordt gebruikt"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"De camera aan de achterzijde wordt gebruikt"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Foto maken"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Overschakelen naar camera op volledig scherm"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Overschakelen naar cameravoorbeeld"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Overschakelen naar camera aan voorzijde"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Overschakelen naar camera aan achterzijde"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Foto maken"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Foto opnieuw maken"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-no/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-no/strings.xml
index bfa58ed..5e5fb60 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-no/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-no/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Bytt til fullskjermkamera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Nå er knappen frontkameraet"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Nå er knappen det bakre kameraet"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Slutt å filme"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Bruker frontkameraet"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Bruker det bakre kameraet"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ta et bilde"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Bytt til fullskjermkamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Bytt til forhåndsvisning for kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Bytt til frontkamera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Bytt til bakovervendt kamera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ta bilde"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ta bilde på nytt"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pa/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pa/strings.xml
index 4296c98..e1247e0 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pa/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pa/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ਬਦਲੀ ਕਰਕੇ ਸੰਪੂਰਨ ਸਕ੍ਰੀਨ ਕੈਮਰਾ \'ਤੇ ਜਾਓ"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ਬਟਨ ਹੁਣ ਮੂਹਰਲਾ ਕੈਮਰਾ ਹੈ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ਬਟਨ ਹੁਣ ਪਿਛਲਾ ਕੈਮਰਾ ਹੈ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ਵੀਡੀਓ ਰਿਕਾਰਡ ਕਰਨਾ ਬੰਦ ਕਰੋ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ਮੂਹਰਲਾ ਕੈਮਰਾ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"ਪਿਛਲਾ ਕੈਮਰਾ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ਫ਼ੋਟੋ ਖਿੱਚੋ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ਬਦਲੀ ਕਰਕੇ ਸੰਪੂਰਨ ਸਕ੍ਰੀਨ ਕੈਮਰੇ \'ਤੇ ਜਾਓ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ਬਦਲੀ ਕਰਕੇ ਕੈਮਰਾ ਪੂਰਵ-ਝਲਕ \'ਤੇ ਜਾਓ"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ਬਦਲੀ ਕਰਕੇ ਮੂਹਰਲੇ ਕੈਮਰੇ \'ਤੇ ਜਾਓ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ਬਦਲੀ ਕਰਕੇ ਪਿਛਲੇ ਕੈਮਰੇ \'ਤੇ ਜਾਓ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ਫ਼ੋਟੋ ਖਿੱਚੋ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ਫ਼ੋਟੋ ਮੁੜ-ਖਿੱਚੋ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pl/strings.xml
index 0e03e2d..b85afa6 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Włącz aparat pełnoekranowy"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Przycisk włącza teraz przedni aparat"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Przycisk włącza teraz tylny aparat"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zatrzymaj nagrywanie filmu"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Używany jest przedni aparat"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Używany jest tylny aparat"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Zrób zdjęcie"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Przełącz na aparat pełnoekranowy"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Przełącz na podgląd aparatu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Przełącz na przedni aparat"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Przełącz na tylny aparat"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Zrób zdjęcie"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Zrób nowe zdjęcie"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rBR/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rBR/strings.xml
index 7c1fa07..59f457c 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rBR/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Alternar para câmera em tela cheia"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"O botão agora está na câmera frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"O botão agora está na câmera traseira"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Parar gravação de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Usando a câmera frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Usando a câmera traseira"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tirar foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Alternar para câmera em tela cheia"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Alternar para visualização da câmera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Alternar para câmera frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Alternar para câmera traseira"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tirar foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Tirar foto novamente"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rPT/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rPT/strings.xml
index 661b4d9..71f651d 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rPT/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Mudar para a câmara de ecrã completo"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"O botão é agora utilizado para a câmara frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"O botão é agora utilizado para a câmara posterior"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Parar a gravação de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"A utilizar a câmara frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"A utilizar a câmara posterior"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tirar foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Mudar para a câmara de ecrã completo"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Mudar para a pré-visualização da câmara"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Mudar para a câmara frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Mudar para a câmara traseira"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tirar foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Tirar nova foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pt/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pt/strings.xml
index 7c1fa07..59f457c 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pt/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pt/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Alternar para câmera em tela cheia"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"O botão agora está na câmera frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"O botão agora está na câmera traseira"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Parar gravação de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Usando a câmera frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Usando a câmera traseira"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tirar foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Alternar para câmera em tela cheia"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Alternar para visualização da câmera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Alternar para câmera frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Alternar para câmera traseira"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tirar foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Tirar foto novamente"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ro/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ro/strings.xml
index 98d0050..f491f28 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ro/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ro/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Comutați la camera pe ecran complet"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Acum butonul este pentru camera foto frontală."</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Acum butonul este pentru camera foto posterioară."</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Opriți înregistrarea video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Este folosită camera foto frontală"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Este folosită camera foto posterioară"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotografiați"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Comutați la camera pe ecran complet"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Comutați la previzualizarea camerei"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Comutați la camera frontală"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Comutați la camera posterioară"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fotografiați"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Refaceți fotografia"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ru/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ru/strings.xml
index a4c7206..9de3cab 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ru/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ru/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Перейти в полноэкранный режим"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Сейчас на кнопке написано: Фронтальная камера"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Сейчас на кнопке написано: Основная камера"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Остановить запись видео"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Используется фронтальная камера"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Используется основная камера"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Сделать снимок"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Переключиться в полноэкранный режим"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Переключиться в режим предварительного просмотра"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Переключиться на фронтальную камеру"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Переключиться на основную камеру"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Сделать снимок"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Новый снимок"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-si/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-si/strings.xml
index 6cc5eef..1747d1a 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-si/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-si/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"පූර්ණ තිර කැමරාව වෙත මාරුවීම"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"බොත්තම දැන් ඉදිරිපස කැමරාවයි"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"බොත්තම දැන් පිටුපස කැමරාවයි"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"වීඩියෝව පටිගත කිරීම නැවැත්වීම"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ඉදිරිපස කැමරාව භාවිත කරමින්"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"පසුපස කැමරාව භාවිත කරමින්"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ඡායාරූපය ගන්න"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"පූර්ණ තිර කැමරාව වෙත මාරුවීම"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"කැමරා පෙරදසුන වෙත මාරුවීම"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ඉදිරිපසට මුහුණලා ඇති කැමරාව වෙත මාරුවීම"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"පසුපසට මුහුණලා ඇති කැමරාව වෙත මාරුවීම"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ඡායාරූපය ගැනීම"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ඡායාරූපය නැවත ගැනීම"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sk/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sk/strings.xml
index 916158b..a053e2f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sk/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sk/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Prepnúť na fotoaparát na celej obrazovke"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Tlačidlo sa nachádza v polohe Predný fotoaparát"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Tlačidlo sa nachádza v polohe Zadný fotoaparát"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zastaviť zaznamenávanie videa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Používa sa predný fotoaparát"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Používa sa zadný fotoaparát"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Odfotiť"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Prepnúť na fotoaparát na celej obrazovke"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Prepnúť na ukážku z fotoaparátu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Prepnúť na predný fotoaparát"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Prepnúť na zadný fotoaparát"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Odfotiť"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Znova odfotiť"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sl/strings.xml
index ef1fe20..b50aaae 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Preklopi v celozaslonski način fotoaparata"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Gumb zdaj upravlja sprednji fotoaparat"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Gumb zdaj upravlja hrbtni fotoaparat"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Ustavi snemanje videoposnetka"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Uporaba fotoaparata spredaj"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Uporaba fotoaparata zadaj"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Posnemi fotografijo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Preklopi v celozaslonski način fotoaparata"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Preklopi v predogled fotoaparata"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Preklopi na fotoaparat na sprednji strani"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Preklopi na fotoaparat na zadnji strani"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Posnemi fotografijo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Znova posnemi fotografijo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sq/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sq/strings.xml
index ff8cb87..4be0317 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sq/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sq/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Kalo në kamerën me ekran të plotë"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Butoni tani është kamera e përparme"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Butoni tani është kamera e pasme"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Ndalo regjistrimin e videos"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Po përdor kamerën e përparme"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Po përdor kamerën e pasme"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Bëj një fotografi"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Kalo në kamerën me ekran të plotë"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Kalo te pamja paraprake e kamerës"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Kalo te kamera e përparme"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Kalo te kamera e pasme"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Bëj një fotografi"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Bëje përsëri fotografinë"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sr/strings.xml
index 17150b4..4afcbe9 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Пређите на приказ камере преко целог екрана"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Дугме сад активира предњу камеру"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Дугме сад активира задњу камеру"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Зауставите снимање видеа"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Користимо предњу камеру"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Користимо задњу камеру"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Снимите слику"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Пребаците на приказ камере преко целог екрана"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Пребаците на преглед камере"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Пребаците на предњу камеру"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Пребаците на задњу камеру"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Снимите слику"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Поново снимите слику"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sv/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sv/strings.xml
index 3091479..8bd00cc 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sv/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sv/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Byt till fullskärmskamera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Knappen är nu framåtvänd kamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Knappen är nu bakåtvänd kamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Sluta spela in video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Använder främre kamera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Använder bakre kamera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ta en bild"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Växla till helskärmskamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Växla till förhandsgranskning i kameran"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Växla till den framåtvända kameran"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Växla till den bakåtvända kameran"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ta en bild"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ta en ny bild"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sw/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sw/strings.xml
index 8608b75..c951ac6 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sw/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sw/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Badilisha utumie kamera ya skrini nzima"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Kitufe hiki sasa ni kamera ya mbele"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Kitufe hiki sasa ni kamera ya nyuma"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Acha kurekodi video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Inatumia kamera ya mbele"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Inatumia kamera ya nyuma"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Piga picha"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Badili utumie kamera ya skrini nzima"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Badili utumie onyesha la kuchungulia la kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Badili utumie kamera ya mbele"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Badili utumie kamera ya nyuma"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Piga picha"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Piga picha tena"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ta/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ta/strings.xml
index 9c42144..374cfcf 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ta/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ta/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"முழுத் திரை கேமராவிற்கு மாறும்"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"இப்போது முன்புறக் கேமராவைக் குறிக்கும் பொத்தான்"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"இப்போது பின்புறக் கேமராவைக் குறிக்கும் பொத்தான்"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"வீடியோ ரெக்கார்டு செய்யப்படுவதை நிறுத்தும்"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"முன்பக்கக் கேமராவைப் பயன்படுத்துகிறீர்கள்"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"பின்பக்கக் கேமராவைப் பயன்படுத்துகிறீர்கள்"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"படமெடுக்கும்"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"முழுத் திரை கேமராவிற்கு மாறும் பொத்தான்"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"கேமரா மாதிரிக்காட்சிக்கு மாறும் பொத்தான்"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"முன்பக்க கேமராவிற்கு மாறும் பொத்தான்"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"பின்பக்க கேமராவிற்கு மாறும் பொத்தான்"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"படமெடுக்கும் பொத்தான்"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"மீண்டும் படமெடுக்கும் பொத்தான்"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-te/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-te/strings.xml
index 4587593..099fa67 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-te/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-te/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"పూర్తి స్క్రీన్ కెమెరాకు మారుస్తుంది"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"బటన్ ఇప్పుడు ముందువైపు కెమెరాగా పని చేస్తోంది"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"బటన్ ఇప్పుడు వెనుకవైపు కెమెరాగా పని చేస్తోంది"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"వీడియో రికార్డింగ్‌ను ఆపివేస్తుంది"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ముందు కెమెరాను ఉపయోగిస్తున్నాము"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"వెనుక కెమెరాను ఉపయోగిస్తున్నాము"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ఫోటో తీస్తుంది"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"పూర్తి స్క్రీన్ కెమెరాకు మారుస్తుంది"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"కెమెరా పరిదృశ్యానికి మారుస్తుంది"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ముందువైపు కెమెరాకు మారుస్తుంది"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"వెనుకవైపు కెమెరాకు మారుస్తుంది"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ఫోటో తీస్తుంది"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ఫోటోను మళ్లీ తీస్తుంది"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-th/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-th/strings.xml
index 9b1150f..62c69a3 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-th/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-th/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"สลับไปยังกล้องแบบเต็มหน้าจอ"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ขณะนี้ปุ่มเป็นกล้องหน้า"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ขณะนี้ปุ่มเป็นกล้องหลัง"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"หยุดการบันทึกวิดีโอ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"กำลังใช้กล้องหน้า"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"กำลังใช้กล้องหลัง"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ถ่ายภาพ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"เปลี่ยนเป็นกล้องแบบเต็มหน้าจอ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"เปลี่ยนเป็นการแสดงตัวอย่างจากกล้อง"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"เปลี่ยนเป็นกล้องหน้า"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"เปลี่ยนเป็นกล้องหลัง"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ถ่ายภาพ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ถ่ายภาพอีกครั้ง"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-tl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-tl/strings.xml
index 5fd98c1..2f6fb83 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-tl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-tl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Lumilipat sa camera na full screen"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Ang button ay para na sa camera sa harap"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Ang button ay para na sa camera sa likod"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Ihinihinto ang pagre-record ng video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Ginagamit ang camera sa harap"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Ginagamit ang camera sa likuran"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Kumuha ng larawan"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Lumipat sa camera na full screen"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Lumipat sa preview ng camera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Lumipat sa camera na nasa harap"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Lumipat sa camera na nasa likod"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Kumuha ng larawan"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Kunang muli"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-tr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-tr/strings.xml
index 80b0b94..da54ac8 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-tr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-tr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Tam ekran kameraya geçer"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Düğme artık ön kamera için kullanılıyor"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Düğme artık arka kamera için kullanılıyor"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Video kaydını durdurur"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Ön kamera kullanılıyor"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Arka kamera kullanılıyor"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotoğraf çeker"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Tam ekran kameraya geçer"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Kamera önizlemesine geçer"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Ön kameraya geçer"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Arka kameraya geçer"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fotoğraf çeker"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Fotoğrafı yeniden çeker"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-uk/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-uk/strings.xml
index c250615..cea540a 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-uk/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-uk/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Показ зображення з камери на весь екран"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Зараз це кнопка камери на передній панелі"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Зараз це кнопка камери на задній панелі"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Зупинення запису відео"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Використання фронтальної камери"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Використання задньої камери"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Зйомка фото"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Показ зображення з камери на весь екран"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Попередній перегляд зображення з камери"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Перейти до фронтальної камери"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Перейти до задньої камери"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Зробити фото"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Зробити фото ще раз"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ur/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ur/strings.xml
index edd4178..585a55a 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ur/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ur/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"پوری اسکرین کے کیمرہ پر سوئچ کریں"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"بٹن اب فرنٹ کیمرا ہے"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"بٹن اب بیک کیمرا ہے"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ویڈیو ریکارڈ کرنے کو روکیں"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"فرنٹ کیمرا استعمال ہو رہا ہے"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"بیک کیمرا استعمال ہو رہا ہے"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"تصویر لیں"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"پوری اسکرین کے کیمرہ پر سوئچ کریں"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"کیمرہ پیش منظر پر سوئچ کریں"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"فرنٹ والے کیمرے پر سوئچ کریں"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"عقب والے کیمرے پر سوئچ کریں"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"تصویر لیں"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"دوبارہ تصویر لیں"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-uz/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-uz/strings.xml
index 0377673..8441d88 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-uz/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-uz/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"To‘liq ekranli rejimga o‘tish"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Endi bu old kamera tugmasi"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Endi bu orqa kamera tugmasi"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Videoga olishni to‘xtatish"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Old kameradan foydalanilmoqda"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Orqa kameradan foydalanilmoqda"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Suratga olish"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"To‘liq ekranli rejimga o‘tish"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Oldindan ko‘rish rejimiga o‘tish"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Old kamerani yoqish"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Orqa kamerani yoqish"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Rasmga olish"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Yangi rasmga olish"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-vi/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-vi/strings.xml
index 81a0e62..0546664 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-vi/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-vi/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Chuyển sang máy ảnh toàn màn hình"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Hiện tại, nút ở chế độ máy ảnh mặt trước"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Hiện tại, nút ở chế độ máy ảnh mặt sau"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Dừng quay video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Đang sử dụng máy ảnh trước"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Đang sử dụng máy ảnh sau"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Chụp ảnh"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Chuyển sang máy ảnh toàn màn hình"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Chuyển sang chế độ xem trước máy ảnh"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Chuyển sang máy ảnh mặt trước"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Chuyển sang máy ảnh mặt sau"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Chụp ảnh"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Chụp lại ảnh"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rCN/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rCN/strings.xml
index 311569c..24e9c1a 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rCN/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"切换到全屏相机模式"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"点按按钮可切换到前置摄像头"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"点按按钮可切换到后置摄像头"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"停止录制视频"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"正在使用前置摄像头"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"正在使用后置摄像头"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"拍照"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"切换到全屏相机模式"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"切换到相机预览模式"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"切换到前置摄像头"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"切换到后置摄像头"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"拍照"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"重拍照片"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rHK/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rHK/strings.xml
index 890a18f..0310b10 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rHK/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"切換至全屏攝像"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"按鈕目前為前置鏡頭"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"按鈕目前為後置鏡頭"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"停止錄製影片"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"使用前置鏡頭"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"使用後置鏡頭"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"拍照"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"切換至全螢幕相機"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"切換至相機預覽"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"切換至前置鏡頭"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"切換至後置鏡頭"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"拍照"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"重新拍照"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rTW/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rTW/strings.xml
index 30fa03b..d41ddda 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rTW/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"切換至全螢幕相機"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"按鈕目前設定為前置鏡頭"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"按鈕目前設定為後置鏡頭"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"停止錄影"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"目前使用的是前置鏡頭"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"目前使用的是後置鏡頭"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"拍攝相片"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"切換至全螢幕相機"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"切換至相機預覽畫面"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"切換至前置鏡頭"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"切換至後置鏡頭"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"拍照"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"重新拍照"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-zu/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-zu/strings.xml
index 33a9284..6e147b7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-zu/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-zu/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 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
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Shintshela kukhamera yesikrini esigcwele"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Inkinobho manje iyikhamera yangaphambili"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Inkinobho manje iyikhamera yangemuva"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Misa ukurekhoda ividiyo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Isebenzisa ikhamera yangaphambili"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Isebenzisa ikhamera yangemuva"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Thatha isithombe"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Shintshela kukhamera yesikrini esigcwele"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Shintshela ekuhloleni kuqala kwekhamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Shintshela kwikhamera yangaphambili"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Shintshela kwikhamera ebheke emuva"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Thatha isithombe"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Thatha kabusha isithombe"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values/dimens.xml b/java/com/android/dialer/callcomposer/cameraui/res/values/dimens.xml
index 09d4a58..e3d5c24 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values/dimens.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values/dimens.xml
@@ -16,7 +16,7 @@
   -->
 <resources>
   <dimen name="camera_view_button_margin">22dp</dimen>
-  <dimen name="camera_view_button_size">46dp</dimen>
+  <dimen name="camera_view_button_size">48dp</dimen>
   <dimen name="capture_button_size">84dp</dimen>
   <dimen name="capture_button_bottom_margin">4dp</dimen>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml
index 999fe8f..4db7968 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml
@@ -1,17 +1,30 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2016 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
+ -->
 <resources>
   <!-- Content description of button to switch to full screen camera -->
-  <string name="camera_switch_full_screen">Switch to full screen camera</string>
+  <string name="description_camera_switch_full_screen">Switch to full screen camera</string>
+  <!-- Content description of button to resize camera from fullscreen to only a preview -->
+  <string name="description_camera_switch_preview_screen">Switch to camera preview</string>
   <!-- Content description of button when after swapped to front -->
-  <string name="camera_switch_camera_facing">Button is now front camera</string>
+  <string name="description_camera_switch_camera_facing">Switch to front facing camera</string>
   <!-- Content description of button when after swapped to back -->
-  <string name="camera_switch_camera_rear">Button is now back camera</string>
-  <!-- Content description of button to cancel recording video -->
-  <string name="camera_cancel_recording">Stop recording video</string>
-  <!-- Accessibility announcement for when we are using the front facing camera -->
-  <string name="using_front_camera">Using front camera</string>
-  <!-- Accessibility announcement for when we are using the back camera -->
-  <string name="using_back_camera">Using back camera</string>
+  <string name="description_camera_switch_camera_rear">Switch to back facing camera</string>
   <!-- Content description of button to take a photo -->
-  <string name="camera_take_picture">Take photo</string>
+  <string name="description_camera_take_picture">Take photo</string>
+  <!-- Content description of button to cancel a photo -->
+  <string name="description_camera_cancel_photo">Retake photo</string>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/callcomposer/proto/call_composer_contact.proto b/java/com/android/dialer/callcomposer/proto/call_composer_contact.proto
deleted file mode 100644
index 99766aa..0000000
--- a/java/com/android/dialer/callcomposer/proto/call_composer_contact.proto
+++ /dev/null
@@ -1,18 +0,0 @@
-syntax = "proto2";
-
-option java_package = "com.android.dialer.callcomposer";
-option java_multiple_files = true;
-option optimize_for = LITE_RUNTIME;
-
-package com.android.dialer.callcomposer;
-
-message CallComposerContact {
-  optional fixed64 photo_id = 1;
-  optional string photo_uri = 2;
-  optional string contact_uri = 3;
-  optional string name_or_number = 4;
-  optional string number = 6;
-  optional string display_number = 7;
-  optional string number_label = 8;
-  optional int32 contact_type = 9;
-}
diff --git a/java/com/android/dialer/callcomposer/res/layout/call_composer_activity.xml b/java/com/android/dialer/callcomposer/res/layout/call_composer_activity.xml
index c3f1102..48d6368 100644
--- a/java/com/android/dialer/callcomposer/res/layout/call_composer_activity.xml
+++ b/java/com/android/dialer/callcomposer/res/layout/call_composer_activity.xml
@@ -15,11 +15,11 @@
   ~ limitations under the License
   -->
 <FrameLayout
-  xmlns:android="http://schemas.android.com/apk/res/android"
-  android:id="@+id/background"
-  android:layout_width="match_parent"
-  android:layout_height="match_parent"
-  android:background="@color/call_composer_background_color">
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/background"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@color/call_composer_background_color">
 
   <LinearLayout
     android:id="@+id/call_composer_container"
@@ -43,6 +43,8 @@
         android:layout_marginTop="@dimen/call_composer_contact_container_margin_top"
         android:paddingTop="@dimen/call_composer_contact_container_padding_top"
         android:paddingBottom="@dimen/call_composer_contact_container_padding_bottom"
+        android:paddingStart="16dp"
+        android:paddingEnd="16dp"
         android:background="@color/dialer_theme_color">
 
         <TextView
@@ -50,6 +52,8 @@
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:gravity="center"
+          android:maxLines="1"
+          android:ellipsize="end"
           android:textColor="@color/background_dialer_white"
           android:textSize="@dimen/call_composer_name_text_size"/>
 
@@ -58,6 +62,8 @@
           android:layout_width="match_parent"
           android:layout_height="wrap_content"
           android:gravity="center"
+          android:maxLines="1"
+          android:ellipsize="end"
           android:textColor="@color/background_dialer_white"
           android:textSize="@dimen/call_composer_number_text_size"/>
       </LinearLayout>
@@ -70,10 +76,22 @@
         android:background="@drawable/call_composer_contact_border"/>
     </RelativeLayout>
 
-    <android.support.v4.view.ViewPager
-      android:id="@+id/call_composer_view_pager"
-      android:layout_width="match_parent"
-      android:layout_height="@dimen/call_composer_view_pager_height"/>
+    <FrameLayout
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content">
+
+      <com.android.dialer.widget.LockableViewPager
+          android:id="@+id/call_composer_view_pager"
+          android:layout_width="match_parent"
+          android:layout_height="@dimen/call_composer_view_pager_height"/>
+
+      <ProgressBar
+          android:id="@+id/call_composer_loading"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_gravity="center"
+          android:visibility="gone"/>
+    </FrameLayout>
   </LinearLayout>
 
   <FrameLayout
@@ -87,7 +105,7 @@
         android:layout_height="@dimen/call_composer_media_bar_height"
         android:orientation="horizontal"
         android:gravity="center_horizontal"
-        android:background="@color/dialer_secondary_color"
+        android:background="@color/dialer_theme_color_dark"
         android:clickable="true">
 
       <ImageView
@@ -96,7 +114,8 @@
           android:layout_height="match_parent"
           android:scaleType="center"
           android:src="@drawable/quantum_ic_camera_alt_white_24"
-          android:background="?android:attr/selectableItemBackgroundBorderless"/>
+          android:background="?android:attr/selectableItemBackgroundBorderless"
+          android:contentDescription="@string/description_call_composer_camera"/>
 
       <ImageView
           android:id="@+id/call_composer_photo"
@@ -104,7 +123,8 @@
           android:layout_height="match_parent"
           android:scaleType="center"
           android:src="@drawable/quantum_ic_photo_white_24"
-          android:background="?android:attr/selectableItemBackgroundBorderless"/>
+          android:background="?android:attr/selectableItemBackgroundBorderless"
+          android:contentDescription="@string/description_call_composer_photo"/>
 
       <ImageView
           android:id="@+id/call_composer_message"
@@ -112,7 +132,8 @@
           android:layout_height="match_parent"
           android:scaleType="center"
           android:src="@drawable/quantum_ic_message_white_24"
-          android:background="?android:attr/selectableItemBackgroundBorderless"/>
+          android:background="?android:attr/selectableItemBackgroundBorderless"
+          android:contentDescription="@string/description_call_composer_message"/>
     </LinearLayout>
 
     <FrameLayout
diff --git a/java/com/android/dialer/callcomposer/res/layout/fragment_message_composer.xml b/java/com/android/dialer/callcomposer/res/layout/fragment_message_composer.xml
index 77c7a58..1556247 100644
--- a/java/com/android/dialer/callcomposer/res/layout/fragment_message_composer.xml
+++ b/java/com/android/dialer/callcomposer/res/layout/fragment_message_composer.xml
@@ -70,7 +70,7 @@
       android:background="@color/background_dialer_white"
       android:textCursorDrawable="@drawable/searchedittext_custom_cursor"
       android:layout_toStartOf="@+id/remaining_characters"
-      android:inputType="textShortMessage"
+      android:inputType="textShortMessage|textCapSentences"
       android:imeOptions="flagNoExtractUi|actionSend"/>
 
     <TextView
diff --git a/java/com/android/dialer/callcomposer/res/values-af/strings.xml b/java/com/android/dialer/callcomposer/res/values-af/strings.xml
index 81f97fd..62a7457 100644
--- a/java/com/android/dialer/callcomposer/res/values-af/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-af/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Laat toe"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Verleen toegang tot kamera om \'n foto te neem"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Verleen toegang tot media om \'n prent te deel"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Neem \'n foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Kies \'n foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Stuur \'n boodskap"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto is via Boodskappe gestuur"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Boodskap is via Boodskappe gestuur"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-am/strings.xml b/java/com/android/dialer/callcomposer/res/values-am/strings.xml
index c442490..fe1c1e5 100644
--- a/java/com/android/dialer/callcomposer/res/values-am/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-am/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"ፍቀድ"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ፎቶ ያንሱ፣ ለካሜራ መዳረሻ ይስጡ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"አንድ ምስል ለማጋራት ለማህደረ መረጃ መዳረሻ ይስጡ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ፎቶ ያንሱ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ፎቶ ይምረጡ"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"መልዕክት ይላኩ"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"ፎቶ በመልዕክቶች በኩል ተልኳል"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"መልዕክት በመልዕክቶች በኩል ተልኳል"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ar/strings.xml b/java/com/android/dialer/callcomposer/res/values-ar/strings.xml
index ba43f0f..b70f3ff 100644
--- a/java/com/android/dialer/callcomposer/res/values-ar/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ar/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"سماح"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"لالتقاط صورة، يجب منح إذن بالدخول إلى الكاميرا"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"لمشاركة صورة، يجب منح إذن بالدخول إلى الوسائط"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"التقاط صورة"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"اختيار صورة"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"إرسال رسالة"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"‏صورة مرسلة عبر Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"‏رسالة مرسلة عبر Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-az/strings.xml b/java/com/android/dialer/callcomposer/res/values-az/strings.xml
index 2f913d9..7495555 100644
--- a/java/com/android/dialer/callcomposer/res/values-az/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-az/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"İcazə verin"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Şəkil çəkmək üçün kameraya giriş icazəsi verin"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Şəkli paylaşmaq üçün Mediaya giriş icazəsi verin"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Şəkil çəkin"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Foto seçin"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Mesaj göndərin"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto Mesajlaşma tətbiqi vasitəsilə göndərildi"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mesaj Mesajlaşma tətbiqi vasitəsilə göndərildi"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/callcomposer/res/values-b+sr+Latn/strings.xml
index c357d50..88b8011 100644
--- a/java/com/android/dialer/callcomposer/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-b+sr+Latn/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Dozvoli"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Odobrite pristup Kameri da biste snimili sliku"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Odobrite pristup Medijima da biste delili sliku"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Slikajte"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Izaberite sliku"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Pošaljite poruku"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Slika je poslata preko Messages-a"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Poruka je poslata preko Messages-a"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-be/strings.xml b/java/com/android/dialer/callcomposer/res/values-be/strings.xml
index bb3244b..a741ccd 100644
--- a/java/com/android/dialer/callcomposer/res/values-be/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-be/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Дазволіць"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Каб зрабіць фота, адкрыйце доступ да Камеры"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Каб абагуліць відарыс, адкрыйце доступ да медыяфайлаў"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Зрабіць фота"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Выбраць фота"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Адправіць паведамленне"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Фота адпраўлена праз праграму \"Паведамленні\""</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Паведамленне адпраўлена праз праграму \"Паведамленні\""</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-bg/strings.xml b/java/com/android/dialer/callcomposer/res/values-bg/strings.xml
index 1bc05cd..4348bc6 100644
--- a/java/com/android/dialer/callcomposer/res/values-bg/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-bg/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Разрешаване"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"За да направите снимка, разрешете достъп до Камера"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"За да споделите изображение, разрешете достъп до Медии"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Правене на снимка"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Избиране на снимка"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Изпращане на съобщение"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Снимката е изпратена чрез Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Съобщението е изпратено чрез Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-bn/strings.xml b/java/com/android/dialer/callcomposer/res/values-bn/strings.xml
index e991b3b..f2f3f11 100644
--- a/java/com/android/dialer/callcomposer/res/values-bn/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-bn/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"অনুমতি দিন"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"একটি ফটো নিতে, ক্যামেরাতে অ্যাক্সেস দিন"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"কোনো ছবি শেয়ার করতে, মিডিয়াতে অ্যাক্সেস দিন"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"একটি ছবি তুলুন"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"একটি ফটো বেছে নিন"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"একটি বার্তা পাঠান"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Messages এর সাহায্যে ফটো পাঠানো হয়েছে"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Messages-এর সাহায্যে বার্তা পাঠানো হয়েছে"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-bs/strings.xml b/java/com/android/dialer/callcomposer/res/values-bs/strings.xml
index 7d0b8d2..a5ecb0c 100644
--- a/java/com/android/dialer/callcomposer/res/values-bs/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-bs/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Dozvoli"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Da snimite fotografiju, dajte pristup Kameri"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Da podijelite sliku, dozvolite pristup Medijima"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Uslikaj"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Izaberi fotografiju"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Pošalji poruku"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotografija je poslana putem aplikacije Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Poruka je poslana putem aplikacije Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ca/strings.xml b/java/com/android/dialer/callcomposer/res/values-ca/strings.xml
index 4fa52ad..1f3007d 100644
--- a/java/com/android/dialer/callcomposer/res/values-ca/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ca/strings.xml
@@ -28,6 +28,11 @@
     <string name="camera_switch_to_still_mode" msgid="1881982437979592567">"Fes una foto"</string>
     <string name="camera_media_failure" msgid="8979549551450965882">"No s\'ha pogut carregar la imatge de la càmera"</string>
     <string name="allow" msgid="8637148297403066623">"Permet"</string>
-    <string name="camera_permission_text" msgid="7863231776480341614">"Per fer una foto, dóna accés a la càmera"</string>
-    <string name="gallery_permission_text" msgid="4102566850658919346">"Per compartir una imatge, dóna accés al contingut multimèdia"</string>
+    <string name="camera_permission_text" msgid="7863231776480341614">"Per fer una foto, dona accés a la càmera"</string>
+    <string name="gallery_permission_text" msgid="4102566850658919346">"Per compartir una imatge, dona accés al contingut multimèdia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Fes una foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Tria una foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Envia un missatge"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto enviada mitjançant Missatges"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Missatge enviat mitjançant Missatges"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-cs/strings.xml b/java/com/android/dialer/callcomposer/res/values-cs/strings.xml
index 93ae0c1..590ab1c 100644
--- a/java/com/android/dialer/callcomposer/res/values-cs/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-cs/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Povolit"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Chcete-li pořídit fotku, povolte přístup k fotoaparátu"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pokud chcete sdílet fotku, povolte přístup k mediálním souborům"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Vyfotit"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Vybrat fotku"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Poslat zprávu"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotka poslaná v aplikaci Zprávy"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Zpráva poslaná v aplikaci Zprávy"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-da/strings.xml b/java/com/android/dialer/callcomposer/res/values-da/strings.xml
index b1e3e6d..179e0d0 100644
--- a/java/com/android/dialer/callcomposer/res/values-da/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-da/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Tillad"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Du skal give adgang til kameraet for at tage et billede"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Du skal give adgang til medier for at dele et billede"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tag et billede"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Vælg et billede"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Send en sms"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotoet blev sendt via Beskeder"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Beskeden blev sendt via Beskeder"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-de/strings.xml b/java/com/android/dialer/callcomposer/res/values-de/strings.xml
index 9b9c13a..d0c88a9 100644
--- a/java/com/android/dialer/callcomposer/res/values-de/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-de/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Zulassen"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Um ein Foto aufzunehmen, musst du den Zugriff auf die Kamera erlauben."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Um ein Bild zu teilen, musst du den Zugriff auf deine Medien erlauben."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Bild aufnehmen"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Foto auswählen"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Nachricht senden"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto über Messages gesendet"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Nachricht über Messages gesendet."</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-el/strings.xml b/java/com/android/dialer/callcomposer/res/values-el/strings.xml
index 45fce84..bfa626b 100644
--- a/java/com/android/dialer/callcomposer/res/values-el/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-el/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Να επιτρέπεται"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Για να τραβήξετε μια φωτογραφία, παραχωρήστε πρόσβαση στην κάμερα"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Για να μοιραστείτε μια εικόνα, παραχωρήστε πρόσβαση στα πολυμέσα"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Λήψη φωτογραφίας"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Επιλογή φωτογραφίας"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Αποστολή μηνύματος"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Η φωτογραφία στάλθηκε μέσω του Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Το μήνυμα στάλθηκε μέσω του Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-en-rAU/strings.xml b/java/com/android/dialer/callcomposer/res/values-en-rAU/strings.xml
index c34cbbd..5e2807b 100644
--- a/java/com/android/dialer/callcomposer/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-en-rAU/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Allow"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"To take a photo, give access to Camera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"To share an image, give access to Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Take a picture"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choose a photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sending a message"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Photo sent via Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Message sent via Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-en-rGB/strings.xml b/java/com/android/dialer/callcomposer/res/values-en-rGB/strings.xml
index c34cbbd..5e2807b 100644
--- a/java/com/android/dialer/callcomposer/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-en-rGB/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Allow"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"To take a photo, give access to Camera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"To share an image, give access to Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Take a picture"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choose a photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sending a message"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Photo sent via Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Message sent via Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-en-rIN/strings.xml b/java/com/android/dialer/callcomposer/res/values-en-rIN/strings.xml
index c34cbbd..5e2807b 100644
--- a/java/com/android/dialer/callcomposer/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-en-rIN/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Allow"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"To take a photo, give access to Camera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"To share an image, give access to Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Take a picture"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choose a photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sending a message"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Photo sent via Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Message sent via Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-es-rUS/strings.xml b/java/com/android/dialer/callcomposer/res/values-es-rUS/strings.xml
index 797d001..f1d4705 100644
--- a/java/com/android/dialer/callcomposer/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-es-rUS/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para tomar una foto, permite el acceso a la cámara"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartir una imagen, permite el acceso al contenido multimedia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tomar una foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Elegir una foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar un mensaje"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto enviada por Mensajes"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mensaje de texto enviado por Mensajes"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-es/strings.xml b/java/com/android/dialer/callcomposer/res/values-es/strings.xml
index 8a4e7d6..cba427b 100644
--- a/java/com/android/dialer/callcomposer/res/values-es/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-es/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para hacer una foto, permite el acceso a la cámara"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartir una imagen, permite el acceso al contenido multimedia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Hacer una foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Elegir una foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar un mensaje"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto enviada a través de Mensajes"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mensaje enviado a través de Mensajes"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-et/strings.xml b/java/com/android/dialer/callcomposer/res/values-et/strings.xml
index 17b77a2..d79ca90 100644
--- a/java/com/android/dialer/callcomposer/res/values-et/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-et/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Luba"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Foto jäädvustamiseks lubage juurdepääs kaamerale"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pildi jagamiseks lubage juurdepääs meediale"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Pildistamine"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Foto valimine"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sõnumi saatmine"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto saadeti rakenduse Messages kaudu"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Sõnum saadeti rakenduse Messages kaudu"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-eu/strings.xml b/java/com/android/dialer/callcomposer/res/values-eu/strings.xml
index be2aba7..32413f9 100644
--- a/java/com/android/dialer/callcomposer/res/values-eu/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-eu/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Baimendu"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Argazkiak ateratzeko, eman kamera atzitzeko baimena"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Irudiak partekatzeko, eman multimedia-edukirako sarbidea"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Atera argazki bat"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Aukeratu argazki bat"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Bidali mezu bat"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Mezuak aplikazioaren bidez bidali da argazkia"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mezuak aplikazioaren bidez bidali da mezua"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-fa/strings.xml b/java/com/android/dialer/callcomposer/res/values-fa/strings.xml
index 9d588b2..a2604a9 100644
--- a/java/com/android/dialer/callcomposer/res/values-fa/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-fa/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"مجاز است"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"برای عکس گرفتن، به دوربین اجازه دسترسی بدهید"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"برای اشتراک‌گذاری تصویر، به رسانه اجازه دسترسی بدهید"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"عکس گرفتن"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"انتخاب عکس"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ارسال پیام"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"عکس ارسال‌شده ازطریق «پیام‌ها»"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"پیام ارسال‌شده ازطریق «پیام‌ها»"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-fi/strings.xml b/java/com/android/dialer/callcomposer/res/values-fi/strings.xml
index 98821bc..482a36a 100644
--- a/java/com/android/dialer/callcomposer/res/values-fi/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-fi/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Salli"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Jos haluat ottaa valokuvan, salli kameran käyttö."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Jos haluat jakaa kuvan, salli kuvien käyttö."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ota kuva"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Valitse kuva"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Lähetä viesti"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Kuva lähetettiin Messages-sovelluksen kautta"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Viesti lähetettiin Messages-sovelluksen kautta"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-fr-rCA/strings.xml b/java/com/android/dialer/callcomposer/res/values-fr-rCA/strings.xml
index 29c001d..be06baa 100644
--- a/java/com/android/dialer/callcomposer/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-fr-rCA/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Autoriser"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Pour prendre une photo, autorisez l\'accès à l\'appareil photo"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pour partager une image, autorisez l\'accès au contenu multimédia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Prendre une photo"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choisir une photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Envoyer un message"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Photo envoyée au moyen de l\'application Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Message envoyé au moyen de l\'application Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-fr/strings.xml b/java/com/android/dialer/callcomposer/res/values-fr/strings.xml
index ab56289..f56ad7a 100644
--- a/java/com/android/dialer/callcomposer/res/values-fr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-fr/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Autoriser"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Pour prendre une photo, accordez l\'accès à l\'appareil photo."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pour partager une image, accordez l\'accès aux fichiers multimédia."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Prendre une photo"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choisir une photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Envoyer un message"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Photo envoyée via l\'application Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Message envoyé via l\'application Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-gl/strings.xml b/java/com/android/dialer/callcomposer/res/values-gl/strings.xml
index 5c86768..f2a0f15 100644
--- a/java/com/android/dialer/callcomposer/res/values-gl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-gl/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para sacar unha foto, concede permiso de acceso á cámara"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartir unha imaxe, concede permiso de acceso aos ficheiros multimedia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tira unha foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Escolle unha foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Envía unha mensaxe"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto enviada a través de Mensaxes"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mensaxe enviada a través de Mensaxes"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-gu/strings.xml b/java/com/android/dialer/callcomposer/res/values-gu/strings.xml
index c948d2e..771d148 100644
--- a/java/com/android/dialer/callcomposer/res/values-gu/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-gu/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"મંજૂરી આપો"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ફોટો લેવા માટે, કૅમેરાની ઍક્સેસ આપો"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"છબી શેર કરવા, મીડિયાની ઍક્સેસ આપો"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"એક ચિત્ર લો"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ફોટો પસંદ કરો"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"એક સંદેશ મોકલો"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Messages મારફતે ફોટો મોકલ્યો"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Messages મારફતે સંદેશ મોકલ્યો"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-hi/strings.xml b/java/com/android/dialer/callcomposer/res/values-hi/strings.xml
index 6cfdb16..4de9a6d 100644
--- a/java/com/android/dialer/callcomposer/res/values-hi/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-hi/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"अनुमति दें"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"फ़ोटो लेने के लिए, कैमरे की ऐक्सेस दें"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"चित्र साझा करने के लिए, मीडिया की ऐक्सेस दें"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"चित्र लें"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"एक फ़ोटो चुनें"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"संदेश भेजें"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"संदेश ऐप्लिकेशन के ज़रिए फ़ोटो भेजा गया"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"संदेश ऐप्लिकेशन के ज़रिए संदेश भेजा गया"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-hr/strings.xml b/java/com/android/dialer/callcomposer/res/values-hr/strings.xml
index 613f1f4..4bea73c 100644
--- a/java/com/android/dialer/callcomposer/res/values-hr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-hr/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Omogući"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Da biste snimili fotografiju, dopustite pristup Fotoaparatu"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Za dijeljenje slike dopustite pristup Medijima"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Snimi fotografiju"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Odaberi fotografiju"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Pošalji poruku"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotografija poslana putem Poruka"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Poruka poslana putem Poruka"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-hu/strings.xml b/java/com/android/dialer/callcomposer/res/values-hu/strings.xml
index 451fcb4..2a590e0 100644
--- a/java/com/android/dialer/callcomposer/res/values-hu/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-hu/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Engedélyezés"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Fotó készítéséhez adjon hozzáférést a fényképezőgéphez"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Kép megosztásához adjon hozzáférést a médiafájlokhoz"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Kép készítése"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Fotó kiválasztása"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Üzenet küldése"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotó elküldve a Messages alkalmazásban"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Üzenet elküldve a Messages alkalmazásban"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-hy/strings.xml b/java/com/android/dialer/callcomposer/res/values-hy/strings.xml
index 43793d6..1b55234 100644
--- a/java/com/android/dialer/callcomposer/res/values-hy/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-hy/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Թույլատրել"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Լուսանկարելու համար տրամադրեք Խցիկն օգտագործելու հնարավորություն"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Որևէ պատկերով կիսվելու համար տրամադրեք մեդիանյութերն օգտագործելու հնարավորություն"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Լուսանկարել"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Ընտրել լուսանկար"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Ուղարկել հաղորդագրություն"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Լուսանկարն ուղարկվել է Messages-ի միջոցով"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Հաղորդագրությունն ուղարկվել է Messages-ի միջոցով"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-in/strings.xml b/java/com/android/dialer/callcomposer/res/values-in/strings.xml
index 4f90810..7983c4d 100644
--- a/java/com/android/dialer/callcomposer/res/values-in/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-in/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Izinkan"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Untuk mengambil foto, berikan akses ke Kamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Untuk membagikan gambar, berikan akses ke Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Jepret"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Pilih foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Mengirim pesan"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto dikirim lewat Message"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Pesan dikirim lewat Message"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-is/strings.xml b/java/com/android/dialer/callcomposer/res/values-is/strings.xml
index 5ca3050..3bf4a6b 100644
--- a/java/com/android/dialer/callcomposer/res/values-is/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-is/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Leyfa"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Til að taka mynd skaltu veita myndavélinni aðgang"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Til að deila mynd skaltu veita margmiðlunarefni aðgang"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Taka mynd"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Velja mynd"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Senda skilaboð"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Mynd send með Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Skilaboð send með Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-it/strings.xml b/java/com/android/dialer/callcomposer/res/values-it/strings.xml
index 40c893f..343dd84 100644
--- a/java/com/android/dialer/callcomposer/res/values-it/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-it/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Consenti"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Per poter scattare una foto devi concedere l\'accesso alla fotocamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Per condividere un\'immagine, devi concedere l\'accesso ai contenuti multimediali"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Scatta una foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Scegli una foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Invia un messaggio"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto inviata tramite Messaggi"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Messaggio inviato tramite Messaggi"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-iw/strings.xml b/java/com/android/dialer/callcomposer/res/values-iw/strings.xml
index e1557dc..24c6203 100644
--- a/java/com/android/dialer/callcomposer/res/values-iw/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-iw/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"אפשר"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"כדי שתוכל לצלם תמונות עליך להעניק לאפליקציה גישה למצלמה"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"כדי שתוכל לשתף תמונות עליך להעניק לאפליקציה גישה למדיה"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"צילום תמונה"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"בחירת תמונה"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"שליחת הודעה"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"‏התמונה נשלחה דרך אפליקציית Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"‏ההודעה נשלחה דרך אפליקציית Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ja/strings.xml b/java/com/android/dialer/callcomposer/res/values-ja/strings.xml
index bc8161d..33f48c9 100644
--- a/java/com/android/dialer/callcomposer/res/values-ja/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ja/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"許可"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"写真を撮るには、まずカメラへのアクセスを許可してください"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"画像を共有するには、まずメディアへのアクセスを許可してください"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"画像を撮影します"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"写真を選択します"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"メッセージを送信します"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Android メッセージで写真が送信されました"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Android メッセージでメッセージが送信されました"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ka/strings.xml b/java/com/android/dialer/callcomposer/res/values-ka/strings.xml
index 79f39ab..65084f3 100644
--- a/java/com/android/dialer/callcomposer/res/values-ka/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ka/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"ნების დართვა"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ფოტოს გადასაღებად მიეცით კამერაზე წვდომა"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"სურათის გასაზიარებლად მიეცით მედიაზე წვდომა"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"სურათის გადაღება"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ფოტოს არჩევა"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"შეტყობინების გაგზავნა"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"ფოტო გაიგზავნა Messages აპიდან"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"შეტყობინება გაიგზავნა Messages აპიდან"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-kk/strings.xml b/java/com/android/dialer/callcomposer/res/values-kk/strings.xml
index ffe045f..bf41736 100644
--- a/java/com/android/dialer/callcomposer/res/values-kk/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-kk/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Рұқсат беру"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Суретке түсіру үшін камераға кіруге рұқсат беріңіз"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Суретті жіберу үшін медиафайлға кіруге рұқсат беріңіз"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Суретке түсіру"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Суретті таңдау"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Хабар жіберу"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Сурет Messages арқылы жіберілді"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Хабар Messages арқылы жіберілді"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-km/strings.xml b/java/com/android/dialer/callcomposer/res/values-km/strings.xml
index 4444bce..10c8d52 100644
--- a/java/com/android/dialer/callcomposer/res/values-km/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-km/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"អនុញ្ញាត"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ដើម្បីថតរូប សូមអនុញ្ញាត​ឲ្យចូលប្រើប្រាស់​កាមេរ៉ា"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ដើម្បីចែករំលែករូបភាព សូមអនុញ្ញាត​ឲ្យចូលប្រើប្រាស់​មេឌៀ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ថតរូប"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ជ្រើសរើស​រូបថត"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ផ្ញើសារ"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"រូបថត​ដែល​បាន​ផ្ញើ​តាមរយៈ Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"សារ​ដែល​បាន​ផ្ញើ​តាមរយៈ Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-kn/strings.xml b/java/com/android/dialer/callcomposer/res/values-kn/strings.xml
index f50bdcc..3776d9d 100644
--- a/java/com/android/dialer/callcomposer/res/values-kn/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-kn/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"ಅನುಮತಿಸಿ"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ಫೋಟೋ ತೆಗೆಯಲು, ಕ್ಯಾಮರಾಗೆ ಪ್ರವೇಶ ನೀಡಿ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ಚಿತ್ರವನ್ನು ಹಂಚಿಕೊಳ್ಳಲು, ಮಾಧ್ಯಮಕ್ಕೆ ಪ್ರವೇಶವನ್ನು ನೀಡಿ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ಚಿತ್ರ ತೆಗೆದುಕೊಳ್ಳಿ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ಒಂದು ಫೋಟೋ ಆಯ್ಕೆಮಾಡಿ"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ಸಂದೇಶ ಕಳುಹಿಸಿ"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"ಸಂದೇಶಗಳ ಮೂಲಕ ಕಳುಹಿಸಲಾದ ಫೋಟೋ"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"ಸಂದೇಶಗಳ ಮೂಲಕ ಕಳುಹಿಸಲಾದ ಸಂದೇಶ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ko/strings.xml b/java/com/android/dialer/callcomposer/res/values-ko/strings.xml
index d710afa..0e6820e 100644
--- a/java/com/android/dialer/callcomposer/res/values-ko/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ko/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"허용"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"사진을 찍으려면 카메라에 액세스할 수 있도록 허용하세요."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"이미지를 공유하려면 미디어에 액세스할 수 있도록 허용하세요."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"사진 촬영"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"사진 선택"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"메시지 보내기"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"메시지를 통해 전송된 사진"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"메시지를 통해 전송된 메시지"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ky/strings.xml b/java/com/android/dialer/callcomposer/res/values-ky/strings.xml
index c7c0533..f96ce4d 100644
--- a/java/com/android/dialer/callcomposer/res/values-ky/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ky/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Уруксат берүү"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Сүрөткө тартуу үчүн, колдонмого камераны пайдаланууга уруксат бериңиз"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Сүрөттү бөлүшүү үчүн мультимедиага кирүүгө уруксат бериңиз"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Сүрөткө тартуу"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Сүрөттү тандоо"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Билдирүү жөнөтүү"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Сүрөт Android жазышуулары колдонмосу аркылуу жөнөтүлдү"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Билдирүү Android жазышуулары колдонмосу аркылуу жөнөтүлдү"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-lo/strings.xml b/java/com/android/dialer/callcomposer/res/values-lo/strings.xml
index 9c49460..d14f03d 100644
--- a/java/com/android/dialer/callcomposer/res/values-lo/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-lo/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"ອະນຸຍາດ"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ເພື່ອຖ່າຍຮູບ, ໃຫ້ອະນຸຍາດການເຂົ້າຫາກ້ອງຖ່າຍຮູບກ່ອນ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ເພື່ອແບ່ງປັນຮູບພາບໃດໜຶ່ງ, ໃຫ້ອະນຸຍາດການເຂົ້າຫາມີເດຍກ່ອນ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ຖ່າຍຮູບ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ເລືອກຮູບພາບ..."</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ສົ່ງຂໍ້ຄວາມ"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"ສົ່ງຮູບຜ່ານ Messages ແລ້ວ"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"ສົ່ງຮູບຜ່ານ Messages ແລ້ວ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-lt/strings.xml b/java/com/android/dialer/callcomposer/res/values-lt/strings.xml
index 0b011f7..4453bcd 100644
--- a/java/com/android/dialer/callcomposer/res/values-lt/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-lt/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Leisti"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Kad galėtumėte fotografuoti, leiskite pasiekti fotoaparatą"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Kad galėtumėte bendrinti vaizdą, leiskite pasiekti mediją"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Fotografuoti"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Pasirinkti nuotrauką"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Siųsti pranešimą"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Nuotrauka išsiųsta naudojant „Messages“"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Pranešimas išsiųstas naudojant „Messages“"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-lv/strings.xml b/java/com/android/dialer/callcomposer/res/values-lv/strings.xml
index 8593ca0..80e5214 100644
--- a/java/com/android/dialer/callcomposer/res/values-lv/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-lv/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Atļaut"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Lai uzņemtu fotoattēlu, piešķiriet piekļuvi kamerai."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Lai kopīgotu attēlu, piešķiriet piekļuvi multivides saturam."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Uzņemt attēlu"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Izvēlēties fotoattēlu"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sūtīt ziņojumu"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotoattēls nosūtīts, izmantojot lietotni Ziņojumi"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Ziņojums nosūtīts, izmantojot lietotni Ziņojumi"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-mk/strings.xml b/java/com/android/dialer/callcomposer/res/values-mk/strings.xml
index 40d7c62..bd8f0c8 100644
--- a/java/com/android/dialer/callcomposer/res/values-mk/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-mk/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Дозволете"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"За да фотографирате, дозволете пристап до „Камера“"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"За да споделите слика, дозволете пристап до Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Фотографирајте"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Изберете фотографија"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Испратете порака"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Фотографијата е испратена преку Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Пораката е испратена преку Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ml/strings.xml b/java/com/android/dialer/callcomposer/res/values-ml/strings.xml
index 0a0833d..e4931cb 100644
--- a/java/com/android/dialer/callcomposer/res/values-ml/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ml/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"അനുവദിക്കുക"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ഫോട്ടോ എടുക്കുന്നതിന്, ക്യാമറയ്ക്ക് ആക്സസ് നൽകുക"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ഫോട്ടോ പങ്കിടുന്നതിന്, മീഡിയയ്ക്ക് ആക്സസ് നൽകുക"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ഒരു ചിത്രമെടുക്കുക"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ഒരു ഫോട്ടോ തിരഞ്ഞെടുക്കുക"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ഒരു സന്ദേശം അയയ്‌ക്കുക"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"മെസേജ് വഴി ഫോട്ടോ അയച്ചു"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"മെസേജ് വഴി സന്ദേശം അയച്ചു"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-mn/strings.xml b/java/com/android/dialer/callcomposer/res/values-mn/strings.xml
index 54a292d..62a7750 100644
--- a/java/com/android/dialer/callcomposer/res/values-mn/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-mn/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Зөвшөөрөх"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Зураг авахын тулд камерт хандах зөвшөөрөл олгох шаардлагатай"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Зураг хуваалцахын тулд медиад хандах зөвшөөрөл олгох шаардлагатай"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Зураг авах"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Зураг сонгоно уу"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Зурвас илгээх"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Зургийг Зурвасаар дамжуулан илгээсэн"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Зурвасыг Зурвасаар дамжуулан илгээсэн"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-mr/strings.xml b/java/com/android/dialer/callcomposer/res/values-mr/strings.xml
index 7f8c5d7..e7a7190 100644
--- a/java/com/android/dialer/callcomposer/res/values-mr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-mr/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"अनुमती द्या"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"एक फोटो घेण्यासाठी, कॅमेर्‍यामध्ये प्रवेश द्या"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"एखादी प्रतिमा सामायिक करण्यासाठी मीडियामध्ये प्रवेश द्या"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"एक फोटो घ्या"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"फोटो निवडा"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"एक संदेश पाठवा"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Messages द्वारे फोटो पाठविला"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Messages द्वारे संदेश पाठविला"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ms/strings.xml b/java/com/android/dialer/callcomposer/res/values-ms/strings.xml
index 0927cde..39ed6fa 100644
--- a/java/com/android/dialer/callcomposer/res/values-ms/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ms/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Benarkan"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Untuk mengambil foto, berikan akses kepada Kamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Untuk berkongsi imej, berikan akses kepada Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ambil gambar"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Pilih foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Hantar mesej"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Photo dihantar melalui Mesej"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mesej dihantar melalui Mesej"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-my/strings.xml b/java/com/android/dialer/callcomposer/res/values-my/strings.xml
index 6608e9a..a20dabc 100644
--- a/java/com/android/dialer/callcomposer/res/values-my/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-my/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"ခွင့်ပြုရန်"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ဓာတ်ပုံရိုက်ရန် ကင်မရာသို့ ဝင်သုံးခွင့်ပေးပါ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ပုံမျှဝေရန် မီဒီယာသို့ ဝင်သုံးခွင့်ပေးပါ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ဓာတ်ပုံတစ်ပုံ ရိုက်ရန်"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ဓာတ်ပုံတစ်ပုံ ရွေးရန်"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"မက်ဆေ့ဂျ်ပို့ရန်"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"မက်ဆေ့ဂျ်များမှတစ်ဆင့် ဓာတ်ပုံပို့ပြီးပါပြီ"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"မက်ဆေ့ဂျ်များမှတစ်ဆင့် မက်ဆေ့ဂျ်ပို့ပြီးပါပြီ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-nb/strings.xml b/java/com/android/dialer/callcomposer/res/values-nb/strings.xml
index 693e7fd..cbb1acc 100644
--- a/java/com/android/dialer/callcomposer/res/values-nb/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-nb/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Tillat"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Gi tilgang til kameraet for å ta bilder"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Gi Media tilgang for å dele bilder"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ta et bilde"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Velg et bilde"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Send en melding"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Bildet er sendt via Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Meldingen er sendt via Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ne/strings.xml b/java/com/android/dialer/callcomposer/res/values-ne/strings.xml
index 37dd681..f084dc9 100644
--- a/java/com/android/dialer/callcomposer/res/values-ne/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ne/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"अनुमति दिनुहोस्"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"तस्बिर खिच्न, क्यामेरामाथि पहुँच दिनुहोस्"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"छवि आदान-प्रदान गर्न, मिडियामाथि पहुँच दिनुहोस्"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"तस्बिर खिच्नुहोस्"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"तस्बिर छनौट गर्नुहोस्"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"सन्देश पठाउनुहोस्"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Messages मार्फत पठाइएको तस्बिर"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Messages मार्फत पठाइएको सन्देश"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-nl/strings.xml b/java/com/android/dialer/callcomposer/res/values-nl/strings.xml
index ebb00c4..5511427 100644
--- a/java/com/android/dialer/callcomposer/res/values-nl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-nl/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Toestaan"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Verleen toegang tot Camera om een foto te maken"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Verleen toegang tot Media om een afbeelding te delen"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Een foto nemen"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Een foto kiezen"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Een bericht verzenden"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto verzonden via Berichten"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Bericht verzonden via Berichten"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-no/strings.xml b/java/com/android/dialer/callcomposer/res/values-no/strings.xml
index 693e7fd..cbb1acc 100644
--- a/java/com/android/dialer/callcomposer/res/values-no/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-no/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Tillat"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Gi tilgang til kameraet for å ta bilder"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Gi Media tilgang for å dele bilder"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ta et bilde"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Velg et bilde"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Send en melding"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Bildet er sendt via Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Meldingen er sendt via Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pa/strings.xml b/java/com/android/dialer/callcomposer/res/values-pa/strings.xml
index bf6be36..5c20adc 100644
--- a/java/com/android/dialer/callcomposer/res/values-pa/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pa/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"ਇਜਾਜ਼ਤ ਦਿਓ"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ਫ਼ੋਟੋ ਖਿੱਚਣ ਲਈ, ਕੈਮਰੇ ਤੱਕ ਪਹੁੰਚ ਦਿਓ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ਚਿੱਤਰ ਸਾਂਝਾ ਕਰਨ ਲਈ, ਮੀਡੀਆ ਤੱਕ ਪਹੁੰਚ ਦਿਓ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ਇੱਕ ਤਸਵੀਰ ਖਿੱਚੋ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ਇੱਕ ਫ਼ੋਟੋ ਚੁਣੋ"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ਇੱਕ ਸੁਨੇਹਾ ਭੇਜੋ"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"ਫ਼ੋਟੋ &amp;quot;ਸੁਨੇਹੇ&amp;quot; ਐਪ ਰਾਹੀਂ ਭੇਜੀ ਗਈ"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"ਸੁਨੇਹਾ &amp;quot;ਸੁਨੇਹੇ&amp;quot; ਐਪ ਰਾਹੀਂ ਭੇਜਿਆ ਗਿਆ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pl/strings.xml b/java/com/android/dialer/callcomposer/res/values-pl/strings.xml
index ba74628..eea7496 100644
--- a/java/com/android/dialer/callcomposer/res/values-pl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pl/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Zezwól"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Aby zrobić zdjęcie, zezwól na dostęp do aparatu"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Aby udostępnić zdjęcie, zezwól na dostęp do multimediów"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Zrób zdjęcie"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Wybierz zdjęcie"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Wyślij wiadomość"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Zdjęcie zostało wysłane przez Wiadomości"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Tekst został wysłany przez Wiadomości"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pt-rBR/strings.xml b/java/com/android/dialer/callcomposer/res/values-pt-rBR/strings.xml
index 9feee7d..026cfac 100644
--- a/java/com/android/dialer/callcomposer/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pt-rBR/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para tirar uma foto, permita o acesso à câmera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartilhar uma imagem, permita o acesso à mídia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tirar uma foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Escolher uma foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar uma mensagem"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto enviada pelo Mensagens"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mensagem enviada pelo Mensagens"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pt-rPT/strings.xml b/java/com/android/dialer/callcomposer/res/values-pt-rPT/strings.xml
index 8b12d65..1a35ce2 100644
--- a/java/com/android/dialer/callcomposer/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pt-rPT/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para tirar uma foto, conceda acesso à Câmara"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para partilhar uma imagem, conceda acesso a Multimédia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tirar uma foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Selecionar foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar uma mensagem"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto enviada através da aplicação Mensagens"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mensagem enviada através da aplicação Mensagens"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pt/strings.xml b/java/com/android/dialer/callcomposer/res/values-pt/strings.xml
index 9feee7d..026cfac 100644
--- a/java/com/android/dialer/callcomposer/res/values-pt/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pt/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para tirar uma foto, permita o acesso à câmera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartilhar uma imagem, permita o acesso à mídia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tirar uma foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Escolher uma foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar uma mensagem"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Foto enviada pelo Mensagens"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mensagem enviada pelo Mensagens"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ro/strings.xml b/java/com/android/dialer/callcomposer/res/values-ro/strings.xml
index 744ef80..ac55b80 100644
--- a/java/com/android/dialer/callcomposer/res/values-ro/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ro/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Permiteți"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Pentru a fotografia, permiteți accesul la Camera foto"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pentru a trimite o imagine, permiteți accesul la Conținutul media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Fotografiați"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Alegeți o fotografie"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Trimiteți un mesaj"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotografie trimisă prin Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mesaj trimis prin Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ru/strings.xml b/java/com/android/dialer/callcomposer/res/values-ru/strings.xml
index 1abbc49..79d8136 100644
--- a/java/com/android/dialer/callcomposer/res/values-ru/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ru/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Разрешить"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Чтобы сделать снимок, предоставьте доступ к камере"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Чтобы поделиться изображением, предоставьте доступ к мультимедиа"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Сделать фото"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Выбрать фото"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Отправить сообщение"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Фото отправлено через Android Сообщения"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Сообщение отправлено через Android Сообщения"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-si/strings.xml b/java/com/android/dialer/callcomposer/res/values-si/strings.xml
index 48a4474..8c2b953 100644
--- a/java/com/android/dialer/callcomposer/res/values-si/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-si/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"ඉඩ දෙන්න"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ඡායාරූපයක් ගැනීමට, කැමරාවට ප්‍රවේශය දෙන්න"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"රූපයක් බෙදා ගැනීමට, මාධ්‍යයට ප්‍රවේශය දෙන්න"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"පින්තුරයක් ගැනීම"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ඡායාරූපයක් තේරීම"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"පණිවිඩයක් යැවීම"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Messages හරහා ඡායාරූපය යවන ලදී"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Messages හරහා පණිවිඩය යවන ලදී"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sk/strings.xml b/java/com/android/dialer/callcomposer/res/values-sk/strings.xml
index 2fb13c1..ee062c4 100644
--- a/java/com/android/dialer/callcomposer/res/values-sk/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sk/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Povoliť"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Ak chcete fotiť, povoľte prístup k fotoaparátu"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Ak chcete zdieľať obrázok, povoľte prístup k médiám"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Odfotiť"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Vybrať fotku"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Odoslať správu"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotka bola odoslaná prostredníctvom Správ"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Správa bola odoslaná prostredníctvom Správ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sl/strings.xml b/java/com/android/dialer/callcomposer/res/values-sl/strings.xml
index 34126ab..9d57cfd 100644
--- a/java/com/android/dialer/callcomposer/res/values-sl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sl/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Dovoli"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Če želite posneti fotografijo, omogočite dostop do fotoaparata"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Če želite deliti sliko z drugimi, omogočite dostop do predstavnosti"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Posnemi fotografijo"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Izberi fotografijo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Pošlji sporočilo"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotografija je bila poslana prek aplikacije Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Sporočilo je bila poslano prek aplikacije Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sq/strings.xml b/java/com/android/dialer/callcomposer/res/values-sq/strings.xml
index 35dd197..7209942 100644
--- a/java/com/android/dialer/callcomposer/res/values-sq/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sq/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Lejo"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Për të shkrepur një fotografi, jep qasjen te Kamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Për të ndarë një imazh, jep qasjen te Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Bëj një fotografi"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Zgjidh një fotografi"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Dërgo një mesazh"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotografia u dërgua nëpërmjet \"Mesazheve\""</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mesazhi u dërgua nëpërmjet \"Mesazheve\""</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sr/strings.xml b/java/com/android/dialer/callcomposer/res/values-sr/strings.xml
index 4fa34ed..1eafcb7 100644
--- a/java/com/android/dialer/callcomposer/res/values-sr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sr/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Дозволи"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Одобрите приступ Камери да бисте снимили слику"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Одобрите приступ Медијима да бисте делили слику"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Сликајте"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Изаберите слику"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Пошаљите поруку"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Слика је послата преко Messages-а"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Порука је послата преко Messages-а"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sv/strings.xml b/java/com/android/dialer/callcomposer/res/values-sv/strings.xml
index de33531..787d865 100644
--- a/java/com/android/dialer/callcomposer/res/values-sv/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sv/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Tillåt"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Bevilja åtkomst till Kamera om du vill ta ett foto"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Bevilja åtkomst till Media om du vill dela en bild"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ta en bild"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Välj ett foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Skicka ett meddelande"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotot har skickats via Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Meddelandet har skickats via Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sw/strings.xml b/java/com/android/dialer/callcomposer/res/values-sw/strings.xml
index e99fd06..d33ff31 100644
--- a/java/com/android/dialer/callcomposer/res/values-sw/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sw/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Ruhusu"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Ruhusu programu ifikie Kamera ili uweze kupiga picha"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Ruhusu programu ifikie Midia ili uweze kushiriki picha"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Piga picha"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Chagua picha"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Tuma ujumbe"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Picha imetumwa kupitia Programu ya Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Ujumbe umetumwa kupitia Programu ya Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ta/strings.xml b/java/com/android/dialer/callcomposer/res/values-ta/strings.xml
index 4078148..37c0193 100644
--- a/java/com/android/dialer/callcomposer/res/values-ta/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ta/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"அனுமதி"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"படமெடுக்க, கேமராவிற்கு அணுகல் வழங்கவும்"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"படத்தைப் பகிர, மீடியாவிற்கு அணுகல் வழங்கவும்"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"படமெடுக்கவும்"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"புகைப்படத்தைத் தேர்வு செய்யும்"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"செய்தியை அனுப்பும்"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"மெசேஜஸ் மூலம் படம் அனுப்பப்பட்டது"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"மெசேஜஸ் மூலம் செய்தி அனுப்பப்பட்டது"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-te/strings.xml b/java/com/android/dialer/callcomposer/res/values-te/strings.xml
index 101429c..5480370 100644
--- a/java/com/android/dialer/callcomposer/res/values-te/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-te/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"అనుమతించు"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ఫోటోను తీయడానికి, కెమెరాకు ప్రాప్యతను అందించండి"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"చిత్రాన్ని భాగస్వామ్యం చేయడానికి, మీడియాకు ప్రాప్యతను అందించండి"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"చిత్రాన్ని తీస్తుంది"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ఫోటోను ఎంచుకోండి"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"సందేశాన్ని పంపుతుంది"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"సందేశాల అనువర్తనం ద్వారా ఫోటోను పంపాము"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"సందేశాల అనువర్తనం ద్వారా సందేశాన్ని పంపాము"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-th/strings.xml b/java/com/android/dialer/callcomposer/res/values-th/strings.xml
index a004d33..9d98d56 100644
--- a/java/com/android/dialer/callcomposer/res/values-th/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-th/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"อนุญาต"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"หากต้องการถ่ายภาพ โปรดให้สิทธิ์การเข้าถึงกล้อง"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"หากต้องการแชร์รูปภาพ โปรดให้สิทธิ์การเข้าถึงสื่อ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ถ่ายภาพ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"เลือกรูปภาพ"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ส่งข้อความ"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"ส่งรูปภาพผ่าน Messages แล้ว"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"ส่งข้อความผ่าน Messages แล้ว"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-tl/strings.xml b/java/com/android/dialer/callcomposer/res/values-tl/strings.xml
index e902a2f..5bba942 100644
--- a/java/com/android/dialer/callcomposer/res/values-tl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-tl/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Payagan"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Upang kumuha ng larawan, magbigay ng access sa Camera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Upang magbahagi ng imahe, magbigay ng access sa Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Kumuha ng larawan"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Pumili ng larawan"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Magpadala ng mensahe"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Larawang ipinadala sa pamamagitan ng Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mensaheng ipinadala sa pamamagitan ng Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-tr/strings.xml b/java/com/android/dialer/callcomposer/res/values-tr/strings.xml
index 0dfe8b2..cfb8bfb 100644
--- a/java/com/android/dialer/callcomposer/res/values-tr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-tr/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"İzin ver"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Fotoğraf çekmek için Kamera\'ya erişim izni verin"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Resim paylaşmak için Medya\'ya erişim izni verin"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Resim çeker"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Fotoğraf seçilmesini sağlar"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Mesaj gönderir"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Fotoğraf, Mesajlar uygulaması üzerinden gönderildi"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Mesaj, Mesajlar uygulaması üzerinden gönderildi"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-uk/strings.xml b/java/com/android/dialer/callcomposer/res/values-uk/strings.xml
index 20898c3..4cb1a2d 100644
--- a/java/com/android/dialer/callcomposer/res/values-uk/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-uk/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Дозволити"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Щоб сфотографувати, надайте доступ до камери"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Щоб поділитися зображенням, надайте доступ до медіа-вмісту"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Зробити знімок"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Вибрати фотографію"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Надіслати повідомлення"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Фотографію надіслано через додаток Повідомлення"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Текст надіслано через додаток Повідомлення"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ur/strings.xml b/java/com/android/dialer/callcomposer/res/values-ur/strings.xml
index 92a2f8c..c665cfb 100644
--- a/java/com/android/dialer/callcomposer/res/values-ur/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ur/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"اجازت دیں"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"تصویر لینے کیلئے کیمرا کو رسائی دیں"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"تصویر کا اشتراک کرنے کیلئے میڈیا تک رسائی دیں"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"تصویر لیں"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ایک تصویر چنیں"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"پیغام بھیجیں"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"تصویر پیغامات کے ذریعے بھیجی گئی"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"پیغام پیغامات کے ذریعے بھیجا گیا"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-uz/strings.xml b/java/com/android/dialer/callcomposer/res/values-uz/strings.xml
index 8450162..0237ab9 100644
--- a/java/com/android/dialer/callcomposer/res/values-uz/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-uz/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Ruxsat berish"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Suratga olish uchun kameraga kirshga ruxsat bering"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Rasmni baham ko‘rish uchun media fayllarga kirishga ruxsat bering"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Rasmga olish"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Rasm tanlash"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Xabar yuborish"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Rasm Android Xabarlar orqali yuborildi"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Xabar Android Xabarlar orqali yuborildi"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-vi/strings.xml b/java/com/android/dialer/callcomposer/res/values-vi/strings.xml
index 2d060bd..d617cfb 100644
--- a/java/com/android/dialer/callcomposer/res/values-vi/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-vi/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Cho phép"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Để chụp ảnh, hãy cấp quyền truy cập vào Máy ảnh"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Để chia sẻ ảnh, hãy cấp quyền truy cập vào Phương tiện"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Chụp ảnh"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Chọn ảnh"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Gửi tin nhắn"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Đã gửi ảnh qua Messages"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Đã gửi tin nhắn qua Messages"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-zh-rCN/strings.xml b/java/com/android/dialer/callcomposer/res/values-zh-rCN/strings.xml
index a6c2f90..97017d6 100644
--- a/java/com/android/dialer/callcomposer/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-zh-rCN/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"允许"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"要拍摄照片，请授予相机使用权限"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"要分享图片，请授予媒体访问权限"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"拍照"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"选择一张照片"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"发送信息"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"已通过“信息”应用发送照片"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"已通过“信息”应用发送短信"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-zh-rHK/strings.xml b/java/com/android/dialer/callcomposer/res/values-zh-rHK/strings.xml
index 8f66f4f..b191949 100644
--- a/java/com/android/dialer/callcomposer/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-zh-rHK/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"允許"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"如要拍照，請授予「相機」存取權"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"如要分享圖片，請授予「媒體」存取權"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"拍照"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"選擇相片"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"傳送訊息"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"已透過「訊息」傳送相片"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"已透過「訊息」傳送訊息"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-zh-rTW/strings.xml b/java/com/android/dialer/callcomposer/res/values-zh-rTW/strings.xml
index a3af5af..ef2cd9d 100644
--- a/java/com/android/dialer/callcomposer/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-zh-rTW/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"允許"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"如要拍照，請授予相機存取權"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"如要分享圖片，請授予媒體存取權"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"拍攝相片"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"選擇相片"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"傳送訊息"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"透過訊息應用程式傳送的相片"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"透過訊息應用程式傳送的訊息"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-zu/strings.xml b/java/com/android/dialer/callcomposer/res/values-zu/strings.xml
index 2cce688..09845f6 100644
--- a/java/com/android/dialer/callcomposer/res/values-zu/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-zu/strings.xml
@@ -30,4 +30,9 @@
     <string name="allow" msgid="8637148297403066623">"Vumela"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Ukuze uthathe isithombe, nika ukufinyelela kukhamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Ukuze wabelane ngesithombe, nika ukufinyelela kumidiya"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Thatha isithombe"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Khetha isithombe"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Thumela umlayezo"</string>
+    <string name="image_sent_messages" msgid="6520870555040566229">"Isithombe sithunyelwe ngemilayezo"</string>
+    <string name="message_sent_messages" msgid="6286576951151541098">"Umlayezo uthunyelwe ngemilayezo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values/dimens.xml b/java/com/android/dialer/callcomposer/res/values/dimens.xml
index d555400..083bd0a 100644
--- a/java/com/android/dialer/callcomposer/res/values/dimens.xml
+++ b/java/com/android/dialer/callcomposer/res/values/dimens.xml
@@ -56,4 +56,6 @@
   <dimen name="permission_item_margin">8dp</dimen>
   <dimen name="permission_allow_padding">16dp</dimen>
   <dimen name="min_touch_target_size">48dp</dimen>
+
+  <dimen name="privacy_toast_y_offset">108dp</dimen>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/callcomposer/res/values/strings.xml b/java/com/android/dialer/callcomposer/res/values/strings.xml
index cc7762b..c7dabfa 100644
--- a/java/com/android/dialer/callcomposer/res/values/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values/strings.xml
@@ -41,4 +41,16 @@
   <string name="camera_permission_text">To take a photo, give access to Camera</string>
   <!-- Text presented to the user explaining that we need device storage permission to view photos -->
   <string name="gallery_permission_text">To share an image, give access to Media</string>
+  <!-- Content description of button to show ui for taking a photo -->
+  <string name="description_call_composer_camera">Take a picture</string>
+  <!-- Content description of button to show ui for selecting a photo from the user's gallery -->
+  <string name="description_call_composer_photo">Choose a photo</string>
+  <!-- Content description of button to show ui for sending a message -->
+  <string name="description_call_composer_message">Send a message</string>
+  <!-- When a user makes a call with a photo attached, we send the photo through the app "Messages".
+    This string is shown in a toast for privacy reasons. -->
+  <string name="image_sent_messages">Photo sent via Messages</string>
+  <!-- When a user makes a call with text attached, we send the text through the app "Messages".
+    This string is shown in a toast for privacy reasons. -->
+  <string name="message_sent_messages">Message sent via Messages</string>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/callcomposer/res/values/styles.xml b/java/com/android/dialer/callcomposer/res/values/styles.xml
index 29ac4dd..16e7fb6 100644
--- a/java/com/android/dialer/callcomposer/res/values/styles.xml
+++ b/java/com/android/dialer/callcomposer/res/values/styles.xml
@@ -15,7 +15,7 @@
   ~ limitations under the License
   -->
 <resources>
-  <style name="Theme.AppCompat.CallComposer" parent="Theme.AppCompat.NoActionBar">
+  <style name="Theme.AppCompat.CallComposer" parent="DialerThemeBase.NoActionBar">
     <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item>
     <item name="android:windowBackground">@android:color/transparent</item>
     <item name="android:colorBackgroundCacheHint">@null</item>
diff --git a/java/com/android/dialer/callcomposer/util/BitmapResizer.java b/java/com/android/dialer/callcomposer/util/BitmapResizer.java
index 658462d..84ada51 100644
--- a/java/com/android/dialer/callcomposer/util/BitmapResizer.java
+++ b/java/com/android/dialer/callcomposer/util/BitmapResizer.java
@@ -17,6 +17,7 @@
 package com.android.dialer.callcomposer.util;
 
 import android.graphics.Bitmap;
+import android.graphics.Matrix;
 import android.support.annotation.VisibleForTesting;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
@@ -28,40 +29,44 @@
   /**
    * Returns a bitmap that is a resized version of the parameter image. The image will only be
    * resized down and sized to be appropriate for an enriched call.
+   *
+   * @param image to be resized
+   * @param rotation degrees to rotate the image clockwise
+   * @return resized image
    */
-  public static Bitmap resizeForEnrichedCalling(Bitmap image) {
+  public static Bitmap resizeForEnrichedCalling(Bitmap image, int rotation) {
     Assert.isWorkerThread();
 
     int width = image.getWidth();
     int height = image.getHeight();
 
+    Matrix matrix = new Matrix();
+    matrix.postRotate(rotation);
+
     LogUtil.i(
         "BitmapResizer.resizeForEnrichedCalling", "starting height: %d, width: %d", height, width);
 
     if (width <= MAX_OUTPUT_RESOLUTION && height <= MAX_OUTPUT_RESOLUTION) {
       LogUtil.i("BitmapResizer.resizeForEnrichedCalling", "no resizing needed");
-      return image;
+      return Bitmap.createBitmap(image, 0, 0, width, height, matrix, true);
     }
 
+    float ratio = 1;
     if (width > height) {
       // landscape
-      float ratio = width / (float) MAX_OUTPUT_RESOLUTION;
-      width = MAX_OUTPUT_RESOLUTION;
-      height = (int) (height / ratio);
-    } else if (height > width) {
-      // portrait
-      float ratio = height / (float) MAX_OUTPUT_RESOLUTION;
-      height = MAX_OUTPUT_RESOLUTION;
-      width = (int) (width / ratio);
+      ratio = MAX_OUTPUT_RESOLUTION / (float) width;
     } else {
-      // square
-      height = MAX_OUTPUT_RESOLUTION;
-      width = MAX_OUTPUT_RESOLUTION;
+      // portrait & square
+      ratio = MAX_OUTPUT_RESOLUTION / (float) height;
     }
 
     LogUtil.i(
-        "BitmapResizer.resizeForEnrichedCalling", "ending height: %d, width: %d", height, width);
+        "BitmapResizer.resizeForEnrichedCalling",
+        "ending height: %f, width: %f",
+        height * ratio,
+        width * ratio);
 
-    return Bitmap.createScaledBitmap(image, width, height, true);
+    matrix.postScale(ratio, ratio);
+    return Bitmap.createBitmap(image, 0, 0, width, height, matrix, true);
   }
 }
diff --git a/java/com/android/dialer/calldetails/AndroidManifest.xml b/java/com/android/dialer/calldetails/AndroidManifest.xml
index adaac40..fd887c4 100644
--- a/java/com/android/dialer/calldetails/AndroidManifest.xml
+++ b/java/com/android/dialer/calldetails/AndroidManifest.xml
@@ -16,11 +16,11 @@
 <manifest
   xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.calldetails">
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
     <activity
       android:label="@string/call_details"
       android:name="com.android.dialer.calldetails.CallDetailsActivity"
-      android:theme="@style/Theme.AppCompat.Light.NoActionBar">
+      android:theme="@style/DialerThemeBase.NoActionBar">
       <intent-filter>
         <action android:name="android.intent.action.VIEW"/>
         <category android:name="android.intent.category.DEFAULT"/>
diff --git a/java/com/android/dialer/calldetails/CallDetailsActivity.java b/java/com/android/dialer/calldetails/CallDetailsActivity.java
index 7eab951..411006c 100644
--- a/java/com/android/dialer/calldetails/CallDetailsActivity.java
+++ b/java/com/android/dialer/calldetails/CallDetailsActivity.java
@@ -29,32 +29,49 @@
 import android.support.v7.widget.Toolbar;
 import android.support.v7.widget.Toolbar.OnMenuItemClickListener;
 import android.view.MenuItem;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.calldetails.CallDetailsEntries.CallDetailsEntry;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.concurrent.AsyncTaskExecutors;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
+import com.android.dialer.postcall.PostCall;
 import com.android.dialer.protos.ProtoParsers;
 import java.util.List;
 
 /** Displays the details of a specific call log entry. */
-public class CallDetailsActivity extends AppCompatActivity implements OnMenuItemClickListener {
+public class CallDetailsActivity extends AppCompatActivity
+    implements OnMenuItemClickListener, CallDetailsFooterViewHolder.ReportCallIdListener {
 
+  public static final String EXTRA_PHONE_NUMBER = "phone_number";
+  public static final String EXTRA_HAS_ENRICHED_CALL_DATA = "has_enriched_call_data";
   private static final String EXTRA_CALL_DETAILS_ENTRIES = "call_details_entries";
   private static final String EXTRA_CONTACT = "contact";
+  private static final String EXTRA_CAN_REPORT_CALLER_ID = "can_report_caller_id";
   private static final String TASK_DELETE = "task_delete";
 
   private List<CallDetailsEntry> entries;
+  private DialerContact contact;
+
+  public static boolean isLaunchIntent(Intent intent) {
+    return intent.getComponent() != null
+        && CallDetailsActivity.class.getName().equals(intent.getComponent().getClassName());
+  }
 
   public static Intent newInstance(
-      Context context, @NonNull CallDetailsEntries details, @NonNull CallComposerContact contact) {
+      Context context,
+      @NonNull CallDetailsEntries details,
+      @NonNull DialerContact contact,
+      boolean canReportCallerId) {
     Assert.isNotNull(details);
     Assert.isNotNull(contact);
 
     Intent intent = new Intent(context, CallDetailsActivity.class);
     ProtoParsers.put(intent, EXTRA_CONTACT, contact);
     ProtoParsers.put(intent, EXTRA_CALL_DETAILS_ENTRIES, details);
+    intent.putExtra(EXTRA_CAN_REPORT_CALLER_ID, canReportCallerId);
     return intent;
   }
 
@@ -62,30 +79,49 @@
   protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.call_details_activity);
-    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+    Toolbar toolbar = findViewById(R.id.toolbar);
     toolbar.inflateMenu(R.menu.call_details_menu);
     toolbar.setOnMenuItemClickListener(this);
     toolbar.setTitle(R.string.call_details);
+    toolbar.setNavigationOnClickListener(
+        v -> {
+          PerformanceReport.recordClick(UiAction.Type.CLOSE_CALL_DETAIL_WITH_CANCEL_BUTTON);
+          finish();
+        });
     onHandleIntent(getIntent());
   }
 
   @Override
+  protected void onResume() {
+    super.onResume();
+
+    // Some calls may not be recorded (eg. from quick contact),
+    // so we should restart recording after these calls. (Recorded call is stopped)
+    PostCall.restartPerformanceRecordingIfARecentCallExist(this);
+    if (!PerformanceReport.isRecording()) {
+      PerformanceReport.startRecording();
+    }
+
+    PostCall.promptUserForMessageIfNecessary(this, findViewById(R.id.recycler_view));
+  }
+
+  @Override
   protected void onNewIntent(Intent intent) {
     super.onNewIntent(intent);
     onHandleIntent(intent);
   }
 
   private void onHandleIntent(Intent intent) {
-    CallComposerContact contact =
-        ProtoParsers.getTrusted(intent, EXTRA_CONTACT, CallComposerContact.getDefaultInstance());
+    contact = ProtoParsers.getTrusted(intent, EXTRA_CONTACT, DialerContact.getDefaultInstance());
     entries =
         ProtoParsers.getTrusted(
                 intent, EXTRA_CALL_DETAILS_ENTRIES, CallDetailsEntries.getDefaultInstance())
             .getEntriesList();
 
-    RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
+    RecyclerView recyclerView = findViewById(R.id.recycler_view);
     recyclerView.setLayoutManager(new LinearLayoutManager(this));
-    recyclerView.setAdapter(new CallDetailsAdapter(this, contact, entries));
+    recyclerView.setAdapter(new CallDetailsAdapter(this, contact, entries, this));
+    PerformanceReport.logOnScrollStateChange(recyclerView);
   }
 
   @Override
@@ -99,6 +135,22 @@
     return false;
   }
 
+  @Override
+  public void onBackPressed() {
+    PerformanceReport.recordClick(UiAction.Type.PRESS_ANDROID_BACK_BUTTON);
+    super.onBackPressed();
+  }
+
+  @Override
+  public void reportCallId(String number) {
+    ReportDialogFragment.newInstance(number).show(getFragmentManager(), null);
+  }
+
+  @Override
+  public boolean canReportCallerId(String number) {
+    return getIntent().getExtras().getBoolean(EXTRA_CAN_REPORT_CALLER_ID, false);
+  }
+
   /** Delete specified calls from the call log. */
   private class DeleteCallsTask extends AsyncTask<Void, Void, Void> {
 
@@ -124,6 +176,15 @@
 
     @Override
     public void onPostExecute(Void result) {
+      Intent data = new Intent();
+      data.putExtra(EXTRA_PHONE_NUMBER, contact.getNumber());
+      for (CallDetailsEntry entry : entries) {
+        if (entry.getHistoryResultsCount() > 0) {
+          data.putExtra(EXTRA_HAS_ENRICHED_CALL_DATA, true);
+          break;
+        }
+      }
+      setResult(RESULT_OK, data);
       finish();
     }
   }
diff --git a/java/com/android/dialer/calldetails/CallDetailsAdapter.java b/java/com/android/dialer/calldetails/CallDetailsAdapter.java
index 7250779..48e9b69 100644
--- a/java/com/android/dialer/calldetails/CallDetailsAdapter.java
+++ b/java/com/android/dialer/calldetails/CallDetailsAdapter.java
@@ -22,29 +22,32 @@
 import android.support.v7.widget.RecyclerView.ViewHolder;
 import android.view.LayoutInflater;
 import android.view.ViewGroup;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.calldetails.CallDetailsEntries.CallDetailsEntry;
 import com.android.dialer.calllogutils.CallTypeHelper;
 import com.android.dialer.common.Assert;
+import com.android.dialer.dialercontact.DialerContact;
 import java.util.List;
 
 /** Adapter for RecyclerView in {@link CallDetailsActivity}. */
-public class CallDetailsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
+final class CallDetailsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
 
   private static final int HEADER_VIEW_TYPE = 1;
   private static final int CALL_ENTRY_VIEW_TYPE = 2;
   private static final int FOOTER_VIEW_TYPE = 3;
 
-  private final CallComposerContact contact;
+  private final DialerContact contact;
   private final List<CallDetailsEntry> callDetailsEntries;
+  private final CallDetailsFooterViewHolder.ReportCallIdListener listener;
   private final CallTypeHelper callTypeHelper;
 
-  public CallDetailsAdapter(
+  CallDetailsAdapter(
       Context context,
-      @NonNull CallComposerContact contact,
-      @NonNull List<CallDetailsEntry> callDetailsEntries) {
+      @NonNull DialerContact contact,
+      @NonNull List<CallDetailsEntry> callDetailsEntries,
+      CallDetailsFooterViewHolder.ReportCallIdListener listener) {
     this.contact = Assert.isNotNull(contact);
     this.callDetailsEntries = callDetailsEntries;
+    this.listener = listener;
     callTypeHelper = new CallTypeHelper(context.getResources());
   }
 
@@ -60,10 +63,10 @@
             inflater.inflate(R.layout.call_details_entry, parent, false));
       case FOOTER_VIEW_TYPE:
         return new CallDetailsFooterViewHolder(
-            inflater.inflate(R.layout.call_details_footer, parent, false));
+            inflater.inflate(R.layout.call_details_footer, parent, false), listener);
       default:
-        Assert.fail("No ViewHolder available for viewType: " + viewType);
-        return null;
+        throw Assert.createIllegalStateFailException(
+            "No ViewHolder available for viewType: " + viewType);
     }
   }
 
diff --git a/java/com/android/dialer/calldetails/CallDetailsEntryViewHolder.java b/java/com/android/dialer/calldetails/CallDetailsEntryViewHolder.java
index bc989ea..204e407 100644
--- a/java/com/android/dialer/calldetails/CallDetailsEntryViewHolder.java
+++ b/java/com/android/dialer/calldetails/CallDetailsEntryViewHolder.java
@@ -36,7 +36,6 @@
 import com.android.dialer.enrichedcall.historyquery.proto.HistoryResult;
 import com.android.dialer.enrichedcall.historyquery.proto.HistoryResult.Type;
 import com.android.dialer.oem.MotorolaUtils;
-import com.android.dialer.util.CallUtil;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
 
@@ -88,9 +87,7 @@
       CallTypeHelper callTypeHelper,
       boolean showMultimediaDivider) {
     int callType = entry.getCallType();
-    boolean isVideoCall =
-        (entry.getFeatures() & Calls.FEATURES_VIDEO) == Calls.FEATURES_VIDEO
-            && CallUtil.isVideoEnabled(context);
+    boolean isVideoCall = (entry.getFeatures() & Calls.FEATURES_VIDEO) == Calls.FEATURES_VIDEO;
     boolean isPulledCall =
         (entry.getFeatures() & Calls.FEATURES_PULLED_EXTERNALLY)
             == Calls.FEATURES_PULLED_EXTERNALLY;
@@ -98,7 +95,7 @@
     callTime.setTextColor(getColorForCallType(context, callType));
     callTypeIcon.clear();
     callTypeIcon.add(callType);
-    callTypeIcon.setShowVideo((entry.getFeatures() & Calls.FEATURES_VIDEO) == Calls.FEATURES_VIDEO);
+    callTypeIcon.setShowVideo(isVideoCall);
     callTypeIcon.setShowHd(MotorolaUtils.shouldShowHdIconInCallLog(context, entry.getFeatures()));
     callTypeIcon.setShowWifi(
         MotorolaUtils.shouldShowWifiIconInCallLog(context, entry.getFeatures()));
diff --git a/java/com/android/dialer/calldetails/CallDetailsFooterViewHolder.java b/java/com/android/dialer/calldetails/CallDetailsFooterViewHolder.java
index 3f89436..9d3f4bc 100644
--- a/java/com/android/dialer/calldetails/CallDetailsFooterViewHolder.java
+++ b/java/com/android/dialer/calldetails/CallDetailsFooterViewHolder.java
@@ -26,33 +26,41 @@
 import com.android.dialer.common.Assert;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.util.CallUtil;
 import com.android.dialer.util.DialerUtils;
 
 /** ViewHolder container for {@link CallDetailsActivity} footer. */
-public class CallDetailsFooterViewHolder extends RecyclerView.ViewHolder
-    implements OnClickListener {
+final class CallDetailsFooterViewHolder extends RecyclerView.ViewHolder implements OnClickListener {
 
+  private final ReportCallIdListener listener;
   private final View container;
   private final View copy;
   private final View edit;
+  private final View reportCallerId;
 
   private String number;
 
-  public CallDetailsFooterViewHolder(View view) {
+  CallDetailsFooterViewHolder(View view, ReportCallIdListener listener) {
     super(view);
+    this.listener = listener;
     container = view.findViewById(R.id.footer_container);
     copy = view.findViewById(R.id.call_detail_action_copy);
     edit = view.findViewById(R.id.call_detail_action_edit_before_call);
+    reportCallerId = view.findViewById(R.id.call_detail_action_report_caller_id);
 
     copy.setOnClickListener(this);
     edit.setOnClickListener(this);
+    reportCallerId.setOnClickListener(this);
   }
 
   public void setPhoneNumber(String number) {
     this.number = number;
     if (TextUtils.isEmpty(number)) {
       container.setVisibility(View.GONE);
+    } else if (listener.canReportCallerId(number)) {
+      reportCallerId.setVisibility(View.VISIBLE);
     }
   }
 
@@ -60,14 +68,32 @@
   public void onClick(View view) {
     Context context = view.getContext();
     if (view == copy) {
+      PerformanceReport.recordClick(UiAction.Type.COPY_NUMBER_IN_CALL_DETAIL);
+
       Logger.get(context).logImpression(DialerImpression.Type.CALL_DETAILS_COPY_NUMBER);
       ClipboardUtils.copyText(context, null, number, true);
     } else if (view == edit) {
+      PerformanceReport.recordClick(UiAction.Type.EDIT_NUMBER_BEFORE_CALL_IN_CALL_DETAIL);
+      // Dialpad will be filled with this number, but we don't want to record it as user action
+      PerformanceReport.setIgnoreActionOnce(UiAction.Type.TEXT_CHANGE_WITH_INPUT);
+
       Logger.get(context).logImpression(DialerImpression.Type.CALL_DETAILS_EDIT_BEFORE_CALL);
       Intent dialIntent = new Intent(Intent.ACTION_DIAL, CallUtil.getCallUri(number));
       DialerUtils.startActivityWithErrorToast(context, dialIntent);
+    } else if (view == reportCallerId) {
+      listener.reportCallId(number);
     } else {
       Assert.fail("View on click not implemented: " + view);
     }
   }
+
+  /** Listener for reporting caller id */
+  interface ReportCallIdListener {
+
+    /** Tell listener that the user requested to report caller id info as inaccurate. */
+    void reportCallId(String number);
+
+    /** returns true if the number can be reported as inaccurate. */
+    boolean canReportCallerId(String number);
+  }
 }
diff --git a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
index 4d9aacf..3df3c3a 100644
--- a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
+++ b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
@@ -25,11 +25,12 @@
 import android.widget.QuickContactBadge;
 import android.widget.TextView;
 import com.android.contacts.common.ContactPhotoManager;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.common.Assert;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.InteractionEvent;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.util.DialerUtils;
 
@@ -40,23 +41,29 @@
   private final View callBackButton;
   private final TextView nameView;
   private final TextView numberView;
+  private final TextView networkView;
   private final QuickContactBadge contactPhoto;
   private final Context context;
 
-  private CallComposerContact contact;
+  private DialerContact contact;
 
   CallDetailsHeaderViewHolder(View container) {
     super(container);
     context = container.getContext();
     callBackButton = container.findViewById(R.id.call_back_button);
-    nameView = (TextView) container.findViewById(R.id.contact_name);
-    numberView = (TextView) container.findViewById(R.id.phone_number);
-    contactPhoto = (QuickContactBadge) container.findViewById(R.id.quick_contact_photo);
+    nameView = container.findViewById(R.id.contact_name);
+    numberView = container.findViewById(R.id.phone_number);
+    networkView = container.findViewById(R.id.network);
+    contactPhoto = container.findViewById(R.id.quick_contact_photo);
+
     callBackButton.setOnClickListener(this);
+    Logger.get(context)
+        .logQuickContactOnTouch(
+            contactPhoto, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CALL_DETAILS, true);
   }
 
   /** Populates the contact info fields based on the current contact information. */
-  void updateContactInfo(CallComposerContact contact) {
+  void updateContactInfo(DialerContact contact) {
     this.contact = contact;
     ContactPhotoManager.getInstance(context)
         .loadDialerThumbnailOrPhoto(
@@ -67,8 +74,6 @@
             contact.getNameOrNumber(),
             contact.getContactType());
 
-    contactPhoto.setContentDescription(
-        context.getString(R.string.description_contact_photo_details, contact.getNameOrNumber()));
     nameView.setText(contact.getNameOrNumber());
     if (!TextUtils.isEmpty(contact.getDisplayNumber())) {
       numberView.setVisibility(View.VISIBLE);
@@ -85,6 +90,12 @@
       numberView.setText(null);
     }
 
+    if (!TextUtils.isEmpty(contact.getSimDetails().getNetwork())) {
+      networkView.setVisibility(View.VISIBLE);
+      networkView.setText(contact.getSimDetails().getNetwork());
+      networkView.setTextColor(context.getResources().getColor(contact.getSimDetails().getColor()));
+    }
+
     if (TextUtils.isEmpty(contact.getNumber())) {
       callBackButton.setVisibility(View.GONE);
     }
@@ -98,7 +109,7 @@
           view.getContext(),
           new CallIntentBuilder(contact.getNumber(), CallInitiationType.Type.CALL_DETAILS).build());
     } else {
-      Assert.fail("View OnClickListener not implemented: " + view);
+      throw Assert.createIllegalStateFailException("View OnClickListener not implemented: " + view);
     }
   }
 }
diff --git a/java/com/android/dialer/calldetails/ReportDialogFragment.java b/java/com/android/dialer/calldetails/ReportDialogFragment.java
new file mode 100644
index 0000000..0861c9d
--- /dev/null
+++ b/java/com/android/dialer/calldetails/ReportDialogFragment.java
@@ -0,0 +1,165 @@
+/*
+ * Copyright (C) 2017 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.dialer.calldetails;
+
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.app.DialogFragment;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.util.Pair;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.TextView;
+import android.widget.Toast;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.DialerExecutor.SuccessListener;
+import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.dialer.phonenumbercache.CachedNumberLookupService;
+import com.android.dialer.phonenumbercache.CachedNumberLookupService.CachedContactInfo;
+import com.android.dialer.phonenumbercache.PhoneNumberCache;
+
+/** Dialog for reporting an inaccurate caller id information in {@link CallDetailsActivity}. */
+public class ReportDialogFragment extends DialogFragment {
+
+  private static final String KEY_NUMBER = "number";
+  private TextView name;
+  private TextView numberView;
+
+  private CachedNumberLookupService cachedNumberLookupService;
+  private CachedNumberLookupService.CachedContactInfo info;
+  private String number;
+
+  public static ReportDialogFragment newInstance(String number) {
+    ReportDialogFragment fragment = new ReportDialogFragment();
+    Bundle bundle = new Bundle();
+    bundle.putString(KEY_NUMBER, number);
+    fragment.setArguments(bundle);
+    return fragment;
+  }
+
+  @Override
+  public void onCreate(@Nullable Bundle bundle) {
+    super.onCreate(bundle);
+    setRetainInstance(true);
+    number = getArguments().getString(KEY_NUMBER);
+    cachedNumberLookupService = PhoneNumberCache.get(getContext()).getCachedNumberLookupService();
+  }
+
+  @Override
+  public Dialog onCreateDialog(Bundle savedInstanceState) {
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+    View view = inflater.inflate(R.layout.caller_id_report_dialog, null, false);
+    name = view.findViewById(R.id.name);
+    numberView = view.findViewById(R.id.number);
+
+    lookupContactInfo(number);
+
+    AlertDialog reportDialog =
+        new AlertDialog.Builder(getActivity())
+            .setTitle(R.string.report_caller_id_dialog_title)
+            .setPositiveButton(android.R.string.ok, (dialog, which) -> positiveClick(dialog))
+            .setNegativeButton(android.R.string.cancel, (dialog, which) -> dialog.dismiss())
+            .setView(view)
+            .create();
+
+    reportDialog.setOnShowListener(dialog -> onShow(getContext(), reportDialog));
+    return reportDialog;
+  }
+
+  private void positiveClick(DialogInterface dialog) {
+    startReportCallerIdWorker();
+    dialog.dismiss();
+  }
+
+  private static void onShow(Context context, AlertDialog dialog) {
+    int buttonTextColor = context.getColor(R.color.dialer_theme_color);
+    dialog.getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(buttonTextColor);
+    dialog.getButton(AlertDialog.BUTTON_NEGATIVE).setTextColor(buttonTextColor);
+  }
+
+  private void lookupContactInfo(String number) {
+    Worker<String, CachedContactInfo> worker =
+        number1 -> cachedNumberLookupService.lookupCachedContactFromNumber(getContext(), number1);
+    SuccessListener<CachedContactInfo> successListener = this::setCachedContactInfo;
+    DialerExecutorComponent.get(getContext())
+        .dialerExecutorFactory()
+        .createUiTaskBuilder(getFragmentManager(), "lookup_contact_info", worker)
+        .onSuccess(successListener)
+        .build()
+        .executeParallel(number);
+  }
+
+  private void setCachedContactInfo(CachedContactInfo info) {
+    this.info = info;
+    if (info != null) {
+      name.setText(info.getContactInfo().name);
+      numberView.setText(info.getContactInfo().number);
+    } else {
+      numberView.setText(number);
+      name.setVisibility(View.GONE);
+    }
+  }
+
+  private void startReportCallerIdWorker() {
+    Worker<Context, Pair<Context, Boolean>> worker = this::reportCallerId;
+    SuccessListener<Pair<Context, Boolean>> successListener = this::onReportCallerId;
+    DialerExecutorComponent.get(getContext())
+        .dialerExecutorFactory()
+        .createUiTaskBuilder(getFragmentManager(), "report_caller_id", worker)
+        .onSuccess(successListener)
+        .build()
+        .executeParallel(getActivity());
+  }
+
+  private Pair<Context, Boolean> reportCallerId(Context context) {
+    if (cachedNumberLookupService.reportAsInvalid(context, info)) {
+      info.getContactInfo().isBadData = true;
+      cachedNumberLookupService.addContact(context, info);
+      LogUtil.d("ReportUploadTask.doInBackground", "Contact reported.");
+      return new Pair<>(context, true);
+    } else {
+      return new Pair<>(context, false);
+    }
+  }
+
+  private void onReportCallerId(Pair<Context, Boolean> output) {
+    Context context = output.first;
+    boolean wasReport = output.second;
+    if (wasReport) {
+      Logger.get(context).logImpression(DialerImpression.Type.CALLER_ID_REPORTED);
+      Toast.makeText(context, R.string.report_caller_id_toast, Toast.LENGTH_SHORT).show();
+    } else {
+      Logger.get(context).logImpression(DialerImpression.Type.CALLER_ID_REPORT_FAILED);
+      Toast.makeText(context, R.string.report_caller_id_failed, Toast.LENGTH_SHORT).show();
+    }
+  }
+
+  @Override
+  public void onDestroyView() {
+    if (getDialog() != null && getRetainInstance()) {
+      // Prevent dialog from dismissing on rotate.
+      getDialog().setDismissMessage(null);
+    }
+    super.onDestroyView();
+  }
+}
diff --git a/java/com/android/dialer/calldetails/proto/call_details_entries.proto b/java/com/android/dialer/calldetails/proto/call_details_entries.proto
index e254b77..18bc931 100644
--- a/java/com/android/dialer/calldetails/proto/call_details_entries.proto
+++ b/java/com/android/dialer/calldetails/proto/call_details_entries.proto
@@ -4,6 +4,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 import "java/com/android/dialer/enrichedcall/historyquery/proto/history_result.proto";
 
 package com.android.dialer.calldetails;
diff --git a/java/com/android/dialer/calldetails/res/layout/call_details_footer.xml b/java/com/android/dialer/calldetails/res/layout/call_details_footer.xml
index ccfa4e7..fbca3f8 100644
--- a/java/com/android/dialer/calldetails/res/layout/call_details_footer.xml
+++ b/java/com/android/dialer/calldetails/res/layout/call_details_footer.xml
@@ -41,4 +41,13 @@
       android:layout_height="wrap_content"
       android:drawableStart="@drawable/quantum_ic_edit_grey600_24"
       android:text="@string/call_details_edit_number"/>
+
+  <TextView
+      android:id="@+id/call_detail_action_report_caller_id"
+      style="@style/CallDetailsActionItemStyle"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:drawableStart="@drawable/quantum_ic_report_grey600_24"
+      android:text="@string/call_details_report_call_id"
+      android:visibility="gone"/>
 </LinearLayout>
diff --git a/java/com/android/dialer/calldetails/res/layout/caller_id_report_dialog.xml b/java/com/android/dialer/calldetails/res/layout/caller_id_report_dialog.xml
new file mode 100644
index 0000000..09d3c2b
--- /dev/null
+++ b/java/com/android/dialer/calldetails/res/layout/caller_id_report_dialog.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="match_parent">
+
+  <TextView
+      android:id="@+id/name"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="24dp"
+      android:textAppearance="?android:attr/textAppearanceMedium"/>
+
+  <TextView
+      android:id="@+id/number"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="24dp"
+      android:textAppearance="?android:attr/textAppearanceMedium"/>
+</LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/calldetails/res/layout/contact_container.xml b/java/com/android/dialer/calldetails/res/layout/contact_container.xml
index bb89b36..0911291 100644
--- a/java/com/android/dialer/calldetails/res/layout/contact_container.xml
+++ b/java/com/android/dialer/calldetails/res/layout/contact_container.xml
@@ -29,7 +29,7 @@
       android:id="@+id/quick_contact_photo"
       android:layout_width="@dimen/call_details_contact_photo_size"
       android:layout_height="@dimen/call_details_contact_photo_size"
-      android:layout_marginTop="2dp"
+      android:layout_centerVertical="true"
       android:padding="@dimen/call_details_contact_photo_padding"
       android:focusable="true"
       android:contentDescription="@string/description_quick_contact_for"/>
@@ -47,8 +47,6 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_marginStart="@dimen/photo_text_margin"
-        android:ellipsize="end"
-        android:maxLines="1"
         style="@style/PrimaryText"/>
 
     <TextView
@@ -57,6 +55,14 @@
         android:layout_height="wrap_content"
         android:layout_marginStart="@dimen/photo_text_margin"
         style="@style/SecondaryText"/>
+
+    <TextView
+        android:id="@+id/network"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="@dimen/photo_text_margin"
+        android:visibility="gone"
+        style="@style/SecondaryText"/>
   </LinearLayout>
 
   <ImageView
@@ -66,8 +72,8 @@
       android:layout_alignParentEnd="true"
       android:layout_centerVertical="true"
       android:background="?android:attr/selectableItemBackgroundBorderless"
-      android:contentDescription="@string/description_call_log_call_action"
+      android:contentDescription="@string/call"
       android:scaleType="center"
       android:src="@drawable/quantum_ic_call_white_24"
       android:tint="@color/secondary_text_color"/>
-</RelativeLayout>
+</RelativeLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/calldetails/res/values-af/strings.xml b/java/com/android/dialer/calldetails/res/values-af/strings.xml
index 86bef4b..3d15e5b 100644
--- a/java/com/android/dialer/calldetails/res/values-af/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-af/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Vee uit"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopieer nommer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Wysig nommer voordat jy bel"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Bel"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Gee foutiewe nommer aan"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Het \'n foto gestuur"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Het \'n foto ontvang"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontakbesonderhede vir <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Gee verkeerde nommer aan"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Kon nie nommer aangee nie"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nommer is aangegee"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-am/strings.xml b/java/com/android/dialer/calldetails/res/values-am/strings.xml
index 2a23945..2103353 100644
--- a/java/com/android/dialer/calldetails/res/values-am/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-am/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ሰርዝ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ቁጥር ቅዳ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ከመደወል በፊት ቁጥር አርትዕ ያድርጉ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ጥሪ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ትክክለኛ ያልሆነ ቁጥርን ሪፓርት አድርግ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"አንድ ፎቶ ተልኳል"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"አንድ ፎቶ ደርሷል"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"የ<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> የእውቂያ ዝርዝሮች"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"የተሳሳተ ቁጥርን ሪፖርት ያድርጉ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ቁጥሩን ሪፖርት ማድረግ አልተቻለም"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ቁጥሩ ሪፖርት ተደርጓል"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ar/strings.xml b/java/com/android/dialer/calldetails/res/values-ar/strings.xml
index 6b0d8a7..066b89c 100644
--- a/java/com/android/dialer/calldetails/res/values-ar/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ar/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"حذف"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"نسخ الرقم"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"تعديل الرقم قبل الاتصال"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"الاتصال"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"الإبلاغ عن رقم غير دقيق"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"تم إرسال صورة"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"تم تلقي صورة"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"تفاصيل الاتصال بالمستخدم <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"الإبلاغ عن رقم غير صحيح"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"تعذر الإبلاغ عن الرقم"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"تم الإبلاغ عن الرقم"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-az/strings.xml b/java/com/android/dialer/calldetails/res/values-az/strings.xml
index 479837c..e9aaf14 100644
--- a/java/com/android/dialer/calldetails/res/values-az/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-az/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Silin"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Nömrəni kopyalayın"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Zəng etmədən öncə nömrəyə düzəliş edin"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Zəng edin"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Qeyri-dəqiq nömrəni bildirin"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Foto göndərildi"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Foto alındı"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> üçün kontakt detalları"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Yanlış nömrəni bildirin"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nömrəni bildirmək mümkün olmadı"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nömrə bildirildi"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/calldetails/res/values-b+sr+Latn/strings.xml
index 01141ff..780e674 100644
--- a/java/com/android/dialer/calldetails/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-b+sr+Latn/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Izbriši"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiraj broj"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Izmenite broj pre poziva"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Pozovi"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Prijavi netačan broj"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Slika je poslata"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Slika je primljena"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontakt informacije za <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Prijavite netačan broj"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Prijavljivanje broja nije uspelo"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Broj je prijavljen"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-be/strings.xml b/java/com/android/dialer/calldetails/res/values-be/strings.xml
index 683f29b..6c6724c 100644
--- a/java/com/android/dialer/calldetails/res/values-be/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-be/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Выдаліць"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Скапіраваць нумар"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Рэдагаваць нумар перад выклікам"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Выклік"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Падаць заяву аб недакладным нумары"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Адпраўлена фота"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Атрымана фота"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Кантактныя даныя абанента <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Падаць заяву аб няправільным нумары"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Не ўдалося падаць заяву аб нумары"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Аб нумары пададзена заява"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-bg/strings.xml b/java/com/android/dialer/calldetails/res/values-bg/strings.xml
index 9cd70e2..547fdbb 100644
--- a/java/com/android/dialer/calldetails/res/values-bg/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-bg/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Изтриване"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Копиране на номера"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Редактиране на номера преди обаждане"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Обаждане"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Подаване на сигнал за неточен номер"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Изпратена бе снимка"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Получена бе снимка"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Подробности за контакта за <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Подаване на сигнал за неправилен номер"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Сигналът за номера не можа да бъде подаден"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"За номера бе подаден сигнал"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-bn/strings.xml b/java/com/android/dialer/calldetails/res/values-bn/strings.xml
index 148f61a..65798f5 100644
--- a/java/com/android/dialer/calldetails/res/values-bn/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-bn/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"মুছুন"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"নম্বর কপি করুন"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"কল করার আগে নম্বর সম্পাদন করুন"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"কল করুন"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ভুল নম্বর প্রতিবেদন করুন"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"একটি ফটো পাঠিয়েছেন"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"একটি ফটো পেয়েছেন"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> পরিচিতির বিশদ বিবরণ"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"ভুল নম্বর প্রতিবেদন করুন"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"নম্বরটির প্রতিবেদন করা যায়নি"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"নম্বরটির প্রতিবেদন করা হয়েছে"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-bs/strings.xml b/java/com/android/dialer/calldetails/res/values-bs/strings.xml
index 6f164b2..10ef7aa 100644
--- a/java/com/android/dialer/calldetails/res/values-bs/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-bs/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Izbriši"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiraj broj"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Uredi broj prije poziva"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Poziv"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Prijavite nevažeći broj"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Fotografija poslana"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Fotografija primljena"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalji o kontaktu <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Prijava pogrešnog broja"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Prijava broja nije moguća"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Broj je prijavljen"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ca/strings.xml b/java/com/android/dialer/calldetails/res/values-ca/strings.xml
index 0e33e60..59bd297 100644
--- a/java/com/android/dialer/calldetails/res/values-ca/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ca/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Suprimeix"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copia el número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edita el número abans de trucar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Truca"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informa d\'un número incorrecte"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"S\'ha enviat una foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"S\'ha rebut una foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"<xliff:g id="MESSAGE">%1$s</xliff:g>"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Dades de contacte de: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informa d\'un número incorrecte"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"No s\'ha pogut informar del número"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"S\'ha informat del número"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-cs/strings.xml b/java/com/android/dialer/calldetails/res/values-cs/strings.xml
index 9747ee1..d4748fc 100644
--- a/java/com/android/dialer/calldetails/res/values-cs/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-cs/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Smazat"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopírovat číslo"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Před voláním upravit číslo"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Zavolat"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Nahlásit nesprávné číslo"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Byla poslána fotka"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Byla přijata fotka"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Podrobnosti kontaktu <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Nahlásit nesprávné číslo"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Číslo se nepodařilo nahlásit"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Číslo bylo nahlášeno"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-da/strings.xml b/java/com/android/dialer/calldetails/res/values-da/strings.xml
index 41bc252..5de4486 100644
--- a/java/com/android/dialer/calldetails/res/values-da/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-da/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Slet"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiér nummer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Rediger nummer før opkald"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ring op"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Rapportér et forkert nummer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Der blev sendt et billede"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Der blev modtaget et billede"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktoplysninger for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Rapportér forkert nummer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Det forkerte nummer kunne ikke rapporteres"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummeret blev rapporteret"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-de/strings.xml b/java/com/android/dialer/calldetails/res/values-de/strings.xml
index 014666b..3c30d8e 100644
--- a/java/com/android/dialer/calldetails/res/values-de/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-de/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Löschen"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Nummer kopieren"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Nummer vor Anruf bearbeiten"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Anrufen"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Falsche Nummer melden"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Hat ein Foto gesendet"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Hat ein Foto empfangen"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktdetails für <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Falsche Nummer melden"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nummer konnte nicht gemeldet werden"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummer gemeldet"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-el/strings.xml b/java/com/android/dialer/calldetails/res/values-el/strings.xml
index 6b51fc7..e5097d1 100644
--- a/java/com/android/dialer/calldetails/res/values-el/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-el/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Διαγραφή"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Αντιγραφή αριθμού"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Επεξεργασία αριθμού πριν από την κλήση"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Κλήση"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Αναφορά ανακριβούς αριθμού"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Έγινε αποστολή φωτογραφίας"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Έγινε λήψη φωτογραφίας"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Στοιχεία επικοινωνίας επαφής <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Αναφορά λανθασμένου αριθμού"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Δεν ήταν δυνατή η αναφορά του αριθμού"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Υποβλήθηκε αναφορά για τον αριθμό"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-en-rAU/strings.xml b/java/com/android/dialer/calldetails/res/values-en-rAU/strings.xml
index 2d5210e..45deb49 100644
--- a/java/com/android/dialer/calldetails/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-en-rAU/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Delete"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copy number"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit number before call"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Call"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Report inaccurate number"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Sent a photo"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Received a photo"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Contact details for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Report incorrect number"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Couldn\'t report number"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Number reported"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-en-rGB/strings.xml b/java/com/android/dialer/calldetails/res/values-en-rGB/strings.xml
index 2d5210e..45deb49 100644
--- a/java/com/android/dialer/calldetails/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-en-rGB/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Delete"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copy number"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit number before call"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Call"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Report inaccurate number"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Sent a photo"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Received a photo"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Contact details for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Report incorrect number"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Couldn\'t report number"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Number reported"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-en-rIN/strings.xml b/java/com/android/dialer/calldetails/res/values-en-rIN/strings.xml
index 2d5210e..45deb49 100644
--- a/java/com/android/dialer/calldetails/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-en-rIN/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Delete"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copy number"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit number before call"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Call"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Report inaccurate number"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Sent a photo"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Received a photo"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Contact details for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Report incorrect number"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Couldn\'t report number"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Number reported"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-es-rUS/strings.xml b/java/com/android/dialer/calldetails/res/values-es-rUS/strings.xml
index d9db282..778868e 100644
--- a/java/com/android/dialer/calldetails/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-es-rUS/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Borrar"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de llamar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Llamar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informar número incorrecto"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviaste una foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recibiste una foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Datos de contacto de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informar número incorrecto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"No se pudo informar el número."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número informado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-es/strings.xml b/java/com/android/dialer/calldetails/res/values-es/strings.xml
index e72e898..5cecffa 100644
--- a/java/com/android/dialer/calldetails/res/values-es/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-es/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Eliminar"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de llamar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Llamar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Notificar un número incorrecto"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Se ha enviado una foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Se ha recibido una foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Información de contacto de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Notificar un número incorrecto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"No se ha podido notificar el número"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número notificado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-et/strings.xml b/java/com/android/dialer/calldetails/res/values-et/strings.xml
index 496459d..c8f52ae 100644
--- a/java/com/android/dialer/calldetails/res/values-et/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-et/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Kustuta"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopeeri number"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Muuda numbrit enne helistamist"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Kõne"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Valest numbrist teavitamine"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Saatis foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Sai foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontakti <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> üksikasjad"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Valest numbrist teavitamine"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numbrist ei õnnestunud teavitada"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numbrist teavitati"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-eu/strings.xml b/java/com/android/dialer/calldetails/res/values-eu/strings.xml
index 913082f..5184e64 100644
--- a/java/com/android/dialer/calldetails/res/values-eu/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-eu/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Ezabatu"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiatu zenbakia"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editatu zenbakia deitu aurretik"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Deia"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Jakinarazi zenbakiaren informazioa okerra dela"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Argazki bat bidali duzu"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Argazki bat jaso duzu"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> kontaktuaren xehetasunak"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Jakinarazi zenbakia okerra dela"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Ezin izan da bidali jakinarazpena"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Bidali da jakinarazpena"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-fa/strings.xml b/java/com/android/dialer/calldetails/res/values-fa/strings.xml
index cad85a2..b37b2b5 100644
--- a/java/com/android/dialer/calldetails/res/values-fa/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-fa/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"حذف"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"کپی کردن شماره"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ویرایش شماره قبل از تماس"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"تماس"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"گزارش شماره نادرست"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"عکسی ارسال کرد"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"عکسی دریافت کرد"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"جزئیات تماس <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"گزارش شماره نادرست"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"شماره گزارش نشد"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"شماره گزارش شد"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-fi/strings.xml b/java/com/android/dialer/calldetails/res/values-fi/strings.xml
index c16110d..ead2c6a 100644
--- a/java/com/android/dialer/calldetails/res/values-fi/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-fi/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Poista"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopioi numero"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Muokkaa numeroa ennen puhelua"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Soita"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Ilmoita epätarkasta numerosta"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Lähetetty kuva"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Vastaanotettu kuva"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Yhteystiedot: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Ilmoita väärästä numerosta"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numerosta ilmoittaminen epäonnistui."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numeroa koskeva ilmoitus lähetettiin."</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-fr-rCA/strings.xml b/java/com/android/dialer/calldetails/res/values-fr-rCA/strings.xml
index 676861f..714fb7b 100644
--- a/java/com/android/dialer/calldetails/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-fr-rCA/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Supprimer"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copier le numéro"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Modifier le numéro avant de passer l\'appel"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Appeler"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Signaler un numéro inexact"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Photo envoyée"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Photo reçue"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"« <xliff:g id="MESSAGE">%1$s</xliff:g> »"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Coordonnées de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Signaler un numéro incorrect"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Impossible de signaler le numéro"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numéro signalé"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-fr/strings.xml b/java/com/android/dialer/calldetails/res/values-fr/strings.xml
index 606cb10..f612341 100644
--- a/java/com/android/dialer/calldetails/res/values-fr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-fr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Supprimer"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copier le numéro"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Modifier le numéro avant d\'appeler"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Appeler"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Signaler un numéro incorrect"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Envoi d\'une photo"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Réception d\'une photo"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Coordonnées associées à <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Signaler un numéro incorrect"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Impossible de signaler le numéro"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Signalement du numéro effectué"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-gl/strings.xml b/java/com/android/dialer/calldetails/res/values-gl/strings.xml
index aa5ff14..7f79834 100644
--- a/java/com/android/dialer/calldetails/res/values-gl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-gl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Eliminar"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de chamar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Chamar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informar dun número impreciso"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviouse unha foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recibiuse unha foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalles de contacto de: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informar dun número incorrecto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Non se puido marcar o número como inadecuado"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Marcouse o número como inadecuado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-gu/strings.xml b/java/com/android/dialer/calldetails/res/values-gu/strings.xml
index ccb8755..9299705 100644
--- a/java/com/android/dialer/calldetails/res/values-gu/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-gu/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"કાઢી નાખો"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"નંબર કૉપિ કરો"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"કૉલ કરતાં પહેલાં નંબર સંપાદિત કરો"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"કૉલ કરો"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"અચોક્કસ નંબરની જાણ કરો"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"એક ફોટો મોકલ્યો"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"એક ફોટો પ્રાપ્ત કર્યો"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> માટે સંપર્ક વિગતો"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"ખોટા નંબરની જાણ કરો"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"નંબરની જાણ કરી શકાઈ નથી"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"નંબરની જાણ કરી"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-hi/strings.xml b/java/com/android/dialer/calldetails/res/values-hi/strings.xml
index 517fbe5..08099fe 100644
--- a/java/com/android/dialer/calldetails/res/values-hi/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-hi/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"हटाएं"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"नंबर कॉपी करें"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"कॉल करने से पहले नंबर संपादित करें"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"कॉल करें"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"गलत जानकारी देने वाले नंबर की रिपोर्ट करें"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"फ़ोटो भेजी गई"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"फ़ोटो मिली"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> का संपर्क विवरण"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"गलत नंबर की रिपोर्ट करें"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"नंबर की रिपोर्ट नहीं की जा सकी"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"नंबर की रिपोर्ट की गई"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-hr/strings.xml b/java/com/android/dialer/calldetails/res/values-hr/strings.xml
index 687a65e..6537181 100644
--- a/java/com/android/dialer/calldetails/res/values-hr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-hr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Brisanje"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiranje broja"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Uređivanje broja prije poziva"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Poziv"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Prijava netočnog broja"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Šalje fotografiju"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Prima fotografiju"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Pojedinosti o kontaktu <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Prijava netočnog broja"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Prijava broja nije moguća"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Broj je prijavljen"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-hu/strings.xml b/java/com/android/dialer/calldetails/res/values-hu/strings.xml
index 66863e8..43afbe3 100644
--- a/java/com/android/dialer/calldetails/res/values-hu/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-hu/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Törlés"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Szám másolása"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Szám szerkesztése hívás előtt"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telefonhívás"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Pontatlan szám bejelentése"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Küldött egy fotót"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Kapott egy fotót"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> részletes adatai."</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Helytelen szám bejelentése"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nem sikerült bejelenteni a számot"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Szám bejelentve"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-hy/strings.xml b/java/com/android/dialer/calldetails/res/values-hy/strings.xml
index a1e84e9..05022ca 100644
--- a/java/com/android/dialer/calldetails/res/values-hy/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-hy/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Ջնջել"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Պատճենել համարը"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Փոփոխել համարը զանգելուց առաջ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Զանգ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Հաղորդել սխալ համարի մասին"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Ուղարկվել է լուսանկար"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Ստացվել է լուսանկար"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>-ի կոնտակտային տվյալները"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Հաղորդում սխալ համարի մասին"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Չհաջողվեց ուղարկել հաղորդումը"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Հաղորդումն ուղարկվեց"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-in/strings.xml b/java/com/android/dialer/calldetails/res/values-in/strings.xml
index ba58ba0..eaeb273 100644
--- a/java/com/android/dialer/calldetails/res/values-in/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-in/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Hapus"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Salin nomor"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit nomor sebelum menelepon"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telepon"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Laporkan nomor yang tidak akurat"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Mengirim foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Menerima foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detail kontak <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Laporkan nomor yang salah"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Tidak dapat melaporkan nomor"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nomor dilaporkan"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-is/strings.xml b/java/com/android/dialer/calldetails/res/values-is/strings.xml
index 0770814..ac522d5 100644
--- a/java/com/android/dialer/calldetails/res/values-is/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-is/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Eyða"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Afrita númer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Breyta númeri áður en hringt er"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Hringja"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Tilkynna rangt númer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Sendi mynd"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Tók á móti mynd"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Tengiliðaupplýsingar um <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Tilkynna rangt númer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Ekki tókst að tilkynna númerið"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Númer tilkynnt"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-it/strings.xml b/java/com/android/dialer/calldetails/res/values-it/strings.xml
index 97af251..40c2245 100644
--- a/java/com/android/dialer/calldetails/res/values-it/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-it/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Elimina"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copia numero"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Modifica numero prima di chiamare"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Chiama"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Segnala numero sbagliato"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Foto inviata"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Foto ricevuta"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Dettagli contatto <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Segnala numero errato"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Impossibile segnalare il numero"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numero segnalato"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-iw/strings.xml b/java/com/android/dialer/calldetails/res/values-iw/strings.xml
index 329eded..ffc4d47 100644
--- a/java/com/android/dialer/calldetails/res/values-iw/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-iw/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"מחק"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"העתק את המספר"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ערוך את המספר לפני השיחה"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"התקשר"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"דיווח על מספר לא מדויק"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"נשלחה תמונה"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"התקבלה תמונה"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"פרטי ההתקשרות של <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"דיווח על מספר שגוי"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"לא ניתן היה לדווח על המספר"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"המספר דווח"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ja/strings.xml b/java/com/android/dialer/calldetails/res/values-ja/strings.xml
index 7aef345..24fcf2c 100644
--- a/java/com/android/dialer/calldetails/res/values-ja/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ja/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"削除"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"電話番号をコピー"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"発信前に電話番号を編集"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"発信"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"情報が間違っている番号を報告"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"写真を送信しました"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"写真を受信しました"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"「<xliff:g id="MESSAGE">%1$s</xliff:g>」"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>の連絡先の詳細"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"間違った番号の報告"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"番号を報告できませんでした"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"番号を報告しました"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ka/strings.xml b/java/com/android/dialer/calldetails/res/values-ka/strings.xml
index 1cd7bc2..3d92f61 100644
--- a/java/com/android/dialer/calldetails/res/values-ka/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ka/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"წაშლა"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ნომრის კოპირება"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ნომრის რედაქტირება დარეკვამდე"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"დარეკვა"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"არაზუსტი ნომრის შეტყობინება"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ფოტო გაიგზავნა"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"მიღებულია ფოტო"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>-ის საკონტაქტო დეტალები"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"არასწორი ნომრის შეტყობინება"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ნომრის შეტყობინება ვერ მოხერხდა"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ნომერი შეტყობინებულია"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-kk/strings.xml b/java/com/android/dialer/calldetails/res/values-kk/strings.xml
index 1923cf7..c29daeb 100644
--- a/java/com/android/dialer/calldetails/res/values-kk/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-kk/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Жою"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Нөмірді көшіру"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Нөмірді қоңырау шалуға дейін өзгерту"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Қоңырау шалу"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Қате нөмір туралы хабарлау"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Сурет жіберілді"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Сурет қабылданды"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> контакт деректері"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Қате нөмір туралы хабарлау"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Нөмір туралы хабар жіберілмеді"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Нөмір туралы хабар жіберілді"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-km/strings.xml b/java/com/android/dialer/calldetails/res/values-km/strings.xml
index e047279..d5ea830 100644
--- a/java/com/android/dialer/calldetails/res/values-km/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-km/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"លុប"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ថតចម្លងលេខទូរសព្ទ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"កែ​លេខ​ មុន​ពេល​ហៅទូរសព្ទ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ហៅទូរសព្ទ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"រាយការណ៍លេខមិនត្រឹមត្រូវ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"បានផ្ញើរូបថត"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"បាន​ទទួល​រូបថត"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"ព័ត៌មាន​ទំនាក់​ទំនង​លម្អិត​សម្រាប់ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"រាយការណ៍​លេខ​មិន​ត្រឹមត្រូវ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"មិន​អាច​រាយការណ៍​លេខ​បាន​ទេ"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"បាន​រាយការណ៍​លេខ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-kn/strings.xml b/java/com/android/dialer/calldetails/res/values-kn/strings.xml
index 66c0d63..aeff715 100644
--- a/java/com/android/dialer/calldetails/res/values-kn/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-kn/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ಅಳಿಸಿ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ಸಂಖ್ಯೆಯನ್ನು ನಕಲಿಸಿ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ಕರೆ ಮಾಡುವ ಮೊದಲು ಸಂಖ್ಯೆಯನ್ನು ಎಡಿಟ್ ಮಾಡಿ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ಕರೆಮಾಡಿ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ನಿಖರವಾಗಿಲ್ಲದ ಸಂಖ್ಯೆಯನ್ನು ವರದಿಮಾಡಿ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ಫೋಟೋ ಕಳುಹಿಸಲಾಗಿದೆ"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ಫೋಟೋ ಸ್ವೀಕರಿಸಲಾಗಿದೆ"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ಗೆ ಸಂಪರ್ಕ ವಿವರಗಳು"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"ತಪ್ಪಾದ ಸಂಖ್ಯೆಯನ್ನು ವರದಿಮಾಡಿ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ಸಂಖ್ಯೆಯನ್ನು ವರದಿ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ವರದಿ ಮಾಡಲಾದ ಸಂಖ್ಯೆ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ko/strings.xml b/java/com/android/dialer/calldetails/res/values-ko/strings.xml
index 35c5038..f45d712 100644
--- a/java/com/android/dialer/calldetails/res/values-ko/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ko/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"삭제"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"전화번호 복사"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"통화하기 전에 번호 수정"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"전화걸기"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"잘못된 번호 신고하기"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"사진 전송됨"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"사진 수신됨"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\'<xliff:g id="MESSAGE">%1$s</xliff:g>\'"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>의 연락처 세부정보"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"잘못된 번호 신고"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"번호를 신고할 수 없습니다."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"번호가 신고되었습니다."</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ky/strings.xml b/java/com/android/dialer/calldetails/res/values-ky/strings.xml
index fe37b33..9735abc 100644
--- a/java/com/android/dialer/calldetails/res/values-ky/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ky/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Жок кылуу"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Номерди көчүрүү"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Чалуудан мурун номерди түзөтүү"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Чалуу"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Номердеги ката жөнүндө кабар берүү"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Сүрөт жөнөтүлдү"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Сүрөт алынды"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> байланыш маалыматтары"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Туура эмес номер жөнүндө кабарлоо"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Туура эмес номер жөнүндө кабар жөнөтүлбөй койду"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Туура эмес номер жөнүндө кабар берүү"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-lo/strings.xml b/java/com/android/dialer/calldetails/res/values-lo/strings.xml
index 85b636a..880510e 100644
--- a/java/com/android/dialer/calldetails/res/values-lo/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-lo/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"​ລຶບ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ສຳເນົາເບີໂທ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ແກ້ໄຂເບີກ່ອນໂທ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ໂທ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ລາຍງານເບີໂທທີ່ບໍ່ຖືກຕ້ອງ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ສົ່ງຮູບພາບ"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ໄດ້ຮັບຮູບພາບແລ້ວ"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"ລາຍລະອຽດ​ການຕິດຕໍ່​ສຳລັບ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"​ລາຍ​ງານ​ເບີ​ໂທບໍ່​ຖືກ​ຕ້ອງ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ບໍ່ສາມາດລາຍງານເບີໂທໄດ້"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ລາຍງານເບີໂທແລ້ວ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-lt/strings.xml b/java/com/android/dialer/calldetails/res/values-lt/strings.xml
index 9c8ad7b..2f195de 100644
--- a/java/com/android/dialer/calldetails/res/values-lt/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-lt/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Ištrinti"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopijuoti numerį"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Redaguoti numerį prieš skambinant"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Skambinti"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Pranešti apie netikslų numerį"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Išsiuntė nuotrauką"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Gavo nuotrauką"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Išsami kontaktinė informacija: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Pranešimas apie netinkamą numerį"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nepavyko pranešti apie numerį"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Apie numerį pranešta"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-lv/strings.xml b/java/com/android/dialer/calldetails/res/values-lv/strings.xml
index d878393..e119b12 100644
--- a/java/com/android/dialer/calldetails/res/values-lv/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-lv/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Dzēst"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopēt numuru"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Rediģēt numuru pirms zvanīšanas"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Zvanīt"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Ziņot par neprecīzu numuru"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Nosūtīja fotoattēlu"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Saņēma fotoattēlu"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"“<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktpersonas informācija: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Ziņošana par nepareizu numuru"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nevarēja nosūtīt ziņojumu par numuru"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Ziņojums par numuru nosūtīts"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-mk/strings.xml b/java/com/android/dialer/calldetails/res/values-mk/strings.xml
index 9388ae0..2458e08 100644
--- a/java/com/android/dialer/calldetails/res/values-mk/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-mk/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Избриши"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Копирај го бројот"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Измени го бројот пред повикот"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Повикај"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Пријавете погрешен број"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Испрати фотографија"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Прими фотографија"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Детали за контакт за <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Пријавете неточен број"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Не можеше да пријави бројот"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Бројот е пријавен"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ml/strings.xml b/java/com/android/dialer/calldetails/res/values-ml/strings.xml
index d296911..8164a21 100644
--- a/java/com/android/dialer/calldetails/res/values-ml/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ml/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ഇല്ലാതാക്കുക"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"നമ്പർ പകർത്തുക"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"കോൾ ചെയ്യുന്നതിന് മുമ്പായി നമ്പർ എഡിറ്റുചെയ്യുക"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"കോള്‍ ചെയ്യുക"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"കൃത്യമല്ലാത്ത നമ്പർ റിപ്പോർട്ടുചെയ്യുക"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ഒരു ഫോട്ടോ അയച്ചു"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ഒരു ഫോട്ടോ ലഭിച്ചു"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> എന്നതിന്റെ കോൺ‌ടാക്റ്റ് വിശദാംശങ്ങൾ"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"തെറ്റായ നമ്പർ റിപ്പോർട്ടുചെയ്യുക"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"നമ്പർ റിപ്പോർട്ടുചെയ്യാനായില്ല"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"നമ്പർ റിപ്പോർട്ടുചെയ്‌തു"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-mn/strings.xml b/java/com/android/dialer/calldetails/res/values-mn/strings.xml
index cb264e0..242f6ab 100644
--- a/java/com/android/dialer/calldetails/res/values-mn/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-mn/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Устгах"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Дугаар хуулах"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Залгахын өмнө дугаар засах"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Залгах"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Тодорхой бус дугаарыг мэдээлэх"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Зураг илгээсэн"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Зураг хүлээн авсан"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>-н харилцагчийн мэдээлэл"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Буруу дугаарыг мэдээлэх"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Дугаарыг мэдээлж чадсангүй"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Дугаарыг мэдээлсэн"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-mr/strings.xml b/java/com/android/dialer/calldetails/res/values-mr/strings.xml
index 5c31e36..d869e13 100644
--- a/java/com/android/dialer/calldetails/res/values-mr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-mr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"हटवा"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"नंबर कॉपी करा"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"कॉल करण्यापूर्वी नंबर संपादित करा"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"कॉल करा"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"चुकीच्या नंबरचा अहवाल द्या"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"एक फोटो पाठविला"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"एक फोटो प्राप्त झाला"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> साठी संपर्क तपशील"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"चुकीच्या नंबरचा अहवाल द्या"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"नंबरचा अहवाल देऊ शकलो नाही"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"नंबरचा अहवाल दिला"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ms/strings.xml b/java/com/android/dialer/calldetails/res/values-ms/strings.xml
index da17d6e..7c0bfdd 100644
--- a/java/com/android/dialer/calldetails/res/values-ms/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ms/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Padam"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Salin nombor"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit nombor sebelum panggilan"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Panggil"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Laporkan nombor yang tidak tepat"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Menghantar foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Foto diterima"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Butiran hubungan untuk <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Laporkan nombor yang tidak betul"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Tidak dapat melaporkan nombor"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nombor dilaporkan"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-my/strings.xml b/java/com/android/dialer/calldetails/res/values-my/strings.xml
index 75508d8..34a57d5 100644
--- a/java/com/android/dialer/calldetails/res/values-my/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-my/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ဖျက်ရန်"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"နံပါတ်ကိုကူးယူရန်"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"မခေါ်ဆိုမီ နံပါတ်ကိုပြင်ဆင်ရန်"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ခေါ်ဆိုရန်"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"မတိကျသော နံပါတ်ကို တိုင်ကြားရန်"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ဓာတ်ပုံ ပို့လိုက်သည်"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ဓာတ်ပုံ လက်ခံရရှိသည်"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ၏ အဆက်အသွယ် အသေးစိတ်"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"မမှန်ကန်သည့် နံပါတ်ကို တိုင်ကြားရန်"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"နံပါတ်ကို မတိုင်ကြားနိုင်ပါ"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"နံပါတ်ကို တိုင်ကြားပြီးပါပြီ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-nb/strings.xml b/java/com/android/dialer/calldetails/res/values-nb/strings.xml
index 022025f..53ffd3a 100644
--- a/java/com/android/dialer/calldetails/res/values-nb/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-nb/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Slett"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiér nummeret"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Rediger nummeret før du ringer"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ring"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Rapportér feil nummer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Et bilde ble sendt"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Et bilde ble mottatt"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktinformasjon for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Rapportér feil nummer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Kunne ikke rapportere nummeret"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummeret er rapportert"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ne/strings.xml b/java/com/android/dialer/calldetails/res/values-ne/strings.xml
index 8fe355b..f8e10ca 100644
--- a/java/com/android/dialer/calldetails/res/values-ne/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ne/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"मेट्नुहोस्"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"नम्बर प्रतिलिपि गर्नुहोस्"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"कल गर्नु अघि नम्बर सम्पादन गर्नुहोस्"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"कल"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"गलत नम्बरको रिपोर्ट गर्नुहोस्"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"एउटा तस्बिर पठाइयो"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"एउटा तस्बिर प्राप्त भयो"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> का सम्पर्क विवरणहरू"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"गलत नम्बरको रिपोर्ट गर्नुहोस्"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"नम्बरको रिपोर्ट गर्न सकिएन"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"नम्बरको रिपोर्ट गरियो"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-nl/strings.xml b/java/com/android/dialer/calldetails/res/values-nl/strings.xml
index 71657b8..b8cb7fe 100644
--- a/java/com/android/dialer/calldetails/res/values-nl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-nl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Verwijderen"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Nummer kopiëren"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Nummer bewerken vóór bellen"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Bellen"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Onjuist nummer melden"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Foto verzonden"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Foto ontvangen"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\'<xliff:g id="MESSAGE">%1$s</xliff:g>\'"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Contactgegevens voor <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Incorrect nummer melden"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Kan nummer niet melden"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummer gemeld"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-no/strings.xml b/java/com/android/dialer/calldetails/res/values-no/strings.xml
index 022025f..53ffd3a 100644
--- a/java/com/android/dialer/calldetails/res/values-no/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-no/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Slett"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiér nummeret"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Rediger nummeret før du ringer"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ring"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Rapportér feil nummer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Et bilde ble sendt"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Et bilde ble mottatt"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktinformasjon for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Rapportér feil nummer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Kunne ikke rapportere nummeret"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummeret er rapportert"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pa/strings.xml b/java/com/android/dialer/calldetails/res/values-pa/strings.xml
index d4f1759..b488d53 100644
--- a/java/com/android/dialer/calldetails/res/values-pa/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pa/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ਮਿਟਾਓ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ਨੰਬਰ ਕਾਪੀ ਕਰੋ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ਕਾਲ ਤੋਂ ਪਹਿਲਾਂ ਨੰਬਰ ਸੰਪਾਦਿਤ ਕਰੋ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ਕਾਲ ਕਰੋ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ਗਲਤ ਨੰਬਰ ਦੀ ਰਿਪੋਰਟ ਕਰੋ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ਇੱਕ ਫ਼ੋਟੋ ਭੇਜੀ ਗਈ"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ਇੱਕ ਫ਼ੋਟੋ ਪ੍ਰਾਪਤ ਹੋਈ"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ਲਈ ਸੰਪਰਕ ਵੇਰਵੇ"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"ਗਲਤ ਨੰਬਰ ਦੀ ਰਿਪੋਰਟ ਕਰੋ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ਨੰਬਰ ਦੀ ਰਿਪੋਰਟ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ਨੰਬਰ ਦੀ ਰਿਪੋਰਟ ਕੀਤੀ ਗਈ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pl/strings.xml b/java/com/android/dialer/calldetails/res/values-pl/strings.xml
index 9644600..790dade 100644
--- a/java/com/android/dialer/calldetails/res/values-pl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Usuń"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiuj numer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edytuj numer, zanim zadzwonisz"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Zadzwoń"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Zgłoś niedokładny numer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Wysłano zdjęcie"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Odebrano zdjęcie"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Informacje kontaktowe: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Zgłoś nieprawidłowy numer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nie udało się zgłosić numeru"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numer został zgłoszony"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pt-rBR/strings.xml b/java/com/android/dialer/calldetails/res/values-pt-rBR/strings.xml
index 467973d..7cd3282 100644
--- a/java/com/android/dialer/calldetails/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pt-rBR/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Excluir"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de ligar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ligar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informar número inválido"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviou uma foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recebeu uma foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalhes de contato para <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informar número incorreto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Não foi possível informar o número"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número informado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pt-rPT/strings.xml b/java/com/android/dialer/calldetails/res/values-pt-rPT/strings.xml
index cfbbc02..5749ebb 100644
--- a/java/com/android/dialer/calldetails/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pt-rPT/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Eliminar"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar o número antes de efetuar a chamada"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telefonar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Denunciar número incorreto"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviou uma foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recebeu uma foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalhes de contacto de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Denunciar número incorreto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Não foi possível denunciar o número."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número denunciado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pt/strings.xml b/java/com/android/dialer/calldetails/res/values-pt/strings.xml
index 467973d..7cd3282 100644
--- a/java/com/android/dialer/calldetails/res/values-pt/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pt/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Excluir"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de ligar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ligar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informar número inválido"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviou uma foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recebeu uma foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalhes de contato para <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informar número incorreto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Não foi possível informar o número"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número informado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ro/strings.xml b/java/com/android/dialer/calldetails/res/values-ro/strings.xml
index e9281ae..00ab0a3 100644
--- a/java/com/android/dialer/calldetails/res/values-ro/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ro/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Ștergeți"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiați numărul"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Modificați numărul înainte de apelare"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Apelați"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Raportați numărul ca incorect"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"A fost trimisă o fotografie."</string>
     <string name="received_a_photo" msgid="3528953225576480505">"A fost primită o fotografie."</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalii de contact pentru <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Raportați un număr incorect"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numărul nu a putut fi raportat."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numărul a fost raportat."</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ru/strings.xml b/java/com/android/dialer/calldetails/res/values-ru/strings.xml
index bf981e2..b31b832 100644
--- a/java/com/android/dialer/calldetails/res/values-ru/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ru/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Удалить"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Скопировать номер"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Изменить номер перед вызовом"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Позвонить"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Сообщить об ошибке в номере"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Отправлена фотография"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Получена фотография"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Сведения о контакте <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Неверный номер"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Не удалось отправить отчет о неверном номере"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Отчет о неверном номере отправлен"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-si/strings.xml b/java/com/android/dialer/calldetails/res/values-si/strings.xml
index 5fdca0d..62968ab 100644
--- a/java/com/android/dialer/calldetails/res/values-si/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-si/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"මකන්න"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"අංකය පිටපත් කරන්න"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ඇමතුමට පෙර අංකය සංස්කරණය කරන්න"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"අමතන්න"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"වැරදි අංකය වාර්තා කරන්න"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ඡායාරූපයක් යැවිණි"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ඡායාරූපයක් ලැබිණි"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> සඳහා සම්බන්ධතා විස්තර"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"වැරදි අංකය වාර්තා කරන්න"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"අංකය වාර්තා කිරීමට නොහැකි විය"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"අංකය වාර්තා කරන ලදී"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sk/strings.xml b/java/com/android/dialer/calldetails/res/values-sk/strings.xml
index db04787..ee62cbd 100644
--- a/java/com/android/dialer/calldetails/res/values-sk/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sk/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Odstrániť"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopírovať číslo"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Pred volaním upraviť číslo"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Volať"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Nahlásiť nesprávne číslo"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Bola odoslaná fotka"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Bola prijatá fotka"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> – podrobnosti kontaktu"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Nahlásenie nesprávneho čísla"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Číslo sa nepodarilo nahlásiť"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Číslo bolo nahlásené"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sl/strings.xml b/java/com/android/dialer/calldetails/res/values-sl/strings.xml
index 98975f4..70b0e59 100644
--- a/java/com/android/dialer/calldetails/res/values-sl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Izbriši"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiraj številko"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Pred klicanjem uredi številko"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Pokliči"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Prijavi netočno številko"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Poslana fotografija"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Prejeta fotografija"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"»<xliff:g id="MESSAGE">%1$s</xliff:g>«"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Podrobnosti stika za <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Prijava napačne številke"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Številke ni bilo mogoče prijaviti"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Številka je prijavljena"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sq/strings.xml b/java/com/android/dialer/calldetails/res/values-sq/strings.xml
index dd9915d..a3de4f1 100644
--- a/java/com/android/dialer/calldetails/res/values-sq/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sq/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Fshi"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopjo numrin"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Redakto numrin para telefonatës"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telefono"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Raporto numrin e pasaktë"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"U dërgua një fotografi"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"U mor një fotografi"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detajet e kontaktit për <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Raporto numrin e pasaktë"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numri nuk mund të raportohej"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numri u raportua"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sr/strings.xml b/java/com/android/dialer/calldetails/res/values-sr/strings.xml
index 7f4005d..54c1550 100644
--- a/java/com/android/dialer/calldetails/res/values-sr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Избриши"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Копирај број"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Измените број пре позива"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Позови"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Пријави нетачан број"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Слика је послата"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Слика је примљена"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Контакт информације за <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Пријавите нетачан број"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Пријављивање броја није успело"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Број је пријављен"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sv/strings.xml b/java/com/android/dialer/calldetails/res/values-sv/strings.xml
index 3967b4f..a7e1c12 100644
--- a/java/com/android/dialer/calldetails/res/values-sv/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sv/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Radera"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiera nummer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Redigera nummer före samtal"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ring"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Rapportera felaktigt nummer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Skickade ett foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Tog emot ett foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"<xliff:g id="MESSAGE">%1$s</xliff:g>"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktuppgifter för <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Rapportera felaktigt nummer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Det gick inte att rapportera nummer"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummer rapporterat"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sw/strings.xml b/java/com/android/dialer/calldetails/res/values-sw/strings.xml
index e5df823..f19fb7b 100644
--- a/java/com/android/dialer/calldetails/res/values-sw/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sw/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Futa"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Nakili nambari"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Hariri nambari kabla ya kupiga"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Piga simu"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Ripoti nambari isiyo sahihi"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Picha imetumwa"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Picha imepokelewa"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Maelezo ya <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Ripoti nambari isiyosahihi"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Imeshindwa kuripoti nambari"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nambari imeripotiwa"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ta/strings.xml b/java/com/android/dialer/calldetails/res/values-ta/strings.xml
index 840ad87..7f625f8 100644
--- a/java/com/android/dialer/calldetails/res/values-ta/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ta/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"நீக்கு"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"எண்ணை நகலெடு"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"அழைப்பதற்கு முன் எண்ணைத் திருத்து"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"அழை"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"துல்லியமற்ற எண் எனப் புகாரளி"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"படம் அனுப்பப்பட்டது"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"படம் பெறப்பட்டது"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>க்கான தொடர்பு விவரங்கள்"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"தவறான எண் எனப் புகாரளி"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"எண்ணைப் புகாரளிக்க முடியவில்லை"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"எண் புகாரளிக்கப்பட்டது"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-te/strings.xml b/java/com/android/dialer/calldetails/res/values-te/strings.xml
index 3054444..d6fc792 100644
--- a/java/com/android/dialer/calldetails/res/values-te/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-te/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"తొలగించు"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"నంబర్‌ను కాపీ చేయి"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"కాల్ చేసే ముందు నంబర్‌ను సవరించు"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"కాల్ చేయి"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"అనిర్దిష్టంగా ఉండే నంబర్‌ను నివేదించు"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ఫోటో పంపబడింది"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ఫోటో స్వీకరించబడింది"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> యొక్క సంప్రదింపు వివరాలు"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"చెల్లని నంబర్‌ను నివేదించండి"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"నంబర్‌ను నివేదించడం సాధ్యపడలేదు"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"నంబర్ నివేదించబడింది"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-th/strings.xml b/java/com/android/dialer/calldetails/res/values-th/strings.xml
index c565eba..7bbcd12 100644
--- a/java/com/android/dialer/calldetails/res/values-th/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-th/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ลบ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"คัดลอกหมายเลข"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"แก้ไขหมายเลขก่อนโทร"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"โทร"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"รายงานหมายเลขที่ผิดพลาด"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ส่งรูปภาพแล้ว"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ได้รับรูปภาพแล้ว"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"รายละเอียดที่ติดต่อสำหรับ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"รายงานหมายเลขที่ไม่ถูกต้อง"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ไม่สามารถรายงานหมายเลข"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"รายงานหมายเลขแล้ว"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-tl/strings.xml b/java/com/android/dialer/calldetails/res/values-tl/strings.xml
index 81c148e..969a33a 100644
--- a/java/com/android/dialer/calldetails/res/values-tl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-tl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"I-delete"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopyahin ang numero"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"I-edit ang numero bago tumawag"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Tumawag"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Iulat ang hindi wastong numero"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Nagpadala ng larawan"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Nakatanggap ng larawan"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Mga detalye sa pakikipag-ugnayan para kay/sa <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Iulat ang hindi tamang numero"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Hindi maiulat ang numero"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Inulat ang numero"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-tr/strings.xml b/java/com/android/dialer/calldetails/res/values-tr/strings.xml
index ade4018..9976312 100644
--- a/java/com/android/dialer/calldetails/res/values-tr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-tr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Sil"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Numarayı kopyala"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Telefon etmeden önce numarayı düzenleyin"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telefon eder"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Hatalı numarayı bildir"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Bir fotoğraf gönderildi"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Bir fotoğraf alındı"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> için kişi ayrıntıları"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Yanlış numarayı bildir"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numara bildirilemedi"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numara bildirildi"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-uk/strings.xml b/java/com/android/dialer/calldetails/res/values-uk/strings.xml
index 6538d66..d37a54e 100644
--- a/java/com/android/dialer/calldetails/res/values-uk/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-uk/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Видалити"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Копіювати номер"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Редагувати номер перед дзвінком"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Виклик"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Повідомити про неправильний номер"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Надіслано фотографію"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Отримано фотографію"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Відомості про контакт <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Повідомити про неправильний номер"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Не вдалося повідомити про неправильний номер"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Ви повідомили про неправильний номер"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ur/strings.xml b/java/com/android/dialer/calldetails/res/values-ur/strings.xml
index 90c3a59..960bef4 100644
--- a/java/com/android/dialer/calldetails/res/values-ur/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ur/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"حذف کریں"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"نمبر کاپی کریں"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"کال کرنے سے پہلے نمبر میں ترمیم کریں"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"کال"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"غلط نمبر کی رپورٹ کریں"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ایک تصویر بھیجی"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ایک تصویر موصول ہوئی"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> کیلئے رابطہ کی تفصیلات"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"غلط نمبر کی اطلاع دیں"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"نمبر کی اطلاع نہیں دی جا سکی"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"نمبر کی اطلاع دے دی گئی"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-uz/strings.xml b/java/com/android/dialer/calldetails/res/values-uz/strings.xml
index 7b443ca..57f0526 100644
--- a/java/com/android/dialer/calldetails/res/values-uz/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-uz/strings.xml
@@ -20,10 +20,12 @@
     <string name="call_details" msgid="5063658079729839605">"Chaqiruv tafsilotlari"</string>
     <string name="delete" msgid="2141020674108406737">"O‘chirib tashlash"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Raqamni nusxalash"</string>
-    <string name="call_details_edit_number" msgid="8718476514903513624">"Qo‘ng‘iroq qilishdan oldin raqamni tahrirlash"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Qo‘ng‘iroq qilish"</string>
+    <string name="call_details_edit_number" msgid="8718476514903513624">"Chaqiruvdan oldin raqamni tahrirlash"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Raqamdagi xatolik haqida xabar berish"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Rasm yuborildi"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Rasm qabul qilindi"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"“<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> kontakt ma’lumotlari"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Noto‘g‘ri raqam"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Raqamdagi xatolik haqida xabar yuborib bo‘lmadi"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Raqamdagi xatolik haqida xabar yuborildi"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-vi/strings.xml b/java/com/android/dialer/calldetails/res/values-vi/strings.xml
index 7a95021..6adae2b 100644
--- a/java/com/android/dialer/calldetails/res/values-vi/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-vi/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Xóa"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Sao chép số"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Chỉnh sửa số trước khi gọi"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Gọi"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Báo cáo số không chính xác"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Đã gửi một ảnh"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Đã nhận một ảnh"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Chi tiết liên hệ cho <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Báo cáo số không chính xác"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Không thể báo cáo số"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Đã báo cáo số"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-zh-rCN/strings.xml b/java/com/android/dialer/calldetails/res/values-zh-rCN/strings.xml
index aad695a..1edb5e1 100644
--- a/java/com/android/dialer/calldetails/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-zh-rCN/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"删除"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"复制号码"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"拨打电话之前修改号码"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"拨打电话"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"报告错误的号码"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"发送了一张照片"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"收到了一张照片"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"“<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>的详细联系信息"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"报告错误号码"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"无法报告错误的号码"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"已报告错误的号码"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-zh-rHK/strings.xml b/java/com/android/dialer/calldetails/res/values-zh-rHK/strings.xml
index eb5b606..a82e070 100644
--- a/java/com/android/dialer/calldetails/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-zh-rHK/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"刪除"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"複製號碼"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"在撥打前編輯號碼"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"通話"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"報告錯誤號碼"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"已傳送相片"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"已收到相片"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"「<xliff:g id="MESSAGE">%1$s</xliff:g>」"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"「<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>」的聯絡人詳細資料"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"報告不正確的號碼"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"無法報告號碼"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"已報告號碼"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-zh-rTW/strings.xml b/java/com/android/dialer/calldetails/res/values-zh-rTW/strings.xml
index fd426c0..3b9dd56 100644
--- a/java/com/android/dialer/calldetails/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-zh-rTW/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"刪除"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"複製號碼"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"撥打電話前編輯號碼"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"撥號"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"回報號碼錯誤"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"傳送了 1 張相片"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"收到了 1 張相片"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"「<xliff:g id="MESSAGE">%1$s</xliff:g>」"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"「<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>」的聯絡詳細資料"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"回報不正確的號碼"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"無法回報號碼"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"已回報號碼"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-zu/strings.xml b/java/com/android/dialer/calldetails/res/values-zu/strings.xml
index d41d1f5..25e0cea 100644
--- a/java/com/android/dialer/calldetails/res/values-zu/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-zu/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Susa"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopisha inombolo"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Hlela inombolo ngaphambi kokushaya ucingo"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Shaya"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Bika inombolo engalungile"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Uthumele isithombe"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Uthole isithombe"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Imininingwane yokuxhumana ka-<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Bika inombolo engalungile"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Ayikwazanga ukubika inombolo"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Inombolo ibikiwe"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values/dimens.xml b/java/com/android/dialer/calldetails/res/values/dimens.xml
index f85d02f..91bf70e 100644
--- a/java/com/android/dialer/calldetails/res/values/dimens.xml
+++ b/java/com/android/dialer/calldetails/res/values/dimens.xml
@@ -15,8 +15,6 @@
   ~ limitations under the License
   -->
 <resources>
-  <dimen name="call_details_primary_text_size">16sp</dimen>
-  <dimen name="call_details_secondary_text_size">14sp</dimen>
   <dimen name="call_details_top_margin">6dp</dimen>
 
   <!-- contact container -->
diff --git a/java/com/android/dialer/calldetails/res/values/strings.xml b/java/com/android/dialer/calldetails/res/values/strings.xml
index 4471605..1441efd 100644
--- a/java/com/android/dialer/calldetails/res/values/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values/strings.xml
@@ -27,9 +27,8 @@
   <!-- Label for action to edit a number before calling it. [CHAR LIMIT=48] -->
   <string name="call_details_edit_number">Edit number before call</string>
 
-  <!-- String describing the phone icon on a call log list item. When tapped, it will place a
-       call to the number represented by that call log entry. [CHAR LIMIT=NONE]-->
-  <string name="description_call_log_call_action">Call</string>
+  <!-- Label for action to report a number with inaccurate caller id information. [CHAR LIMIT=48] -->
+  <string name="call_details_report_call_id">Report inaccurate number</string>
 
   <!-- String shown when the call details show a image that was sent -->
   <string name="sent_a_photo">Sent a photo</string>
@@ -40,10 +39,14 @@
   <!-- Messages shown to the user are wrapped in quotes, e.g. the user would see "Some text" -->
   <string name="message_in_quotes">\"<xliff:g id="message">%1$s</xliff:g>\"</string>
 
-  <!-- String describing the button to access the contact details for a name or number.
+  <!-- Title of dialog that confirms whether a user wants to report an incorrect number.
+       [CHAR LIMIT=NONE] -->
+  <string name="report_caller_id_dialog_title">Report incorrect number</string>
 
-      Note: AccessibilityServices use this attribute to announce what the view represents.
-            This is especially valuable for views without textual representation like ImageView.
-  -->
-  <string name="description_contact_photo_details">Contact details for <xliff:g id="nameOrNumber">%1$s</xliff:g></string>
+  <!-- Toast that appears when a caller id report fails to send. Could be due to network error or
+       authentication error. [CHAR LIMIT=NONE] -->
+  <string name="report_caller_id_failed">Couldn\'t report number</string>
+
+  <!-- Toast message which appears when a contact's caller id is reported as incorrect. [CHAR LIMIT=NONE] -->
+  <string name="report_caller_id_toast">Number reported</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values/styles.xml b/java/com/android/dialer/calldetails/res/values/styles.xml
index 4fffe1a..1a2b529 100644
--- a/java/com/android/dialer/calldetails/res/values/styles.xml
+++ b/java/com/android/dialer/calldetails/res/values/styles.xml
@@ -15,24 +15,6 @@
   ~ limitations under the License
   -->
 <resources>
-  <style name="PrimaryText">
-    <item name="android:textColor">#DE000000</item>
-    <item name="android:textSize">@dimen/call_details_primary_text_size</item>
-    <item name="android:maxLines">1</item>
-  </style>
-
-  <style name="SecondaryText">
-    <item name="android:textColor">#8A000000</item>
-    <item name="android:textSize">@dimen/call_details_secondary_text_size</item>
-    <item name="android:maxLines">1</item>
-  </style>
-
-  <style name="ECText">
-    <item name="android:textColor">#8A000000</item>
-    <item name="android:textSize">@dimen/call_details_ec_text_size</item>
-    <item name="android:maxLines">1</item>
-  </style>
-
   <style name="CallDetailsActionItemStyle">
     <item name="android:foreground">?android:attr/selectableItemBackground</item>
     <item name="android:clickable">true</item>
diff --git a/java/com/android/dialer/callintent/CallIntentBuilder.java b/java/com/android/dialer/callintent/CallIntentBuilder.java
index 6066f66..e5449c8 100644
--- a/java/com/android/dialer/callintent/CallIntentBuilder.java
+++ b/java/com/android/dialer/callintent/CallIntentBuilder.java
@@ -22,11 +22,13 @@
 import android.os.SystemClock;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
 import android.telecom.VideoProfile;
 import android.text.TextUtils;
 import com.android.dialer.common.Assert;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.util.CallUtil;
 
 /** Creates an intent to start a new outgoing call. */
@@ -37,11 +39,38 @@
   private boolean isVideoCall;
   private String callSubject;
 
+  private static int lightbringerButtonAppearInExpandedCallLogItemCount = 0;
+  private static int lightbringerButtonAppearInCollapsedCallLogItemCount = 0;
+  private static int lightbringerButtonAppearInSearchCount = 0;
+
   public CallIntentBuilder(@NonNull Uri uri, @NonNull CallSpecificAppData callSpecificAppData) {
     this.uri = Assert.isNotNull(uri);
-    this.callSpecificAppData = Assert.isNotNull(callSpecificAppData);
+    Assert.isNotNull(callSpecificAppData);
     Assert.checkArgument(
         callSpecificAppData.getCallInitiationType() != CallInitiationType.Type.UNKNOWN_INITIATION);
+
+    CallSpecificAppData.Builder builder =
+        CallSpecificAppData.newBuilder(callSpecificAppData)
+            .setLightbringerButtonAppearInExpandedCallLogItemCount(
+                lightbringerButtonAppearInExpandedCallLogItemCount)
+            .setLightbringerButtonAppearInCollapsedCallLogItemCount(
+                lightbringerButtonAppearInCollapsedCallLogItemCount)
+            .setLightbringerButtonAppearInSearchCount(lightbringerButtonAppearInSearchCount);
+    lightbringerButtonAppearInExpandedCallLogItemCount = 0;
+    lightbringerButtonAppearInCollapsedCallLogItemCount = 0;
+    lightbringerButtonAppearInSearchCount = 0;
+
+    if (PerformanceReport.isRecording()) {
+      builder
+          .setTimeSinceAppLaunch(PerformanceReport.getTimeSinceAppLaunch())
+          .setTimeSinceFirstClick(PerformanceReport.getTimeSinceFirstClick())
+          .addAllUiActionsSinceAppLaunch(PerformanceReport.getActions())
+          .addAllUiActionTimestampsSinceAppLaunch(PerformanceReport.getActionTimestamps())
+          .build();
+      PerformanceReport.stopRecording();
+    }
+
+    this.callSpecificAppData = builder.build();
   }
 
   public CallIntentBuilder(@NonNull Uri uri, CallInitiationType.Type callInitiationType) {
@@ -104,4 +133,31 @@
         CallSpecificAppData.newBuilder().setCallInitiationType(callInitiationType).build();
     return callSpecificAppData;
   }
+
+  public static void increaseLightbringerCallButtonAppearInExpandedCallLogItemCount() {
+    CallIntentBuilder.lightbringerButtonAppearInExpandedCallLogItemCount++;
+  }
+
+  public static void increaseLightbringerCallButtonAppearInCollapsedCallLogItemCount() {
+    CallIntentBuilder.lightbringerButtonAppearInCollapsedCallLogItemCount++;
+  }
+
+  public static void increaseLightbringerCallButtonAppearInSearchCount() {
+    CallIntentBuilder.lightbringerButtonAppearInSearchCount++;
+  }
+
+  @VisibleForTesting
+  public static int getLightbringerButtonAppearInExpandedCallLogItemCount() {
+    return lightbringerButtonAppearInExpandedCallLogItemCount;
+  }
+
+  @VisibleForTesting
+  public static int getLightbringerButtonAppearInCollapsedCallLogItemCount() {
+    return lightbringerButtonAppearInCollapsedCallLogItemCount;
+  }
+
+  @VisibleForTesting
+  public static int getLightbringerButtonAppearInSearchCount() {
+    return lightbringerButtonAppearInSearchCount;
+  }
 }
diff --git a/java/com/android/dialer/callintent/call_initiation_type.proto b/java/com/android/dialer/callintent/call_initiation_type.proto
index 994399f..318da9c 100644
--- a/java/com/android/dialer/callintent/call_initiation_type.proto
+++ b/java/com/android/dialer/callintent/call_initiation_type.proto
@@ -4,6 +4,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 package com.android.dialer.callintent;
 
 
@@ -56,5 +57,7 @@
     MISSED_CALL_NOTIFICATION = 15;
 
     CALL_SUBJECT_DIALOG = 16;
+
+    IMS_VIDEO_BLOCKED_FALLBACK_TO_VOICE = 17;
   }
 }
diff --git a/java/com/android/dialer/callintent/call_specific_app_data.proto b/java/com/android/dialer/callintent/call_specific_app_data.proto
index 20ffc1f..82547fa 100644
--- a/java/com/android/dialer/callintent/call_specific_app_data.proto
+++ b/java/com/android/dialer/callintent/call_specific_app_data.proto
@@ -4,17 +4,41 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 package com.android.dialer.callintent;
 
 import "java/com/android/dialer/callintent/call_initiation_type.proto";
+import "java/com/android/dialer/callintent/speed_dial_contact_type.proto";
+import "java/com/android/dialer/logging/ui_action.proto";
 
 // Miscellaneous data that's included in a new outgoing call initiated by
 // Dialer. The system will pass this data to the InCallUi which can use it
 // for logging or for something else.
+// Next tag: 14
 message CallSpecificAppData {
   optional CallInitiationType.Type call_initiation_type = 1;
 
   optional int32 position_of_selected_search_result = 2;
 
   optional int32 characters_in_search_string = 3;
+
+  repeated SpeedDialContactType.Type speed_dial_contact_type = 4;
+  optional int32 speed_dial_contact_position = 5;
+
+  optional int64 time_since_app_launch = 6;
+  optional int64 time_since_first_click = 7;
+  // The following two list should be of the same length
+  // (adding another message is not allowed here)
+  repeated com.android.dialer.logging.UiAction.Type
+      ui_actions_since_app_launch = 8;
+  repeated int64 ui_action_timestamps_since_app_launch = 9;
+
+  optional int32 starting_tab_index = 10;
+
+  // For recording the appearance of video call button
+  optional int32 lightbringer_button_appear_in_expanded_call_log_item_count =
+      11;
+  optional int32 lightbringer_button_appear_in_collapsed_call_log_item_count =
+      12;
+  optional int32 lightbringer_button_appear_in_search_count = 13;
 }
diff --git a/java/com/android/dialer/callintent/speed_dial_contact_type.proto b/java/com/android/dialer/callintent/speed_dial_contact_type.proto
new file mode 100644
index 0000000..588eadf
--- /dev/null
+++ b/java/com/android/dialer/callintent/speed_dial_contact_type.proto
@@ -0,0 +1,20 @@
+syntax = "proto2";
+
+option java_package = "com.android.dialer.callintent";
+option java_multiple_files = true;
+option optimize_for = LITE_RUNTIME;
+
+
+package com.android.dialer.callintent;
+
+
+// The type of speed call contact (favorites). Applies to initiation type
+// SPEED_DIAL only.
+message SpeedDialContactType {
+  enum Type {
+    UNDEFINED = 0;
+    PINNED_CONTACT = 1;
+    STARRED_CONTACT = 2;
+    FREQUENT_CONTACT = 3;
+  }
+}
diff --git a/java/com/android/dialer/calllog/CallLogComponent.java b/java/com/android/dialer/calllog/CallLogComponent.java
index 5cdd2b4..c7db2a1 100644
--- a/java/com/android/dialer/calllog/CallLogComponent.java
+++ b/java/com/android/dialer/calllog/CallLogComponent.java
@@ -25,6 +25,8 @@
 
   public abstract CallLogFramework callLogFramework();
 
+  public abstract RefreshAnnotatedCallLogWorker getRefreshAnnotatedCallLogWorker();
+
   public static CallLogComponent get(Context context) {
     return ((HasComponent) ((HasRootComponent) context.getApplicationContext()).component())
         .callLogComponent();
diff --git a/java/com/android/dialer/calllog/CallLogFramework.java b/java/com/android/dialer/calllog/CallLogFramework.java
index 508413b..d3a2c63 100644
--- a/java/com/android/dialer/calllog/CallLogFramework.java
+++ b/java/com/android/dialer/calllog/CallLogFramework.java
@@ -22,9 +22,10 @@
 import android.support.annotation.MainThread;
 import android.support.annotation.Nullable;
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.DataSources;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import javax.inject.Inject;
 import javax.inject.Singleton;
 
@@ -38,7 +39,6 @@
 public final class CallLogFramework implements CallLogDataSource.ContentObserverCallbacks {
 
   static final String PREF_FORCE_REBUILD = "callLogFrameworkForceRebuild";
-  static final String PREF_LAST_REBUILD_TIMESTAMP_MILLIS = "callLogFrameworkLastRebuild";
 
   private final DataSources dataSources;
 
@@ -58,6 +58,7 @@
     LogUtil.enterBlock("CallLogFramework.registerContentObservers");
 
     if (!isNewCallLogEnabled(appContext)) {
+      LogUtil.i("CallLogFramework.registerContentObservers", "new call log not enabled");
       return;
     }
 
diff --git a/java/com/android/dialer/calllog/CallLogModule.java b/java/com/android/dialer/calllog/CallLogModule.java
index d7473a7..2f2f16d 100644
--- a/java/com/android/dialer/calllog/CallLogModule.java
+++ b/java/com/android/dialer/calllog/CallLogModule.java
@@ -17,11 +17,9 @@
 package com.android.dialer.calllog;
 
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.DataSources;
 import com.android.dialer.calllog.datasources.contacts.ContactsDataSource;
 import com.android.dialer.calllog.datasources.systemcalllog.SystemCallLogDataSource;
-import com.android.dialer.common.concurrent.DefaultDialerExecutorFactory;
-import com.android.dialer.common.concurrent.DialerExecutorFactory;
-import dagger.Binds;
 import dagger.Module;
 import dagger.Provides;
 import java.util.Arrays;
@@ -32,10 +30,6 @@
 @Module
 public abstract class CallLogModule {
 
-  @Binds
-  abstract DialerExecutorFactory bindDialerExecutorFactory(
-      DefaultDialerExecutorFactory defaultDialerExecutorFactory);
-
   @Provides
   static DataSources provideCallLogDataSources(
       SystemCallLogDataSource systemCallLogDataSource, ContactsDataSource contactsDataSource) {
diff --git a/java/com/android/dialer/calllog/DataSources.java b/java/com/android/dialer/calllog/DataSources.java
deleted file mode 100644
index 21d1901..0000000
--- a/java/com/android/dialer/calllog/DataSources.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (C) 2017 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.dialer.calllog;
-
-import com.android.dialer.calllog.datasources.CallLogDataSource;
-import com.android.dialer.calllog.datasources.systemcalllog.SystemCallLogDataSource;
-import java.util.List;
-
-/** Immutable lists of data sources used to populate the annotated call log. */
-interface DataSources {
-
-  SystemCallLogDataSource getSystemCallLogDataSource();
-
-  List<CallLogDataSource> getDataSourcesIncludingSystemCallLog();
-
-  List<CallLogDataSource> getDataSourcesExcludingSystemCallLog();
-}
diff --git a/java/com/android/dialer/calllog/RefreshAnnotatedCallLogWorker.java b/java/com/android/dialer/calllog/RefreshAnnotatedCallLogWorker.java
index f9f0c99..2732466 100644
--- a/java/com/android/dialer/calllog/RefreshAnnotatedCallLogWorker.java
+++ b/java/com/android/dialer/calllog/RefreshAnnotatedCallLogWorker.java
@@ -18,91 +18,84 @@
 
 import android.annotation.TargetApi;
 import android.content.Context;
+import android.content.OperationApplicationException;
 import android.content.SharedPreferences;
-import android.database.sqlite.SQLiteDatabase;
 import android.os.Build;
+import android.os.RemoteException;
 import android.preference.PreferenceManager;
 import android.support.annotation.WorkerThread;
-import com.android.dialer.calllog.database.AnnotatedCallLog;
-import com.android.dialer.calllog.database.CallLogMutations;
+import com.android.dialer.calllog.database.CallLogDatabaseComponent;
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.CallLogMutations;
+import com.android.dialer.calllog.datasources.DataSources;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import com.android.dialer.inject.ApplicationContext;
 import javax.inject.Inject;
 
 /**
  * Worker which brings the annotated call log up to date, if necessary.
  *
- * <p>Accepts a boolean which indicates if the dirty check should be skipped, and returns true if
- * the annotated call log was updated.
+ * <p>Accepts a boolean which indicates if the dirty check should be skipped.
  */
-public class RefreshAnnotatedCallLogWorker implements Worker<Boolean, Boolean> {
+public class RefreshAnnotatedCallLogWorker implements Worker<Boolean, Void> {
 
   private final Context appContext;
   private final DataSources dataSources;
 
   @Inject
-  public RefreshAnnotatedCallLogWorker(Context appContext, DataSources dataSources) {
+  RefreshAnnotatedCallLogWorker(@ApplicationContext Context appContext, DataSources dataSources) {
     this.appContext = appContext;
     this.dataSources = dataSources;
   }
 
   @Override
-  public Boolean doInBackground(Boolean skipDirtyCheck) {
-    LogUtil.enterBlock("RefreshAnnotatedCallLogWorker.doInBackgroundFallible");
+  public Void doInBackground(Boolean skipDirtyCheck)
+      throws RemoteException, OperationApplicationException {
+    LogUtil.enterBlock("RefreshAnnotatedCallLogWorker.doInBackground");
 
     long startTime = System.currentTimeMillis();
-    boolean annotatedCallLogUpdated = checkDirtyAndRebuildIfNecessary(appContext, skipDirtyCheck);
+    checkDirtyAndRebuildIfNecessary(appContext, skipDirtyCheck);
     LogUtil.i(
-        "RefreshAnnotatedCallLogWorker.doInBackgroundFallible",
-        "updated? %s, took %dms",
-        annotatedCallLogUpdated,
+        "RefreshAnnotatedCallLogWorker.doInBackground",
+        "took %dms",
         System.currentTimeMillis() - startTime);
-    return annotatedCallLogUpdated;
+    return null;
   }
 
   @WorkerThread
-  private boolean checkDirtyAndRebuildIfNecessary(Context appContext, boolean skipDirtyCheck) {
+  private void checkDirtyAndRebuildIfNecessary(Context appContext, boolean skipDirtyCheck)
+      throws RemoteException, OperationApplicationException {
     Assert.isWorkerThread();
 
     long startTime = System.currentTimeMillis();
 
     SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(appContext);
-    long lastRebuildTimeMillis =
-        sharedPreferences.getLong(CallLogFramework.PREF_LAST_REBUILD_TIMESTAMP_MILLIS, 0);
-    if (lastRebuildTimeMillis == 0) {
-      LogUtil.i(
-          "RefreshAnnotatedCallLogWorker.checkDirtyAndRebuildIfNecessary",
-          "annotated call log has never been built, marking it dirty");
-    }
+    // Default to true. If the pref doesn't exist, the annotated call log hasn't been created and
+    // we just skip isDirty checks and force a rebuild.
     boolean forceRebuildPrefValue =
-        sharedPreferences.getBoolean(CallLogFramework.PREF_FORCE_REBUILD, false);
+        sharedPreferences.getBoolean(CallLogFramework.PREF_FORCE_REBUILD, true);
     if (forceRebuildPrefValue) {
       LogUtil.i(
           "RefreshAnnotatedCallLogWorker.checkDirtyAndRebuildIfNecessary",
-          "call log has been marked dirty");
+          "annotated call log has been marked dirty or does not exist");
     }
 
-    boolean isDirty =
-        lastRebuildTimeMillis == 0
-            || skipDirtyCheck
-            || forceRebuildPrefValue
-            || isDirty(appContext);
+    boolean isDirty = skipDirtyCheck || forceRebuildPrefValue || isDirty(appContext);
+
     LogUtil.i(
         "RefreshAnnotatedCallLogWorker.checkDirtyAndRebuildIfNecessary",
         "isDirty took: %dms",
         System.currentTimeMillis() - startTime);
     if (isDirty) {
       startTime = System.currentTimeMillis();
-      rebuild(appContext, lastRebuildTimeMillis);
+      rebuild(appContext);
       LogUtil.i(
           "RefreshAnnotatedCallLogWorker.checkDirtyAndRebuildIfNecessary",
           "rebuild took: %dms",
           System.currentTimeMillis() - startTime);
-      return true; // Annotated call log was updated.
     }
-    return false; // Annotated call log was not updated.
   }
 
   @WorkerThread
@@ -129,52 +122,58 @@
 
   @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
   @WorkerThread
-  private void rebuild(Context appContext, long lastRebuildTimeMillis) {
+  private void rebuild(Context appContext) throws RemoteException, OperationApplicationException {
     Assert.isWorkerThread();
 
-    // TODO: Start a transaction?
-    try (SQLiteDatabase database = AnnotatedCallLog.getWritableDatabase(appContext)) {
+    CallLogMutations mutations = new CallLogMutations();
 
-      CallLogMutations mutations = new CallLogMutations();
+    // System call log data source must go first!
+    CallLogDataSource systemCallLogDataSource = dataSources.getSystemCallLogDataSource();
+    String dataSourceName = getName(systemCallLogDataSource);
+    LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "filling %s", dataSourceName);
+    long startTime = System.currentTimeMillis();
+    systemCallLogDataSource.fill(appContext, mutations);
+    LogUtil.i(
+        "RefreshAnnotatedCallLogWorker.rebuild",
+        "%s.fill took: %dms",
+        dataSourceName,
+        System.currentTimeMillis() - startTime);
 
-      // System call log data source must go first!
-      CallLogDataSource systemCallLogDataSource = dataSources.getSystemCallLogDataSource();
-      String dataSourceName = getName(systemCallLogDataSource);
+    for (CallLogDataSource dataSource : dataSources.getDataSourcesExcludingSystemCallLog()) {
+      dataSourceName = getName(dataSource);
       LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "filling %s", dataSourceName);
-      long startTime = System.currentTimeMillis();
-      systemCallLogDataSource.fill(appContext, database, lastRebuildTimeMillis, mutations);
+      startTime = System.currentTimeMillis();
+      dataSource.fill(appContext, mutations);
       LogUtil.i(
-          "RefreshAnnotatedCallLogWorker.rebuild",
+          "CallLogFramework.rebuild",
           "%s.fill took: %dms",
           dataSourceName,
           System.currentTimeMillis() - startTime);
+    }
+    LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "applying mutations to database");
+    startTime = System.currentTimeMillis();
+    CallLogDatabaseComponent.get(appContext)
+        .mutationApplier()
+        .applyToDatabase(mutations, appContext);
+    LogUtil.i(
+        "RefreshAnnotatedCallLogWorker.rebuild",
+        "applyToDatabase took: %dms",
+        System.currentTimeMillis() - startTime);
 
-      for (CallLogDataSource dataSource : dataSources.getDataSourcesExcludingSystemCallLog()) {
-        dataSourceName = getName(dataSource);
-        LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "filling %s", dataSourceName);
-        startTime = System.currentTimeMillis();
-        dataSource.fill(appContext, database, lastRebuildTimeMillis, mutations);
-        LogUtil.i(
-            "CallLogFramework.rebuild",
-            "%s.fill took: %dms",
-            dataSourceName,
-            System.currentTimeMillis() - startTime);
-      }
-      LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "applying mutations to database");
+    for (CallLogDataSource dataSource : dataSources.getDataSourcesIncludingSystemCallLog()) {
+      dataSourceName = getName(dataSource);
+      LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "onSuccessfulFill'ing %s", dataSourceName);
       startTime = System.currentTimeMillis();
-      mutations.applyToDatabase(database);
+      dataSource.onSuccessfulFill(appContext);
       LogUtil.i(
-          "RefreshAnnotatedCallLogWorker.rebuild",
-          "applyToDatabase took: %dms",
+          "CallLogFramework.rebuild",
+          "%s.onSuccessfulFill took: %dms",
+          dataSourceName,
           System.currentTimeMillis() - startTime);
     }
 
     SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(appContext);
-    sharedPreferences
-        .edit()
-        .putBoolean(CallLogFramework.PREF_FORCE_REBUILD, false)
-        .putLong(CallLogFramework.PREF_LAST_REBUILD_TIMESTAMP_MILLIS, System.currentTimeMillis())
-        .commit();
+    sharedPreferences.edit().putBoolean(CallLogFramework.PREF_FORCE_REBUILD, false).apply();
   }
 
   private static String getName(CallLogDataSource dataSource) {
diff --git a/java/com/android/dialer/calllog/database/AndroidManifest.xml b/java/com/android/dialer/calllog/database/AndroidManifest.xml
new file mode 100644
index 0000000..396a6d9
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/AndroidManifest.xml
@@ -0,0 +1,28 @@
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialer.calllog.database">
+
+  <application>
+
+    <provider
+        android:authorities="com.android.dialer.annotatedcalllog"
+        android:exported="false"
+        android:multiprocess="false"
+        android:name=".AnnotatedCallLogContentProvider"/>
+
+  </application>
+</manifest>
diff --git a/java/com/android/dialer/calllog/database/AnnotatedCallLog.java b/java/com/android/dialer/calllog/database/AnnotatedCallLog.java
deleted file mode 100644
index 7dca44a..0000000
--- a/java/com/android/dialer/calllog/database/AnnotatedCallLog.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright (C) 2017 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.dialer.calllog.database;
-
-import android.content.Context;
-import android.database.sqlite.SQLiteDatabase;
-import android.support.annotation.WorkerThread;
-import com.android.dialer.common.Assert;
-
-/** Static methods and constants for interacting with the annotated call log table. */
-public final class AnnotatedCallLog {
-
-  private static final String DATABASE_NAME = "annotated_call_log.db";
-
-  public static final String TABLE_NAME = "AnnotatedCallLog";
-
-  /** Column names for the annotated call log table. */
-  public static final class Columns {
-    public static final String ID = "_id";
-    public static final String TIMESTAMP = "timestamp";
-    public static final String CONTACT_NAME = "contact_name";
-  }
-
-  private AnnotatedCallLog() {}
-
-  @WorkerThread
-  public static SQLiteDatabase getWritableDatabase(Context appContext) {
-    Assert.isWorkerThread();
-
-    return new AnnotatedCallLogDatabaseHelper(appContext, DATABASE_NAME).getWritableDatabase();
-  }
-
-  @WorkerThread
-  public static SQLiteDatabase getReadableDatabase(Context appContext) {
-    Assert.isWorkerThread();
-
-    return new AnnotatedCallLogDatabaseHelper(appContext, DATABASE_NAME).getReadableDatabase();
-  }
-}
diff --git a/java/com/android/dialer/calllog/database/AnnotatedCallLogContentProvider.java b/java/com/android/dialer/calllog/database/AnnotatedCallLogContentProvider.java
new file mode 100644
index 0000000..30aa2bf
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/AnnotatedCallLogContentProvider.java
@@ -0,0 +1,331 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.database;
+
+import android.annotation.TargetApi;
+import android.content.ContentProvider;
+import android.content.ContentProviderOperation;
+import android.content.ContentProviderResult;
+import android.content.ContentUris;
+import android.content.ContentValues;
+import android.content.OperationApplicationException;
+import android.content.UriMatcher;
+import android.database.Cursor;
+import android.database.sqlite.SQLiteDatabase;
+import android.database.sqlite.SQLiteQueryBuilder;
+import android.net.Uri;
+import android.os.Build;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import java.util.ArrayList;
+
+/** {@link ContentProvider} for the annotated call log. */
+public class AnnotatedCallLogContentProvider extends ContentProvider {
+
+  /**
+   * We sometimes run queries where we potentially pass every ID into a where clause using the
+   * (?,?,?,...) syntax. The maximum number of host parameters is 999, so that's the maximum size
+   * this table can be. See https://www.sqlite.org/limits.html for more details.
+   */
+  private static final int MAX_ROWS = 999;
+
+  private static final int ANNOTATED_CALL_LOG_TABLE_CODE = 1;
+  private static final int ANNOTATED_CALL_LOG_TABLE_ID_CODE = 2;
+  private static final int COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE = 3;
+
+  private static final UriMatcher uriMatcher = new UriMatcher(UriMatcher.NO_MATCH);
+
+  static {
+    uriMatcher.addURI(
+        AnnotatedCallLogContract.AUTHORITY, AnnotatedCallLog.TABLE, ANNOTATED_CALL_LOG_TABLE_CODE);
+    uriMatcher.addURI(
+        AnnotatedCallLogContract.AUTHORITY,
+        AnnotatedCallLog.TABLE + "/#",
+        ANNOTATED_CALL_LOG_TABLE_ID_CODE);
+    uriMatcher.addURI(
+        AnnotatedCallLogContract.AUTHORITY,
+        CoalescedAnnotatedCallLog.TABLE,
+        COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE);
+  }
+
+  private AnnotatedCallLogDatabaseHelper databaseHelper;
+  private Coalescer coalescer;
+
+  private final ThreadLocal<Boolean> applyingBatch = new ThreadLocal<>();
+
+  /** Ensures that only a single notification is generated from {@link #applyBatch(ArrayList)}. */
+  private boolean isApplyingBatch() {
+    return applyingBatch.get() != null && applyingBatch.get();
+  }
+
+  @Override
+  public boolean onCreate() {
+    databaseHelper = new AnnotatedCallLogDatabaseHelper(getContext(), MAX_ROWS);
+    coalescer = CallLogDatabaseComponent.get(getContext()).coalescer();
+    return true;
+  }
+
+  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
+  @Nullable
+  @Override
+  public Cursor query(
+      @NonNull Uri uri,
+      @Nullable String[] projection,
+      @Nullable String selection,
+      @Nullable String[] selectionArgs,
+      @Nullable String sortOrder) {
+    SQLiteDatabase db = databaseHelper.getReadableDatabase();
+    SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
+    queryBuilder.setTables(AnnotatedCallLog.TABLE);
+    int match = uriMatcher.match(uri);
+    switch (match) {
+      case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+        queryBuilder.appendWhere(AnnotatedCallLog._ID + "=" + ContentUris.parseId(uri));
+        // fall through
+      case ANNOTATED_CALL_LOG_TABLE_CODE:
+        Cursor cursor =
+            queryBuilder.query(db, projection, selection, selectionArgs, null, null, sortOrder);
+        if (cursor != null) {
+          cursor.setNotificationUri(
+              getContext().getContentResolver(), AnnotatedCallLog.CONTENT_URI);
+        } else {
+          LogUtil.w("AnnotatedCallLogContentProvider.query", "cursor was null");
+        }
+        return cursor;
+      case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+        Assert.checkArgument(projection == null, "projection not supported for coalesced call log");
+        Assert.checkArgument(selection == null, "selection not supported for coalesced call log");
+        Assert.checkArgument(
+            selectionArgs == null, "selection args not supported for coalesced call log");
+        Assert.checkArgument(sortOrder == null, "sort order not supported for coalesced call log");
+        try (Cursor allAnnotatedCallLogRows =
+            queryBuilder.query(
+                db, null, null, null, null, null, AnnotatedCallLog.TIMESTAMP + " DESC")) {
+          Cursor coalescedRows = coalescer.coalesce(allAnnotatedCallLogRows);
+          coalescedRows.setNotificationUri(
+              getContext().getContentResolver(), CoalescedAnnotatedCallLog.CONTENT_URI);
+          return coalescedRows;
+        }
+      default:
+        throw new IllegalArgumentException("Unknown uri: " + uri);
+    }
+  }
+
+  @Nullable
+  @Override
+  public String getType(@NonNull Uri uri) {
+    return AnnotatedCallLog.CONTENT_ITEM_TYPE;
+  }
+
+  @Nullable
+  @Override
+  public Uri insert(@NonNull Uri uri, @Nullable ContentValues values) {
+    // Javadoc states values is not nullable, even though it is annotated as such (b/38123194)!
+    Assert.checkArgument(values != null);
+
+    SQLiteDatabase database = databaseHelper.getWritableDatabase();
+    int match = uriMatcher.match(uri);
+    switch (match) {
+      case ANNOTATED_CALL_LOG_TABLE_CODE:
+        Assert.checkArgument(
+            values.get(AnnotatedCallLog._ID) != null, "You must specify an _ID when inserting");
+        break;
+      case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+        Long idFromUri = ContentUris.parseId(uri);
+        Long idFromValues = values.getAsLong(AnnotatedCallLog._ID);
+        Assert.checkArgument(
+            idFromValues == null || idFromValues.equals(idFromUri),
+            "_ID from values %d does not match ID from URI: %s",
+            idFromValues,
+            uri);
+        if (idFromValues == null) {
+          values.put(AnnotatedCallLog._ID, idFromUri);
+        }
+        break;
+      case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+        throw new UnsupportedOperationException("coalesced call log does not support inserting");
+      default:
+        throw new IllegalArgumentException("Unknown uri: " + uri);
+    }
+    long id = database.insert(AnnotatedCallLog.TABLE, null, values);
+    if (id < 0) {
+      LogUtil.w(
+          "AnnotatedCallLogContentProvider.insert",
+          "error inserting row with id: %d",
+          values.get(AnnotatedCallLog._ID));
+      return null;
+    }
+    Uri insertedUri = ContentUris.withAppendedId(AnnotatedCallLog.CONTENT_URI, id);
+    if (!isApplyingBatch()) {
+      notifyChange(insertedUri);
+    }
+    return insertedUri;
+  }
+
+  @Override
+  public int delete(
+      @NonNull Uri uri, @Nullable String selection, @Nullable String[] selectionArgs) {
+    SQLiteDatabase database = databaseHelper.getWritableDatabase();
+    final int match = uriMatcher.match(uri);
+    switch (match) {
+      case ANNOTATED_CALL_LOG_TABLE_CODE:
+        break;
+      case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+        Assert.checkArgument(selection == null, "Do not specify selection when deleting by ID");
+        Assert.checkArgument(
+            selectionArgs == null, "Do not specify selection args when deleting by ID");
+        long id = ContentUris.parseId(uri);
+        Assert.checkArgument(id != -1, "error parsing id from uri %s", uri);
+        selection = getSelectionWithId(id);
+        break;
+      case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+        throw new UnsupportedOperationException("coalesced call log does not support deleting");
+      default:
+        throw new IllegalArgumentException("Unknown uri: " + uri);
+    }
+    int rows = database.delete(AnnotatedCallLog.TABLE, selection, selectionArgs);
+    if (rows > 0) {
+      if (!isApplyingBatch()) {
+        notifyChange(uri);
+      }
+    } else {
+      LogUtil.w("AnnotatedCallLogContentProvider.delete", "no rows deleted");
+    }
+    return rows;
+  }
+
+  @Override
+  public int update(
+      @NonNull Uri uri,
+      @Nullable ContentValues values,
+      @Nullable String selection,
+      @Nullable String[] selectionArgs) {
+    // Javadoc states values is not nullable, even though it is annotated as such (b/38123194)!
+    Assert.checkArgument(values != null);
+
+    SQLiteDatabase database = databaseHelper.getWritableDatabase();
+    int match = uriMatcher.match(uri);
+    switch (match) {
+      case ANNOTATED_CALL_LOG_TABLE_CODE:
+        break;
+      case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+        Assert.checkArgument(
+            !values.containsKey(AnnotatedCallLog._ID), "Do not specify _ID when updating by ID");
+        Assert.checkArgument(selection == null, "Do not specify selection when updating by ID");
+        Assert.checkArgument(
+            selectionArgs == null, "Do not specify selection args when updating by ID");
+        selection = getSelectionWithId(ContentUris.parseId(uri));
+        break;
+      case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+        throw new UnsupportedOperationException("coalesced call log does not support updating");
+      default:
+        throw new IllegalArgumentException("Unknown uri: " + uri);
+    }
+    int rows = database.update(AnnotatedCallLog.TABLE, values, selection, selectionArgs);
+    if (rows > 0) {
+      if (!isApplyingBatch()) {
+        notifyChange(uri);
+      }
+    } else {
+      LogUtil.w("AnnotatedCallLogContentProvider.update", "no rows updated");
+    }
+    return rows;
+  }
+
+  /**
+   * {@inheritDoc}
+   *
+   * <p>Note: When applyBatch is used with the AnnotatedCallLog, only a single notification for the
+   * content URI is generated, not individual notifications for each affected URI.
+   */
+  @NonNull
+  @Override
+  public ContentProviderResult[] applyBatch(@NonNull ArrayList<ContentProviderOperation> operations)
+      throws OperationApplicationException {
+    ContentProviderResult[] results = new ContentProviderResult[operations.size()];
+    if (operations.isEmpty()) {
+      return results;
+    }
+
+    SQLiteDatabase database = databaseHelper.getWritableDatabase();
+    try {
+      applyingBatch.set(true);
+      database.beginTransaction();
+      for (int i = 0; i < operations.size(); i++) {
+        ContentProviderOperation operation = operations.get(i);
+        int match = uriMatcher.match(operation.getUri());
+        switch (match) {
+          case ANNOTATED_CALL_LOG_TABLE_CODE:
+          case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+            // These are allowed values, continue.
+            break;
+          case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+            throw new UnsupportedOperationException(
+                "coalesced call log does not support applyBatch");
+          default:
+            throw new IllegalArgumentException("Unknown uri: " + operation.getUri());
+        }
+        ContentProviderResult result = operation.apply(this, results, i);
+        if (operations.get(i).isInsert()) {
+          if (result.uri == null) {
+            throw new OperationApplicationException("error inserting row");
+          }
+        } else if (result.count == 0) {
+          /*
+           * The batches built by MutationApplier happen to contain operations in order of:
+           *
+           * 1. Inserts
+           * 2. Updates
+           * 3. Deletes
+           *
+           * Let's say the last row in the table is row Z, and MutationApplier wishes to update it,
+           * as well as insert row A. When row A gets inserted, row Z will be deleted via the
+           * trigger if the table is full. Then later, when we try to process the update for row Z,
+           * it won't exist.
+           */
+          LogUtil.w(
+              "AnnotatedCallLogContentProvider.applyBatch",
+              "update or delete failed, possibly because row got cleaned up");
+        }
+        results[i] = result;
+      }
+      database.setTransactionSuccessful();
+    } finally {
+      applyingBatch.set(false);
+      database.endTransaction();
+    }
+    notifyChange(AnnotatedCallLog.CONTENT_URI);
+    return results;
+  }
+
+  private String getSelectionWithId(long id) {
+    return AnnotatedCallLog._ID + "=" + id;
+  }
+
+  private void notifyChange(Uri uri) {
+    getContext().getContentResolver().notifyChange(uri, null);
+    // Any time the annotated call log changes, we need to also notify observers of the
+    // CoalescedAnnotatedCallLog, since that is just a massaged in-memory view of the real annotated
+    // call log table.
+    getContext().getContentResolver().notifyChange(CoalescedAnnotatedCallLog.CONTENT_URI, null);
+  }
+}
diff --git a/java/com/android/dialer/calllog/database/AnnotatedCallLogDatabaseHelper.java b/java/com/android/dialer/calllog/database/AnnotatedCallLogDatabaseHelper.java
index 7b28e55..887dfcb 100644
--- a/java/com/android/dialer/calllog/database/AnnotatedCallLogDatabaseHelper.java
+++ b/java/com/android/dialer/calllog/database/AnnotatedCallLogDatabaseHelper.java
@@ -16,36 +16,58 @@
 
 package com.android.dialer.calllog.database;
 
-import static com.android.dialer.calllog.database.AnnotatedCallLog.Columns.CONTACT_NAME;
-import static com.android.dialer.calllog.database.AnnotatedCallLog.Columns.ID;
-import static com.android.dialer.calllog.database.AnnotatedCallLog.Columns.TIMESTAMP;
-
 import android.content.Context;
 import android.database.sqlite.SQLiteDatabase;
 import android.database.sqlite.SQLiteOpenHelper;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
 import com.android.dialer.common.LogUtil;
+import java.util.Locale;
 
 /** {@link SQLiteOpenHelper} for the AnnotatedCallLog database. */
 class AnnotatedCallLogDatabaseHelper extends SQLiteOpenHelper {
+  private final int maxRows;
 
-  AnnotatedCallLogDatabaseHelper(Context appContext, String databaseName) {
-    super(appContext, databaseName, null, 1);
+  AnnotatedCallLogDatabaseHelper(Context appContext, int maxRows) {
+    super(appContext, "annotated_call_log.db", null, 1);
+    this.maxRows = maxRows;
   }
 
-  private static final String CREATE_SQL =
+  private static final String CREATE_TABLE_SQL =
       new StringBuilder()
-          .append("create table if not exists " + AnnotatedCallLog.TABLE_NAME + " (")
-          .append(ID + " integer primary key, ")
-          .append(TIMESTAMP + " integer, ")
-          .append(CONTACT_NAME + " string")
+          .append("create table if not exists " + AnnotatedCallLog.TABLE + " (")
+          .append(AnnotatedCallLog._ID + " integer primary key, ")
+          .append(AnnotatedCallLog.TIMESTAMP + " integer, ")
+          .append(AnnotatedCallLog.CONTACT_NAME + " string, ")
+          .append(AnnotatedCallLog.NUMBER + " blob")
           .append(");")
           .toString();
 
+  /** Deletes all but the first maxRows rows (by timestamp) to keep the table a manageable size. */
+  private static final String CREATE_TRIGGER_SQL =
+      "create trigger delete_old_rows after insert on "
+          + AnnotatedCallLog.TABLE
+          + " when (select count(*) from "
+          + AnnotatedCallLog.TABLE
+          + ") > %d"
+          + " begin delete from "
+          + AnnotatedCallLog.TABLE
+          + " where "
+          + AnnotatedCallLog._ID
+          + " in (select "
+          + AnnotatedCallLog._ID
+          + " from "
+          + AnnotatedCallLog.TABLE
+          + " order by timestamp limit (select count(*)-%d"
+          + " from "
+          + AnnotatedCallLog.TABLE
+          + " )); end;";
+
   @Override
   public void onCreate(SQLiteDatabase db) {
     LogUtil.enterBlock("AnnotatedCallLogDatabaseHelper.onCreate");
     long startTime = System.currentTimeMillis();
-    db.execSQL(CREATE_SQL);
+    db.execSQL(CREATE_TABLE_SQL);
+    db.execSQL(String.format(Locale.US, CREATE_TRIGGER_SQL, maxRows, maxRows));
     // TODO: Consider logging impression.
     LogUtil.i(
         "AnnotatedCallLogDatabaseHelper.onCreate",
diff --git a/java/com/android/dialer/calllog/database/CallLogDatabaseComponent.java b/java/com/android/dialer/calllog/database/CallLogDatabaseComponent.java
new file mode 100644
index 0000000..ede4691
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/CallLogDatabaseComponent.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.database;
+
+import android.content.Context;
+import com.android.dialer.inject.HasRootComponent;
+import dagger.Subcomponent;
+
+/** Dagger component for database package. */
+@Subcomponent
+public abstract class CallLogDatabaseComponent {
+
+  public abstract Coalescer coalescer();
+
+  public abstract MutationApplier mutationApplier();
+
+  public static CallLogDatabaseComponent get(Context context) {
+    return ((CallLogDatabaseComponent.HasComponent)
+            ((HasRootComponent) context.getApplicationContext()).component())
+        .callLogDatabaseComponent();
+  }
+
+  /** Used to refer to the root application component. */
+  public interface HasComponent {
+    CallLogDatabaseComponent callLogDatabaseComponent();
+  }
+}
diff --git a/java/com/android/dialer/calllog/database/CallLogMutations.java b/java/com/android/dialer/calllog/database/CallLogMutations.java
deleted file mode 100644
index ec020c6..0000000
--- a/java/com/android/dialer/calllog/database/CallLogMutations.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (C) 2017 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.dialer.calllog.database;
-
-import android.content.ContentValues;
-import android.database.sqlite.SQLiteDatabase;
-import android.support.annotation.WorkerThread;
-import android.util.ArrayMap;
-import android.util.ArraySet;
-import com.android.dialer.common.Assert;
-
-/** A collection of mutations to the annotated call log. */
-public final class CallLogMutations {
-
-  private final ArrayMap<Integer, ContentValues> inserts = new ArrayMap<>();
-  private final ArrayMap<Integer, ContentValues> updates = new ArrayMap<>();
-  private final ArraySet<Integer> deletes = new ArraySet<>();
-
-  /** @param contentValues an entire row not including the ID */
-  public void insert(int id, ContentValues contentValues) {
-    inserts.put(id, contentValues);
-  }
-
-  /** @param contentValues the specific columns to update, not including the ID. */
-  public void update(int id, ContentValues contentValues) {
-    // TODO: Consider merging automatically.
-    updates.put(id, contentValues);
-  }
-
-  public void delete(int id) {
-    deletes.add(id);
-  }
-
-  public boolean isEmpty() {
-    return inserts.isEmpty() && updates.isEmpty() && deletes.isEmpty();
-  }
-
-  @WorkerThread
-  public void applyToDatabase(SQLiteDatabase writableDatabase) {
-    Assert.isWorkerThread();
-
-    // TODO: Implementation.
-  }
-}
diff --git a/java/com/android/dialer/calllog/database/Coalescer.java b/java/com/android/dialer/calllog/database/Coalescer.java
new file mode 100644
index 0000000..5683687
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/Coalescer.java
@@ -0,0 +1,180 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.database;
+
+import android.content.ContentValues;
+import android.database.Cursor;
+import android.database.MatrixCursor;
+import android.support.annotation.NonNull;
+import android.support.annotation.WorkerThread;
+import com.android.dialer.DialerPhoneNumber;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
+import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.DataSources;
+import com.android.dialer.common.Assert;
+import com.android.dialer.phonenumberproto.DialerPhoneNumberUtil;
+import com.google.i18n.phonenumbers.PhoneNumberUtil;
+import com.google.protobuf.InvalidProtocolBufferException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import javax.inject.Inject;
+
+/**
+ * Coalesces call log rows by combining some adjacent rows.
+ *
+ * <p>Applies the business which logic which determines which adjacent rows should be coalasced, and
+ * then delegates to each data source to determine how individual columns should be aggregated.
+ */
+public class Coalescer {
+
+  private final DataSources dataSources;
+
+  @Inject
+  Coalescer(DataSources dataSources) {
+    this.dataSources = dataSources;
+  }
+
+  /**
+   * Reads the entire {@link AnnotatedCallLog} database into memory from the provided {@code
+   * allAnnotatedCallLog} parameter and then builds and returns a new {@link MatrixCursor} which is
+   * the result of combining adjacent rows which should be collapsed for display purposes.
+   *
+   * @param allAnnotatedCallLogRowsSortedByTimestampDesc all {@link AnnotatedCallLog} rows, sorted
+   *     by timestamp descending
+   * @return a new {@link MatrixCursor} containing the {@link CoalescedAnnotatedCallLog} rows to
+   *     display
+   */
+  @WorkerThread
+  @NonNull
+  Cursor coalesce(@NonNull Cursor allAnnotatedCallLogRowsSortedByTimestampDesc) {
+    Assert.isWorkerThread();
+
+    // Note: This method relies on rowsShouldBeCombined to determine which rows should be combined,
+    // but delegates to data sources to actually aggregate column values.
+
+    DialerPhoneNumberUtil dialerPhoneNumberUtil =
+        new DialerPhoneNumberUtil(PhoneNumberUtil.getInstance());
+
+    MatrixCursor allCoalescedRowsMatrixCursor =
+        new MatrixCursor(
+            CoalescedAnnotatedCallLog.ALL_COLUMNS,
+            Assert.isNotNull(allAnnotatedCallLogRowsSortedByTimestampDesc).getCount());
+
+    if (allAnnotatedCallLogRowsSortedByTimestampDesc.moveToFirst()) {
+      int coalescedRowId = 0;
+
+      List<ContentValues> currentRowGroup = new ArrayList<>();
+
+      do {
+        ContentValues currentRow =
+            cursorRowToContentValues(allAnnotatedCallLogRowsSortedByTimestampDesc);
+
+        if (currentRowGroup.isEmpty()) {
+          currentRowGroup.add(currentRow);
+          continue;
+        }
+
+        ContentValues previousRow = currentRowGroup.get(currentRowGroup.size() - 1);
+
+        if (!rowsShouldBeCombined(dialerPhoneNumberUtil, previousRow, currentRow)) {
+          ContentValues coalescedRow = coalesceRowsForAllDataSources(currentRowGroup);
+          coalescedRow.put(CoalescedAnnotatedCallLog.NUMBER_CALLS, currentRowGroup.size());
+          addContentValuesToMatrixCursor(
+              coalescedRow, allCoalescedRowsMatrixCursor, coalescedRowId++);
+          currentRowGroup.clear();
+        }
+        currentRowGroup.add(currentRow);
+      } while (allAnnotatedCallLogRowsSortedByTimestampDesc.moveToNext());
+
+      // Deal with leftover rows.
+      ContentValues coalescedRow = coalesceRowsForAllDataSources(currentRowGroup);
+      coalescedRow.put(CoalescedAnnotatedCallLog.NUMBER_CALLS, currentRowGroup.size());
+      addContentValuesToMatrixCursor(coalescedRow, allCoalescedRowsMatrixCursor, coalescedRowId);
+    }
+    return allCoalescedRowsMatrixCursor;
+  }
+
+  private static ContentValues cursorRowToContentValues(Cursor cursor) {
+    ContentValues values = new ContentValues();
+    String[] columns = cursor.getColumnNames();
+    int length = columns.length;
+    for (int i = 0; i < length; i++) {
+      if (cursor.getType(i) == Cursor.FIELD_TYPE_BLOB) {
+        values.put(columns[i], cursor.getBlob(i));
+      } else {
+        values.put(columns[i], cursor.getString(i));
+      }
+    }
+    return values;
+  }
+
+  /**
+   * @param row1 a row from {@link AnnotatedCallLog}
+   * @param row2 a row from {@link AnnotatedCallLog}
+   */
+  private static boolean rowsShouldBeCombined(
+      DialerPhoneNumberUtil dialerPhoneNumberUtil, ContentValues row1, ContentValues row2) {
+    // TODO: Real implementation.
+    DialerPhoneNumber number1;
+    DialerPhoneNumber number2;
+    try {
+      number1 = DialerPhoneNumber.parseFrom(row1.getAsByteArray(AnnotatedCallLog.NUMBER));
+      number2 = DialerPhoneNumber.parseFrom(row2.getAsByteArray(AnnotatedCallLog.NUMBER));
+    } catch (InvalidProtocolBufferException e) {
+      throw Assert.createAssertionFailException("error parsing DialerPhoneNumber proto", e);
+    }
+
+    if (!number1.hasDialerInternalPhoneNumber() && !number2.hasDialerInternalPhoneNumber()) {
+      // Empty numbers should not be combined.
+      return false;
+    }
+
+    if (!number1.hasDialerInternalPhoneNumber() || !number2.hasDialerInternalPhoneNumber()) {
+      // An empty number should not be combined with a non-empty number.
+      return false;
+    }
+    return dialerPhoneNumberUtil.isExactMatch(number1, number2);
+  }
+
+  /**
+   * Delegates to data sources to aggregate individual columns to create a new coalesced row.
+   *
+   * @param individualRows {@link AnnotatedCallLog} rows sorted by timestamp descending
+   * @return a {@link CoalescedAnnotatedCallLog} row
+   */
+  private ContentValues coalesceRowsForAllDataSources(List<ContentValues> individualRows) {
+    ContentValues coalescedValues = new ContentValues();
+    for (CallLogDataSource dataSource : dataSources.getDataSourcesIncludingSystemCallLog()) {
+      coalescedValues.putAll(dataSource.coalesce(individualRows));
+    }
+    return coalescedValues;
+  }
+
+  /**
+   * @param contentValues a {@link CoalescedAnnotatedCallLog} row
+   * @param matrixCursor represents {@link CoalescedAnnotatedCallLog}
+   */
+  private static void addContentValuesToMatrixCursor(
+      ContentValues contentValues, MatrixCursor matrixCursor, int rowId) {
+    MatrixCursor.RowBuilder rowBuilder = matrixCursor.newRow();
+    rowBuilder.add(CoalescedAnnotatedCallLog._ID, rowId);
+    for (Map.Entry<String, Object> entry : contentValues.valueSet()) {
+      rowBuilder.add(entry.getKey(), entry.getValue());
+    }
+  }
+}
diff --git a/java/com/android/dialer/calllog/database/MutationApplier.java b/java/com/android/dialer/calllog/database/MutationApplier.java
new file mode 100644
index 0000000..21c8a50
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/MutationApplier.java
@@ -0,0 +1,105 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.database;
+
+import android.content.ContentProviderOperation;
+import android.content.ContentUris;
+import android.content.ContentValues;
+import android.content.Context;
+import android.content.OperationApplicationException;
+import android.os.RemoteException;
+import android.support.annotation.WorkerThread;
+import android.text.TextUtils;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
+import com.android.dialer.calllog.datasources.CallLogMutations;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Map.Entry;
+import javax.inject.Inject;
+
+/** Applies {@link CallLogMutations} to the annotated call log. */
+public class MutationApplier {
+
+  @Inject
+  MutationApplier() {}
+
+  /** Applies the provided {@link CallLogMutations} to the annotated call log. */
+  @WorkerThread
+  public void applyToDatabase(CallLogMutations mutations, Context appContext)
+      throws RemoteException, OperationApplicationException {
+    Assert.isWorkerThread();
+
+    if (mutations.isEmpty()) {
+      return;
+    }
+
+    ArrayList<ContentProviderOperation> operations = new ArrayList<>();
+
+    if (!mutations.getInserts().isEmpty()) {
+      LogUtil.i(
+          "CallLogMutations.applyToDatabase", "inserting %d rows", mutations.getInserts().size());
+      for (Entry<Long, ContentValues> entry : mutations.getInserts().entrySet()) {
+        long id = entry.getKey();
+        ContentValues contentValues = entry.getValue();
+        operations.add(
+            ContentProviderOperation.newInsert(
+                    ContentUris.withAppendedId(AnnotatedCallLog.CONTENT_URI, id))
+                .withValues(contentValues)
+                .build());
+      }
+    }
+
+    if (!mutations.getUpdates().isEmpty()) {
+      LogUtil.i(
+          "CallLogMutations.applyToDatabase", "updating %d rows", mutations.getUpdates().size());
+      for (Entry<Long, ContentValues> entry : mutations.getUpdates().entrySet()) {
+        long id = entry.getKey();
+        ContentValues contentValues = entry.getValue();
+        operations.add(
+            ContentProviderOperation.newUpdate(
+                    ContentUris.withAppendedId(AnnotatedCallLog.CONTENT_URI, id))
+                .withValues(contentValues)
+                .build());
+      }
+    }
+
+    if (!mutations.getDeletes().isEmpty()) {
+      LogUtil.i(
+          "CallLogMutations.applyToDatabase", "deleting %d rows", mutations.getDeletes().size());
+      String[] questionMarks = new String[mutations.getDeletes().size()];
+      Arrays.fill(questionMarks, "?");
+
+      String whereClause =
+          (AnnotatedCallLog._ID + " in (") + TextUtils.join(",", questionMarks) + ")";
+
+      String[] whereArgs = new String[mutations.getDeletes().size()];
+      int i = 0;
+      for (long id : mutations.getDeletes()) {
+        whereArgs[i++] = String.valueOf(id);
+      }
+
+      operations.add(
+          ContentProviderOperation.newDelete(AnnotatedCallLog.CONTENT_URI)
+              .withSelection(whereClause, whereArgs)
+              .build());
+    }
+
+    appContext.getContentResolver().applyBatch(AnnotatedCallLogContract.AUTHORITY, operations);
+  }
+}
diff --git a/java/com/android/dialer/calllog/database/contract/AnnotatedCallLogContract.java b/java/com/android/dialer/calllog/database/contract/AnnotatedCallLogContract.java
new file mode 100644
index 0000000..7f314e3
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/contract/AnnotatedCallLogContract.java
@@ -0,0 +1,135 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.database.contract;
+
+import android.net.Uri;
+import android.provider.BaseColumns;
+import com.android.dialer.constants.Constants;
+import java.util.Arrays;
+
+/** Contract for the AnnotatedCallLog content provider. */
+public class AnnotatedCallLogContract {
+  public static final String AUTHORITY = Constants.get().getAnnotatedCallLogProviderAuthority();
+
+  public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY);
+
+  /**
+   * Columns shared by {@link AnnotatedCallLog} and {@link CoalescedAnnotatedCallLog}.
+   *
+   * <p>When adding columns be sure to update {@link #ALL_COMMON_COLUMNS}.
+   */
+  interface CommonColumns extends BaseColumns {
+
+    /**
+     * Timestamp of the entry, in milliseconds.
+     *
+     * <p>Type: INTEGER (long)
+     */
+    String TIMESTAMP = "timestamp";
+
+    /**
+     * Name to display for the entry.
+     *
+     * <p>Type: TEXT
+     */
+    String CONTACT_NAME = "contact_name";
+
+    String[] ALL_COMMON_COLUMNS = new String[] {_ID, TIMESTAMP, CONTACT_NAME};
+  }
+
+  /**
+   * AnnotatedCallLog table.
+   *
+   * <p>This contains all of the non-coalesced call log entries.
+   */
+  public static final class AnnotatedCallLog implements CommonColumns {
+
+    public static final String TABLE = "AnnotatedCallLog";
+
+    /** The content URI for this table. */
+    public static final Uri CONTENT_URI =
+        Uri.withAppendedPath(AnnotatedCallLogContract.CONTENT_URI, TABLE);
+
+    /** The MIME type of a {@link android.content.ContentProvider#getType(Uri)} single entry. */
+    public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/annotated_call_log";
+
+    /**
+     * The phone number called or number the call came from, encoded as a {@link
+     * com.android.dialer.DialerPhoneNumber} proto. The number may be empty if it was an incoming
+     * call and the number was unknown.
+     *
+     * <p>This column is only present in the annotated call log, and not the coalesced annotated
+     * call log. The coalesced version uses a formatted number string rather than proto bytes.
+     *
+     * <p>Type: BLOB
+     */
+    public static final String NUMBER = "number";
+  }
+
+  /**
+   * Coalesced view of the AnnotatedCallLog table.
+   *
+   * <p>This is an in-memory view of the {@link AnnotatedCallLog} with some adjacent entries
+   * collapsed.
+   *
+   * <p>When adding columns be sure to update {@link #COLUMNS_ONLY_IN_COALESCED_CALL_LOG}.
+   */
+  public static final class CoalescedAnnotatedCallLog implements CommonColumns {
+
+    public static final String TABLE = "CoalescedAnnotatedCallLog";
+
+    /** The content URI for this table. */
+    public static final Uri CONTENT_URI =
+        Uri.withAppendedPath(AnnotatedCallLogContract.CONTENT_URI, TABLE);
+
+    /** The MIME type of a {@link android.content.ContentProvider#getType(Uri)} single entry. */
+    public static final String CONTENT_ITEM_TYPE =
+        "vnd.android.cursor.item/coalesced_annotated_call_log";
+
+    /**
+     * Number of AnnotatedCallLog rows represented by this CoalescedAnnotatedCallLog row.
+     *
+     * <p>Type: INTEGER
+     */
+    public static final String NUMBER_CALLS = "number_calls";
+
+    /**
+     * The phone number formatted in a way suitable for display to the user. This value is generated
+     * on the fly when the {@link CoalescedAnnotatedCallLog} is generated.
+     *
+     * <p>Type: TEXT
+     */
+    public static final String FORMATTED_NUMBER = "formatted_number";
+
+    /**
+     * Columns that are only in the {@link CoalescedAnnotatedCallLog} but not the {@link
+     * AnnotatedCallLog}.
+     */
+    private static final String[] COLUMNS_ONLY_IN_COALESCED_CALL_LOG =
+        new String[] {NUMBER_CALLS, FORMATTED_NUMBER};
+
+    /** All columns in the {@link CoalescedAnnotatedCallLog}. */
+    public static final String[] ALL_COLUMNS =
+        concat(ALL_COMMON_COLUMNS, COLUMNS_ONLY_IN_COALESCED_CALL_LOG);
+  }
+
+  private static String[] concat(String[] first, String[] second) {
+    String[] result = Arrays.copyOf(first, first.length + second.length);
+    System.arraycopy(second, 0, result, first.length, second.length);
+    return result;
+  }
+}
diff --git a/java/com/android/dialer/calllog/datasources/CallLogDataSource.java b/java/com/android/dialer/calllog/datasources/CallLogDataSource.java
index 13d0b84..3fff3ba 100644
--- a/java/com/android/dialer/calllog/datasources/CallLogDataSource.java
+++ b/java/com/android/dialer/calllog/datasources/CallLogDataSource.java
@@ -16,13 +16,39 @@
 
 package com.android.dialer.calllog.datasources;
 
+import android.content.ContentValues;
 import android.content.Context;
-import android.database.sqlite.SQLiteDatabase;
 import android.support.annotation.MainThread;
 import android.support.annotation.WorkerThread;
-import com.android.dialer.calllog.database.CallLogMutations;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract;
+import java.util.List;
 
-/** A source of data for one or more columns in the annotated call log. */
+/**
+ * A source of data for one or more columns in the annotated call log.
+ *
+ * <p>Data sources have three lifecycle operations, which are always called on the same thread and
+ * in the same order for a particular "checkDirtyAndRebuild" cycle. However, not all operations are
+ * always invoked.
+ *
+ * <ol>
+ *   <li>{@link #isDirty(Context)}: Invoked only if the framework doesn't yet know if a rebuild is
+ *       necessary.
+ *   <li>{@link #fill(Context, CallLogMutations)}: Invoked only if the framework determined a
+ *       rebuild is necessary.
+ *   <li>{@link #onSuccessfulFill(Context)}: Invoked if and only if fill was previously called and
+ *       the mutations provided by the previous fill operation succeeded in being applied.
+ * </ol>
+ *
+ * <p>Because {@link #isDirty(Context)} is not always invoked, {@link #fill(Context,
+ * CallLogMutations)} shouldn't rely on any state saved during {@link #isDirty(Context)}. It
+ * <em>is</em> safe to assume that {@link #onSuccessfulFill(Context)} refers to the previous fill
+ * operation.
+ *
+ * <p>The same data source objects may be reused across multiple checkDirtyAndRebuild cycles, so
+ * implementors should take care to clear any internal state at the start of a new cycle.
+ *
+ * <p>{@link #coalesce(List)} may be called from any worker thread at any time.
+ */
 public interface CallLogDataSource {
 
   /**
@@ -35,6 +61,8 @@
    * <p>Most implementations of this method will rely on some sort of last modified timestamp. If it
    * is impossible for a data source to be modified without the dialer application being notified,
    * this method may immediately return false.
+   *
+   * @see CallLogDataSource class doc for complete lifecyle information
    */
   @WorkerThread
   boolean isDirty(Context appContext);
@@ -43,16 +71,39 @@
    * Computes the set of mutations necessary to update the annotated call log with respect to this
    * data source.
    *
+   * @see CallLogDataSource class doc for complete lifecyle information
    * @param mutations the set of mutations which this method should contribute to. Note that it may
    *     contain inserts from the system call log, and these inserts should be modified by each data
    *     source.
    */
   @WorkerThread
-  void fill(
-      Context appContext,
-      SQLiteDatabase readableDatabase,
-      long lastRebuildTimeMillis,
-      CallLogMutations mutations);
+  void fill(Context appContext, CallLogMutations mutations);
+
+  /**
+   * Called after database mutations have been applied to all data sources. This is useful for
+   * saving state such as the timestamp of the last row processed in an underlying database. Note
+   * that all mutations across all data sources are applied in a single transaction.
+   *
+   * @see CallLogDataSource class doc for complete lifecyle information
+   */
+  @WorkerThread
+  void onSuccessfulFill(Context appContext);
+
+  /**
+   * Combines raw annotated call log rows into a single coalesced row.
+   *
+   * <p>May be called by any worker thread at any time so implementations should take care to be
+   * threadsafe. (Ideally no state should be required to implement this.)
+   *
+   * @param individualRowsSortedByTimestampDesc group of fully populated rows from {@link
+   *     AnnotatedCallLogContract.AnnotatedCallLog} which need to be combined for display purposes.
+   *     This method should not modify this list.
+   * @return a partial {@link AnnotatedCallLogContract.CoalescedAnnotatedCallLog} row containing
+   *     only columns which this data source is responsible for, which is the result of aggregating
+   *     {@code individualRowsSortedByTimestampDesc}.
+   */
+  @WorkerThread
+  ContentValues coalesce(List<ContentValues> individualRowsSortedByTimestampDesc);
 
   @MainThread
   void registerContentObservers(
diff --git a/java/com/android/dialer/calllog/datasources/CallLogMutations.java b/java/com/android/dialer/calllog/datasources/CallLogMutations.java
new file mode 100644
index 0000000..148601d
--- /dev/null
+++ b/java/com/android/dialer/calllog/datasources/CallLogMutations.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.datasources;
+
+import android.content.ContentValues;
+import android.util.ArrayMap;
+import android.util.ArraySet;
+import com.android.dialer.common.Assert;
+
+/** A collection of mutations to the annotated call log. */
+public final class CallLogMutations {
+
+  private final ArrayMap<Long, ContentValues> inserts = new ArrayMap<>();
+  private final ArrayMap<Long, ContentValues> updates = new ArrayMap<>();
+  private final ArraySet<Long> deletes = new ArraySet<>();
+
+  /**
+   * @param contentValues an entire row not including the ID
+   * @throws IllegalStateException if this {@link CallLogMutations} already contains an insert,
+   *     update, or delete with the provided id
+   */
+  public void insert(long id, ContentValues contentValues) {
+    Assert.checkArgument(!inserts.containsKey(id), "Can't insert row already scheduled for insert");
+    Assert.checkArgument(!updates.containsKey(id), "Can't insert row scheduled for update");
+    Assert.checkArgument(!deletes.contains(id), "Can't insert row scheduled for delete");
+
+    inserts.put(id, contentValues);
+  }
+
+  /**
+   * Stores a database update using the provided ID and content values. If this {@link
+   * CallLogMutations} object already contains an update with the specified ID, the existing content
+   * values are merged with the provided ones, with the provided ones overwriting the existing ones
+   * for values with the same key.
+   *
+   * @param contentValues the specific columns to update, not including the ID.
+   * @throws IllegalStateException if this {@link CallLogMutations} already contains an insert or
+   *     delete with the provided id
+   */
+  public void update(long id, ContentValues contentValues) {
+    Assert.checkArgument(!inserts.containsKey(id), "Can't update row scheduled for insert");
+    Assert.checkArgument(!deletes.contains(id), "Can't delete row scheduled for delete");
+
+    ContentValues existingContentValues = updates.get(id);
+    if (existingContentValues != null) {
+      existingContentValues.putAll(contentValues);
+    } else {
+      updates.put(id, contentValues);
+    }
+  }
+
+  /**
+   * @throws IllegalStateException if this {@link CallLogMutations} already contains an insert,
+   *     update, or delete with the provided id
+   */
+  public void delete(long id) {
+    Assert.checkArgument(!inserts.containsKey(id), "Can't delete row scheduled for insert");
+    Assert.checkArgument(!updates.containsKey(id), "Can't delete row scheduled for update");
+    Assert.checkArgument(!deletes.contains(id), "Can't delete row already scheduled for delete");
+
+    deletes.add(id);
+  }
+
+  public boolean isEmpty() {
+    return inserts.isEmpty() && updates.isEmpty() && deletes.isEmpty();
+  }
+
+  /**
+   * Get the pending inserts.
+   *
+   * @return the pending inserts where the key is the annotated call log database ID and the values
+   *     are values to be inserted (not including the ID)
+   */
+  public ArrayMap<Long, ContentValues> getInserts() {
+    return inserts;
+  }
+
+  /**
+   * Get the pending updates.
+   *
+   * @return the pending updates where the key is the annotated call log database ID and the values
+   *     are values to be updated (not including the ID)
+   */
+  public ArrayMap<Long, ContentValues> getUpdates() {
+    return updates;
+  }
+
+  /**
+   * Get the pending deletes.
+   *
+   * @return the annotated call log database IDs corresponding to the rows to be deleted
+   */
+  public ArraySet<Long> getDeletes() {
+    return deletes;
+  }
+}
diff --git a/java/com/android/dialer/calllog/datasources/DataSources.java b/java/com/android/dialer/calllog/datasources/DataSources.java
new file mode 100644
index 0000000..911ca3f
--- /dev/null
+++ b/java/com/android/dialer/calllog/datasources/DataSources.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.datasources;
+
+import com.android.dialer.calllog.datasources.systemcalllog.SystemCallLogDataSource;
+import java.util.List;
+
+/** Immutable lists of data sources used to populate the annotated call log. */
+public interface DataSources {
+
+  SystemCallLogDataSource getSystemCallLogDataSource();
+
+  List<CallLogDataSource> getDataSourcesIncludingSystemCallLog();
+
+  List<CallLogDataSource> getDataSourcesExcludingSystemCallLog();
+}
diff --git a/java/com/android/dialer/calllog/datasources/contacts/ContactsDataSource.java b/java/com/android/dialer/calllog/datasources/contacts/ContactsDataSource.java
index 355940f..82a8523 100644
--- a/java/com/android/dialer/calllog/datasources/contacts/ContactsDataSource.java
+++ b/java/com/android/dialer/calllog/datasources/contacts/ContactsDataSource.java
@@ -16,13 +16,16 @@
 
 package com.android.dialer.calllog.datasources.contacts;
 
+import android.content.ContentValues;
 import android.content.Context;
-import android.database.sqlite.SQLiteDatabase;
 import android.support.annotation.MainThread;
 import android.support.annotation.WorkerThread;
-import com.android.dialer.calllog.database.CallLogMutations;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.CallLogMutations;
+import com.android.dialer.calllog.datasources.util.RowCombiner;
 import com.android.dialer.common.Assert;
+import java.util.List;
 import javax.inject.Inject;
 
 /** Responsible for maintaining the contacts related columns in the annotated call log. */
@@ -44,11 +47,25 @@
   @Override
   public void fill(
       Context appContext,
-      SQLiteDatabase readableDatabase,
-      long lastRebuildTimeMillis,
       CallLogMutations mutations) {
     Assert.isWorkerThread();
     // TODO: Implementation.
+    for (ContentValues contentValues : mutations.getInserts().values()) {
+      contentValues.put(AnnotatedCallLog.CONTACT_NAME, "Placeholder name");
+    }
+  }
+
+  @Override
+  public void onSuccessfulFill(Context appContext) {
+    // TODO: Implementation.
+  }
+
+  @Override
+  public ContentValues coalesce(List<ContentValues> individualRowsSortedByTimestampDesc) {
+    // TODO: Implementation.
+    return new RowCombiner(individualRowsSortedByTimestampDesc)
+        .useSingleValueString(AnnotatedCallLog.CONTACT_NAME)
+        .combine();
   }
 
   @MainThread
diff --git a/java/com/android/dialer/calllog/datasources/systemcalllog/SystemCallLogDataSource.java b/java/com/android/dialer/calllog/datasources/systemcalllog/SystemCallLogDataSource.java
index ea6663f..f206328 100644
--- a/java/com/android/dialer/calllog/datasources/systemcalllog/SystemCallLogDataSource.java
+++ b/java/com/android/dialer/calllog/datasources/systemcalllog/SystemCallLogDataSource.java
@@ -16,28 +16,54 @@
 
 package com.android.dialer.calllog.datasources.systemcalllog;
 
+import android.Manifest.permission;
+import android.annotation.TargetApi;
+import android.content.ContentValues;
 import android.content.Context;
 import android.database.ContentObserver;
-import android.database.sqlite.SQLiteDatabase;
+import android.database.Cursor;
 import android.net.Uri;
+import android.os.Build;
 import android.os.Handler;
+import android.preference.PreferenceManager;
 import android.provider.CallLog;
+import android.provider.CallLog.Calls;
 import android.support.annotation.MainThread;
+import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
 import android.support.annotation.WorkerThread;
-import com.android.dialer.calllog.database.CallLogMutations;
+import android.text.TextUtils;
+import android.util.ArraySet;
+import com.android.dialer.DialerPhoneNumber;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.CallLogMutations;
+import com.android.dialer.calllog.datasources.util.RowCombiner;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.dialer.phonenumberproto.DialerPhoneNumberUtil;
 import com.android.dialer.util.PermissionsUtil;
+import com.google.i18n.phonenumbers.PhoneNumberUtil;
+import com.google.protobuf.InvalidProtocolBufferException;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Set;
 import javax.inject.Inject;
 
 /**
  * Responsible for defining the rows in the annotated call log and maintaining the columns in it
  * which are derived from the system call log.
  */
+@SuppressWarnings("MissingPermission")
 public class SystemCallLogDataSource implements CallLogDataSource {
 
+  @VisibleForTesting
+  static final String PREF_LAST_TIMESTAMP_PROCESSED = "systemCallLogLastTimestampProcessed";
+
+  @Nullable private Long lastTimestampProcessed;
+
   @Inject
   public SystemCallLogDataSource() {}
 
@@ -47,6 +73,8 @@
       Context appContext, ContentObserverCallbacks contentObserverCallbacks) {
     Assert.isMainThread();
 
+    LogUtil.enterBlock("SystemCallLogDataSource.registerContentObservers");
+
     if (!PermissionsUtil.hasCallLogReadPermissions(appContext)) {
       LogUtil.i("SystemCallLogDataSource.registerContentObservers", "no call log permissions");
       return;
@@ -77,17 +105,222 @@
 
   @WorkerThread
   @Override
-  public void fill(
-      Context appContext,
-      SQLiteDatabase readableDatabase,
-      long lastRebuildTimeMillis,
-      CallLogMutations mutations) {
+  public void fill(Context appContext, CallLogMutations mutations) {
     Assert.isWorkerThread();
 
-    // This data source should always run first so the mutations should always be empty.
-    Assert.checkState(mutations.isEmpty());
+    lastTimestampProcessed = null;
 
-    // TODO: Implementation.
+    if (!PermissionsUtil.hasPermission(appContext, permission.READ_CALL_LOG)) {
+      LogUtil.i("SystemCallLogDataSource.fill", "no call log permissions");
+      return;
+    }
+
+    // This data source should always run first so the mutations should always be empty.
+    Assert.checkArgument(mutations.isEmpty());
+
+    Set<Long> annotatedCallLogIds = getAnnotatedCallLogIds(appContext);
+
+    LogUtil.i(
+        "SystemCallLogDataSource.fill",
+        "found %d existing annotated call log ids",
+        annotatedCallLogIds.size());
+
+    handleInsertsAndUpdates(appContext, mutations, annotatedCallLogIds);
+    handleDeletes(appContext, annotatedCallLogIds, mutations);
+  }
+
+  @WorkerThread
+  @Override
+  public void onSuccessfulFill(Context appContext) {
+    // If a fill operation was a no-op, lastTimestampProcessed could still be null.
+    if (lastTimestampProcessed != null) {
+      PreferenceManager.getDefaultSharedPreferences(appContext)
+          .edit()
+          .putLong(PREF_LAST_TIMESTAMP_PROCESSED, lastTimestampProcessed)
+          .apply();
+    }
+  }
+
+  @Override
+  public ContentValues coalesce(List<ContentValues> individualRowsSortedByTimestampDesc) {
+    // TODO: Complete implementation.
+    ContentValues coalescedValues =
+        new RowCombiner(individualRowsSortedByTimestampDesc)
+            .useMostRecentLong(AnnotatedCallLog.TIMESTAMP)
+            .combine();
+
+    // All phone numbers in the provided group should be equivalent (but could be formatted
+    // differently). Arbitrarily show the raw phone number of the most recent call.
+    DialerPhoneNumber mostRecentPhoneNumber =
+        getMostRecentPhoneNumber(individualRowsSortedByTimestampDesc);
+    coalescedValues.put(
+        CoalescedAnnotatedCallLog.FORMATTED_NUMBER,
+        mostRecentPhoneNumber.getRawInput().getNumber());
+    return coalescedValues;
+  }
+
+  private static DialerPhoneNumber getMostRecentPhoneNumber(
+      List<ContentValues> individualRowsSortedByTimestampDesc) {
+    DialerPhoneNumber dialerPhoneNumber;
+    byte[] protoBytes =
+        individualRowsSortedByTimestampDesc.get(0).getAsByteArray(AnnotatedCallLog.NUMBER);
+    try {
+      dialerPhoneNumber = DialerPhoneNumber.parseFrom(protoBytes);
+    } catch (InvalidProtocolBufferException e) {
+      throw Assert.createAssertionFailException("couldn't parse DialerPhoneNumber", e);
+    }
+    return dialerPhoneNumber;
+  }
+
+  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
+  private void handleInsertsAndUpdates(
+      Context appContext, CallLogMutations mutations, Set<Long> existingAnnotatedCallLogIds) {
+    long previousTimestampProcessed =
+        PreferenceManager.getDefaultSharedPreferences(appContext)
+            .getLong(PREF_LAST_TIMESTAMP_PROCESSED, 0L);
+
+    DialerPhoneNumberUtil dialerPhoneNumberUtil =
+        new DialerPhoneNumberUtil(PhoneNumberUtil.getInstance());
+
+    // TODO: Really should be getting last 1000 by timestamp, not by last modified.
+    try (Cursor cursor =
+        appContext
+            .getContentResolver()
+            .query(
+                Calls.CONTENT_URI, // Excludes voicemail
+                new String[] {
+                  Calls._ID, Calls.DATE, Calls.LAST_MODIFIED, Calls.NUMBER, Calls.COUNTRY_ISO
+                },
+                Calls.LAST_MODIFIED + " > ?",
+                new String[] {String.valueOf(previousTimestampProcessed)},
+                Calls.LAST_MODIFIED + " DESC LIMIT 1000")) {
+
+      if (cursor == null) {
+        LogUtil.e("SystemCallLogDataSource.handleInsertsAndUpdates", "null cursor");
+        return;
+      }
+
+      LogUtil.i(
+          "SystemCallLogDataSource.handleInsertsAndUpdates",
+          "found %d entries to insert/update",
+          cursor.getCount());
+
+      if (cursor.moveToFirst()) {
+        int idColumn = cursor.getColumnIndexOrThrow(Calls._ID);
+        int dateColumn = cursor.getColumnIndexOrThrow(Calls.DATE);
+        int lastModifiedColumn = cursor.getColumnIndexOrThrow(Calls.LAST_MODIFIED);
+        int numberColumn = cursor.getColumnIndexOrThrow(Calls.NUMBER);
+        int countryIsoColumn = cursor.getColumnIndexOrThrow(Calls.COUNTRY_ISO);
+
+        // The cursor orders by LAST_MODIFIED DESC, so the first result is the most recent timestamp
+        // processed.
+        lastTimestampProcessed = cursor.getLong(lastModifiedColumn);
+        do {
+          long id = cursor.getLong(idColumn);
+          long date = cursor.getLong(dateColumn);
+          String numberAsStr = cursor.getString(numberColumn);
+          String countryIso = cursor.getString(countryIsoColumn);
+
+          byte[] numberAsProtoBytes =
+              dialerPhoneNumberUtil.parse(numberAsStr, countryIso).toByteArray();
+
+          ContentValues contentValues = new ContentValues();
+          contentValues.put(AnnotatedCallLog.TIMESTAMP, date);
+          contentValues.put(AnnotatedCallLog.NUMBER, numberAsProtoBytes);
+
+          if (existingAnnotatedCallLogIds.contains(id)) {
+            mutations.update(id, contentValues);
+          } else {
+            mutations.insert(id, contentValues);
+          }
+        } while (cursor.moveToNext());
+      } // else no new results, do nothing.
+    }
+  }
+
+  private static void handleDeletes(
+      Context appContext, Set<Long> existingAnnotatedCallLogIds, CallLogMutations mutations) {
+    Set<Long> systemCallLogIds =
+        getIdsFromSystemCallLogThatMatch(appContext, existingAnnotatedCallLogIds);
+    LogUtil.i(
+        "SystemCallLogDataSource.handleDeletes",
+        "found %d matching entries in system call log",
+        systemCallLogIds.size());
+    Set<Long> idsInAnnotatedCallLogNoLongerInSystemCallLog = new ArraySet<>();
+    idsInAnnotatedCallLogNoLongerInSystemCallLog.addAll(existingAnnotatedCallLogIds);
+    idsInAnnotatedCallLogNoLongerInSystemCallLog.removeAll(systemCallLogIds);
+
+    LogUtil.i(
+        "SystemCallLogDataSource.handleDeletes",
+        "found %d call log entries to remove",
+        idsInAnnotatedCallLogNoLongerInSystemCallLog.size());
+
+    for (long id : idsInAnnotatedCallLogNoLongerInSystemCallLog) {
+      mutations.delete(id);
+    }
+  }
+
+  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
+  private static Set<Long> getAnnotatedCallLogIds(Context appContext) {
+    ArraySet<Long> ids = new ArraySet<>();
+
+    try (Cursor cursor =
+        appContext
+            .getContentResolver()
+            .query(
+                AnnotatedCallLog.CONTENT_URI,
+                new String[] {AnnotatedCallLog._ID},
+                null,
+                null,
+                null)) {
+
+      if (cursor == null) {
+        LogUtil.e("SystemCallLogDataSource.getAnnotatedCallLogIds", "null cursor");
+        return ids;
+      }
+
+      if (cursor.moveToFirst()) {
+        int idColumn = cursor.getColumnIndexOrThrow(AnnotatedCallLog._ID);
+        do {
+          ids.add(cursor.getLong(idColumn));
+        } while (cursor.moveToNext());
+      }
+    }
+    return ids;
+  }
+
+  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
+  private static Set<Long> getIdsFromSystemCallLogThatMatch(
+      Context appContext, Set<Long> matchingIds) {
+    ArraySet<Long> ids = new ArraySet<>();
+
+    String[] questionMarks = new String[matchingIds.size()];
+    Arrays.fill(questionMarks, "?");
+    String whereClause = (Calls._ID + " in (") + TextUtils.join(",", questionMarks) + ")";
+    String[] whereArgs = new String[matchingIds.size()];
+    int i = 0;
+    for (long id : matchingIds) {
+      whereArgs[i++] = String.valueOf(id);
+    }
+
+    try (Cursor cursor =
+        appContext
+            .getContentResolver()
+            .query(Calls.CONTENT_URI, new String[] {Calls._ID}, whereClause, whereArgs, null)) {
+
+      if (cursor == null) {
+        LogUtil.e("SystemCallLogDataSource.getIdsFromSystemCallLog", "null cursor");
+        return ids;
+      }
+
+      if (cursor.moveToFirst()) {
+        int idColumn = cursor.getColumnIndexOrThrow(Calls._ID);
+        do {
+          ids.add(cursor.getLong(idColumn));
+        } while (cursor.moveToNext());
+      }
+      return ids;
+    }
   }
 
   private static class CallLogObserver extends ContentObserver {
diff --git a/java/com/android/dialer/calllog/datasources/util/RowCombiner.java b/java/com/android/dialer/calllog/datasources/util/RowCombiner.java
new file mode 100644
index 0000000..0c7be1e
--- /dev/null
+++ b/java/com/android/dialer/calllog/datasources/util/RowCombiner.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.datasources.util;
+
+import android.content.ContentValues;
+import com.android.dialer.common.Assert;
+import java.util.Iterator;
+import java.util.List;
+
+/** Convenience class for aggregating row values. */
+public class RowCombiner {
+  private final List<ContentValues> individualRowsSortedByTimestampDesc;
+  private final ContentValues combinedRow = new ContentValues();
+
+  public RowCombiner(List<ContentValues> individualRowsSortedByTimestampDesc) {
+    Assert.checkArgument(!individualRowsSortedByTimestampDesc.isEmpty());
+    this.individualRowsSortedByTimestampDesc = individualRowsSortedByTimestampDesc;
+  }
+
+  /** Use the most recent value for the specified column. */
+  public RowCombiner useMostRecentLong(String columnName) {
+    combinedRow.put(columnName, individualRowsSortedByTimestampDesc.get(0).getAsLong(columnName));
+    return this;
+  }
+
+  /** Asserts that all column values for the given column name are the same, and uses it. */
+  public RowCombiner useSingleValueString(String columnName) {
+    Iterator<ContentValues> iterator = individualRowsSortedByTimestampDesc.iterator();
+    String singleValue = iterator.next().getAsString(columnName);
+    while (iterator.hasNext()) {
+      Assert.checkState(iterator.next().getAsString(columnName).equals(singleValue));
+    }
+    combinedRow.put(columnName, singleValue);
+    return this;
+  }
+
+  public ContentValues combine() {
+    return combinedRow;
+  }
+}
diff --git a/java/com/android/dialer/calllog/ui/AndroidManifest.xml b/java/com/android/dialer/calllog/ui/AndroidManifest.xml
index 2281677..eaf71ab 100644
--- a/java/com/android/dialer/calllog/ui/AndroidManifest.xml
+++ b/java/com/android/dialer/calllog/ui/AndroidManifest.xml
@@ -13,4 +13,4 @@
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License
  -->
-<manifest package="com.android.dialer.calllog"/>
+<manifest package="com.android.dialer.calllog.ui"/>
diff --git a/java/com/android/dialer/calllog/ui/AnnotatedCallLogCursorLoader.java b/java/com/android/dialer/calllog/ui/AnnotatedCallLogCursorLoader.java
deleted file mode 100644
index cd8622e..0000000
--- a/java/com/android/dialer/calllog/ui/AnnotatedCallLogCursorLoader.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2017 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.dialer.calllog.ui;
-
-import android.annotation.TargetApi;
-import android.content.Context;
-import android.content.CursorLoader;
-import android.database.Cursor;
-import android.database.sqlite.SQLiteDatabase;
-import android.os.Build;
-import com.android.dialer.calllog.database.AnnotatedCallLog;
-import com.android.dialer.calllog.database.AnnotatedCallLog.Columns;
-
-/** CursorLoader which reads the annotated call log. */
-class AnnotatedCallLogCursorLoader extends CursorLoader {
-
-  AnnotatedCallLogCursorLoader(Context context) {
-    super(context);
-  }
-
-  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
-  @Override
-  public Cursor loadInBackground() {
-    try (SQLiteDatabase readableDatabase = AnnotatedCallLog.getReadableDatabase(getContext())) {
-      return readableDatabase.rawQuery(
-          "SELECT * FROM "
-              + AnnotatedCallLog.TABLE_NAME
-              + " ORDER BY "
-              + Columns.TIMESTAMP
-              + " DESC",
-          null /* selectionArgs */);
-    }
-  }
-}
diff --git a/java/com/android/dialer/calllog/ui/NewCallLogAdapter.java b/java/com/android/dialer/calllog/ui/NewCallLogAdapter.java
new file mode 100644
index 0000000..f9ab21c
--- /dev/null
+++ b/java/com/android/dialer/calllog/ui/NewCallLogAdapter.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.ui;
+
+import android.database.Cursor;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.ViewGroup;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
+
+/** {@link RecyclerView.Adapter} for the new call log fragment. */
+final class NewCallLogAdapter extends RecyclerView.Adapter<NewCallLogViewHolder> {
+
+  private final Cursor cursor;
+  private final int timestampIndex;
+
+  NewCallLogAdapter(Cursor cursor) {
+    this.cursor = cursor;
+    timestampIndex = cursor.getColumnIndexOrThrow(CoalescedAnnotatedCallLog.TIMESTAMP);
+  }
+
+  @Override
+  public NewCallLogViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
+    return new NewCallLogViewHolder(
+        LayoutInflater.from(viewGroup.getContext())
+            .inflate(R.layout.new_call_log_entry, viewGroup, false));
+  }
+
+  @Override
+  public void onBindViewHolder(NewCallLogViewHolder viewHolder, int position) {
+    cursor.moveToPosition(position);
+    long timestamp = cursor.getLong(timestampIndex);
+    viewHolder.bind(timestamp);
+  }
+
+  @Override
+  public int getItemCount() {
+    return cursor.getCount();
+  }
+}
diff --git a/java/com/android/dialer/calllog/ui/NewCallLogFragment.java b/java/com/android/dialer/calllog/ui/NewCallLogFragment.java
index b8f2b13..712f7cf 100644
--- a/java/com/android/dialer/calllog/ui/NewCallLogFragment.java
+++ b/java/com/android/dialer/calllog/ui/NewCallLogFragment.java
@@ -17,30 +17,38 @@
 
 import android.app.Fragment;
 import android.app.LoaderManager.LoaderCallbacks;
-import android.content.Context;
+import android.content.CursorLoader;
 import android.content.Loader;
 import android.database.Cursor;
 import android.os.Bundle;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.widget.CursorAdapter;
-import android.widget.ListView;
-import android.widget.SimpleCursorAdapter;
-import android.widget.TextView;
 import com.android.dialer.calllog.CallLogComponent;
 import com.android.dialer.calllog.CallLogFramework;
 import com.android.dialer.calllog.CallLogFramework.CallLogUi;
-import com.android.dialer.calllog.database.AnnotatedCallLog.Columns;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
 import com.android.dialer.common.LogUtil;
-import java.text.SimpleDateFormat;
-import java.util.Locale;
+import com.android.dialer.common.concurrent.DialerExecutor;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
+import com.android.dialer.common.concurrent.DialerExecutorFactory;
 
 /** The "new" call log fragment implementation, which is built on top of the annotated call log. */
 public final class NewCallLogFragment extends Fragment
     implements CallLogUi, LoaderCallbacks<Cursor> {
 
-  private CursorAdapter cursorAdapter;
+  /*
+   * This is a reasonable time that it might take between related call log writes, that also
+   * shouldn't slow down single-writes too much. For example, when populating the database using
+   * the simulator, using this value results in ~6 refresh cycles (on a release build) to write 120
+   * call log entries.
+   */
+  private static final long WAIT_MILLIS = 100L;
+
+  private DialerExecutor<Boolean> refreshAnnotatedCallLogTask;
+  private RecyclerView recyclerView;
 
   public NewCallLogFragment() {
     LogUtil.enterBlock("NewCallLogFragment.NewCallLogFragment");
@@ -52,8 +60,27 @@
 
     LogUtil.enterBlock("NewCallLogFragment.onCreate");
 
-    CallLogFramework callLogFramework = CallLogComponent.get(getContext()).callLogFramework();
+    CallLogComponent component = CallLogComponent.get(getContext());
+    CallLogFramework callLogFramework = component.callLogFramework();
     callLogFramework.attachUi(this);
+
+    DialerExecutorFactory dialerExecutorFactory =
+        DialerExecutorComponent.get(getContext()).dialerExecutorFactory();
+
+    refreshAnnotatedCallLogTask =
+        dialerExecutorFactory
+            .createUiTaskBuilder(
+                getFragmentManager(),
+                "NewCallLogFragment.refreshAnnotatedCallLog",
+                component.getRefreshAnnotatedCallLogWorker())
+            .build();
+  }
+
+  @Override
+  public void onStart() {
+    super.onStart();
+
+    LogUtil.enterBlock("NewCallLogFragment.onStart");
   }
 
   @Override
@@ -64,6 +91,9 @@
 
     CallLogFramework callLogFramework = CallLogComponent.get(getContext()).callLogFramework();
     callLogFramework.attachUi(this);
+
+    // TODO: Consider doing this when fragment becomes visible.
+    checkAnnotatedCallLogDirtyAndRefreshIfNecessary();
   }
 
   @Override
@@ -82,57 +112,44 @@
     LogUtil.enterBlock("NewCallLogFragment.onCreateView");
 
     View view = inflater.inflate(R.layout.new_call_log_fragment, container, false);
-    ListView listView = (ListView) view.findViewById(R.id.list);
+    recyclerView = view.findViewById(R.id.new_call_log_recycler_view);
 
-    this.cursorAdapter =
-        new MyCursorAdapter(
-            getContext(),
-            R.layout.new_call_log_entry,
-            null /* cursor */,
-            new String[] {Columns.TIMESTAMP, Columns.CONTACT_NAME},
-            new int[] {R.id.timestamp, R.id.contact_name},
-            0);
-    listView.setAdapter(cursorAdapter);
-
-    getLoaderManager().initLoader(0, null, this);
+    getLoaderManager().restartLoader(0, null, this);
 
     return view;
   }
 
+  private void checkAnnotatedCallLogDirtyAndRefreshIfNecessary() {
+    LogUtil.enterBlock("NewCallLogFragment.checkAnnotatedCallLogDirtyAndRefreshIfNecessary");
+    refreshAnnotatedCallLogTask.executeSerialWithWait(false /* skipDirtyCheck */, WAIT_MILLIS);
+  }
+
   @Override
   public void invalidateUi() {
     LogUtil.enterBlock("NewCallLogFragment.invalidateUi");
-    // TODO: Implementation.
+    refreshAnnotatedCallLogTask.executeSerialWithWait(true /* skipDirtyCheck */, WAIT_MILLIS);
   }
 
   @Override
   public Loader<Cursor> onCreateLoader(int id, Bundle args) {
-    // TODO: This is sort of weird, do we need to implement a content provider?
-    return new AnnotatedCallLogCursorLoader(getContext());
+    LogUtil.enterBlock("NewCallLogFragment.onCreateLoader");
+    // CoalescedAnnotatedCallLog requires that all params be null.
+    return new CursorLoader(
+        getContext(), CoalescedAnnotatedCallLog.CONTENT_URI, null, null, null, null);
   }
 
   @Override
   public void onLoadFinished(Loader<Cursor> loader, Cursor newCursor) {
-    cursorAdapter.swapCursor(newCursor);
+    LogUtil.enterBlock("NewCallLogFragment.onLoadFinished");
+
+    // TODO: Handle empty cursor by showing empty view.
+    recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
+    recyclerView.setAdapter(new NewCallLogAdapter(newCursor));
   }
 
   @Override
   public void onLoaderReset(Loader<Cursor> loader) {
-    cursorAdapter.swapCursor(null);
-  }
-
-  private static class MyCursorAdapter extends SimpleCursorAdapter {
-
-    MyCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to, int flags) {
-      super(context, layout, c, from, to, flags);
-    }
-
-    @Override
-    public void setViewText(TextView view, String text) {
-      if (view.getId() == R.id.timestamp) {
-        text = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.US).format(Long.valueOf(text));
-      }
-      view.setText(text);
-    }
+    LogUtil.enterBlock("NewCallLogFragment.onLoaderReset");
+    recyclerView.setAdapter(null);
   }
 }
diff --git a/java/com/android/dialer/calllog/ui/NewCallLogViewHolder.java b/java/com/android/dialer/calllog/ui/NewCallLogViewHolder.java
new file mode 100644
index 0000000..4c459e1
--- /dev/null
+++ b/java/com/android/dialer/calllog/ui/NewCallLogViewHolder.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2017 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.dialer.calllog.ui;
+
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.TextView;
+import java.text.SimpleDateFormat;
+import java.util.Locale;
+
+/** {@link RecyclerView.ViewHolder} for the new call log. */
+final class NewCallLogViewHolder extends RecyclerView.ViewHolder {
+
+  // TODO: Format correctly using current locale.
+  private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.US);
+
+  private final TextView contactNameView;
+  private final TextView timestampView;
+
+  NewCallLogViewHolder(View view) {
+    super(view);
+    contactNameView = view.findViewById(R.id.contact_name);
+    timestampView = view.findViewById(R.id.timestamp);
+  }
+
+  void bind(long timestamp) {
+    contactNameView.setText("Contact Name Placeholder");
+    timestampView.setText(dateFormat.format(timestamp));
+  }
+}
diff --git a/java/com/android/dialer/calllog/ui/res/layout/new_call_log_entry.xml b/java/com/android/dialer/calllog/ui/res/layout/new_call_log_entry.xml
index ee3efd0..99797fa 100644
--- a/java/com/android/dialer/calllog/ui/res/layout/new_call_log_entry.xml
+++ b/java/com/android/dialer/calllog/ui/res/layout/new_call_log_entry.xml
@@ -18,16 +18,20 @@
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:orientation="horizontal">
-
-  <TextView
-      android:id="@+id/timestamp"
-      android:layout_width="wrap_content"
-      android:layout_height="wrap_content"/>
+    android:layout_height="wrap_content"
+    android:padding="8dp"
+    android:orientation="vertical">
 
   <TextView
       android:id="@+id/contact_name"
       android:layout_width="wrap_content"
-      android:layout_height="wrap_content"/>
+      android:layout_height="wrap_content"
+      style="@style/PrimaryText"/>
+
+  <TextView
+      android:id="@+id/timestamp"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      style="@style/SecondaryText"/>
+
 </LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/calllog/ui/res/layout/new_call_log_fragment.xml b/java/com/android/dialer/calllog/ui/res/layout/new_call_log_fragment.xml
index 433dbdd..e1d8410 100644
--- a/java/com/android/dialer/calllog/ui/res/layout/new_call_log_fragment.xml
+++ b/java/com/android/dialer/calllog/ui/res/layout/new_call_log_fragment.xml
@@ -15,8 +15,9 @@
   ~ limitations under the License
   -->
 
-<ListView
+<android.support.v7.widget.RecyclerView
     xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/list"
+    android:id="@+id/new_call_log_recycler_view"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"/>
+    android:layout_height="match_parent"
+    android:background="@color/background_dialer_light"/>
diff --git a/java/com/android/dialer/calllogutils/res/values-am/strings.xml b/java/com/android/dialer/calllogutils/res/values-am/strings.xml
index c5da1c6..0d9b8a9 100644
--- a/java/com/android/dialer/calllogutils/res/values-am/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-am/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"ሰ"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="one">ሰከንዶች</item>
       <item quantity="other">ሰከንዶች</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-az/strings.xml b/java/com/android/dialer/calllogutils/res/values-az/strings.xml
index c280c8e..0efe1e8 100644
--- a/java/com/android/dialer/calllogutils/res/values-az/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-az/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"san"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\"<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\" <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">saniyə</item>
       <item quantity="one">saniyə</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-da/strings.xml b/java/com/android/dialer/calllogutils/res/values-da/strings.xml
index 123002a..21c6e0e 100644
--- a/java/com/android/dialer/calllogutils/res/values-da/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-da/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"sek."</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\' <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\' <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\' <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="one">sekund</item>
       <item quantity="other">sekunder</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-de/strings.xml b/java/com/android/dialer/calllogutils/res/values-de/strings.xml
index 5867b73..4d6f416 100644
--- a/java/com/android/dialer/calllogutils/res/values-de/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-de/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"s"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\" <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other"> Sekunden</item>
       <item quantity="one"> Sekunde</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-eu/strings.xml b/java/com/android/dialer/calllogutils/res/values-eu/strings.xml
index a097ec8..7ab37c5 100644
--- a/java/com/android/dialer/calllogutils/res/values-eu/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-eu/strings.xml
@@ -34,7 +34,7 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"s"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> eta <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' eta <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' \'eta\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">segundo</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-hi/strings.xml b/java/com/android/dialer/calllogutils/res/values-hi/strings.xml
index d20e88e..b9a6241 100644
--- a/java/com/android/dialer/calllogutils/res/values-hi/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-hi/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"से."</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="one">सेकंड</item>
       <item quantity="other">सेकंड</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-iw/strings.xml b/java/com/android/dialer/calllogutils/res/values-iw/strings.xml
index 2f29855..1ab041a 100644
--- a/java/com/android/dialer/calllogutils/res/values-iw/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-iw/strings.xml
@@ -34,7 +34,7 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"שנ\'"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> ו-<xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' ו-<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="two">שניות</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-ky/strings.xml b/java/com/android/dialer/calllogutils/res/values-ky/strings.xml
index f758dab..76d389e 100644
--- a/java/com/android/dialer/calllogutils/res/values-ky/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-ky/strings.xml
@@ -35,7 +35,7 @@
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">секундалар</item>
       <item quantity="one">секунда</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-lv/strings.xml b/java/com/android/dialer/calllogutils/res/values-lv/strings.xml
index c87dbb6..cc176f8 100644
--- a/java/com/android/dialer/calllogutils/res/values-lv/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-lv/strings.xml
@@ -35,7 +35,7 @@
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="zero">sekunžu</item>
       <item quantity="one">sekunde</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-ml/strings.xml b/java/com/android/dialer/calllogutils/res/values-ml/strings.xml
index 0064401..1fcb564 100644
--- a/java/com/android/dialer/calllogutils/res/values-ml/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-ml/strings.xml
@@ -35,7 +35,7 @@
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">സെക്കൻഡ്</item>
       <item quantity="one">സെക്കൻഡ്</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-mr/strings.xml b/java/com/android/dialer/calllogutils/res/values-mr/strings.xml
index c01f7c1..9a7513b 100644
--- a/java/com/android/dialer/calllogutils/res/values-mr/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-mr/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"से"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="one">सेकंद</item>
       <item quantity="other">सेकंद</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-nb/strings.xml b/java/com/android/dialer/calllogutils/res/values-nb/strings.xml
index 2f74403..4ec963d 100644
--- a/java/com/android/dialer/calllogutils/res/values-nb/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-nb/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"sek."</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">sekunder</item>
       <item quantity="one">sekund</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-nl/strings.xml b/java/com/android/dialer/calllogutils/res/values-nl/strings.xml
index d156109..5239928 100644
--- a/java/com/android/dialer/calllogutils/res/values-nl/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-nl/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"s"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">seconden</item>
       <item quantity="one">seconde</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-no/strings.xml b/java/com/android/dialer/calllogutils/res/values-no/strings.xml
index 2f74403..4ec963d 100644
--- a/java/com/android/dialer/calllogutils/res/values-no/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-no/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"sek."</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">sekunder</item>
       <item quantity="one">sekund</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-pt-rBR/strings.xml b/java/com/android/dialer/calllogutils/res/values-pt-rBR/strings.xml
index 8c13e81..ba526a8 100644
--- a/java/com/android/dialer/calllogutils/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-pt-rBR/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"s"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\" <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="one"> segundo</item>
       <item quantity="other"> segundos</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-pt-rPT/strings.xml b/java/com/android/dialer/calllogutils/res/values-pt-rPT/strings.xml
index e24d245..adb5dac 100644
--- a/java/com/android/dialer/calllogutils/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-pt-rPT/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"seg"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>, <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\"<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\", <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\', <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="one">seconds</item>
       <item quantity="other">segundos</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-pt/strings.xml b/java/com/android/dialer/calllogutils/res/values-pt/strings.xml
index 8c13e81..ba526a8 100644
--- a/java/com/android/dialer/calllogutils/res/values-pt/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-pt/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"s"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\" <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="one"> segundo</item>
       <item quantity="other"> segundos</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-sw/strings.xml b/java/com/android/dialer/calllogutils/res/values-sw/strings.xml
index 5a5a690..46217e7 100644
--- a/java/com/android/dialer/calllogutils/res/values-sw/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-sw/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"sek"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\'<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">Sekunde</item>
       <item quantity="one">Sekunde</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-tr/strings.xml b/java/com/android/dialer/calllogutils/res/values-tr/strings.xml
index 78e0b5b..93cf690 100644
--- a/java/com/android/dialer/calllogutils/res/values-tr/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-tr/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"sn."</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\" <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \"<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\""</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">saniye</item>
       <item quantity="one">saniye</item>
diff --git a/java/com/android/dialer/calllogutils/res/values-ur/strings.xml b/java/com/android/dialer/calllogutils/res/values-ur/strings.xml
index 4f73a49..3ab6f13 100644
--- a/java/com/android/dialer/calllogutils/res/values-ur/strings.xml
+++ b/java/com/android/dialer/calllogutils/res/values-ur/strings.xml
@@ -34,8 +34,8 @@
     <string name="call_details_seconds_abbreviation" msgid="5893806826648947126">"سیکنڈ"</string>
     <string name="a11y_call_duration_format" msgid="2905525933361674470">"<xliff:g id="MINUTES_0">%d</xliff:g> <xliff:g id="MINUTES_TRANSLATION">%s</xliff:g> <xliff:g id="SECONDS_1">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
     <string name="a11y_call_duration_short_format" msgid="5908875871251062453">"<xliff:g id="SECONDS_0">%d</xliff:g> <xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>"</string>
-    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
-    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g>\'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'"</string>
+    <string name="call_duration_format_pattern" msgid="7566375153243313914">"<xliff:g id="MINUTES_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="MINUTES_TRANSLATION">%s</xliff:g>\' <xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'‎"</string>
+    <string name="call_duration_short_format_pattern" msgid="1713177000235994790">"<xliff:g id="SECONDS_SPECIAL_CHARACTER">%s</xliff:g> \'<xliff:g id="SECONDS_TRANSLATION">%s</xliff:g>\'‎"</string>
     <plurals name="a11y_seconds" formatted="false" msgid="6695730844760611970">
       <item quantity="other">سیکنڈز</item>
       <item quantity="one">سیکنڈ</item>
diff --git a/java/com/android/dialer/common/Assert.java b/java/com/android/dialer/common/Assert.java
index 189d209..2d7f199 100644
--- a/java/com/android/dialer/common/Assert.java
+++ b/java/com/android/dialer/common/Assert.java
@@ -30,10 +30,6 @@
     Assert.areThreadAssertsEnabled = areThreadAssertsEnabled;
   }
 
-  public static boolean areThreadAssertsEnabled() {
-    return areThreadAssertsEnabled;
-  }
-
   /**
    * Called when a truly exceptional case occurs.
    *
@@ -63,6 +59,11 @@
   }
 
   @CheckReturnValue
+  public static AssertionError createAssertionFailException(String msg, Throwable reason) {
+    return new AssertionError(msg, reason);
+  }
+
+  @CheckReturnValue
   public static UnsupportedOperationException createUnsupportedOperationFailException() {
     return new UnsupportedOperationException();
   }
diff --git a/java/com/android/dialer/common/ConfigProvider.java b/java/com/android/dialer/common/ConfigProvider.java
deleted file mode 100644
index c0791e9..0000000
--- a/java/com/android/dialer/common/ConfigProvider.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (C) 2016 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.dialer.common;
-
-/** Gets config values from the container application. */
-public interface ConfigProvider {
-
-  String getString(String key, String defaultValue);
-
-  long getLong(String key, long defaultValue);
-
-  boolean getBoolean(String key, boolean defaultValue);
-}
diff --git a/java/com/android/dialer/common/ConfigProviderBindings.java b/java/com/android/dialer/common/ConfigProviderBindings.java
deleted file mode 100644
index 9f045ad..0000000
--- a/java/com/android/dialer/common/ConfigProviderBindings.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright (C) 2016 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.dialer.common;
-
-import android.content.Context;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.annotation.VisibleForTesting;
-import android.support.v4.os.UserManagerCompat;
-
-/** Accessor for getting a {@link ConfigProvider}. */
-public class ConfigProviderBindings {
-
-  private static ConfigProvider configProvider;
-  private static ConfigProvider configProviderStub;
-
-  public static ConfigProvider get(@NonNull Context context) {
-    Assert.isNotNull(context);
-    if (configProvider != null) {
-      return configProvider;
-    }
-    if (!UserManagerCompat.isUserUnlocked(context)) {
-      if (configProviderStub == null) {
-        configProviderStub = new ConfigProviderStub();
-      }
-      return configProviderStub;
-    }
-
-    Context application = context.getApplicationContext();
-    if (application instanceof ConfigProviderFactory) {
-      configProvider = ((ConfigProviderFactory) application).getConfigProvider();
-    }
-
-    if (configProvider == null) {
-      configProvider = new ConfigProviderStub();
-    }
-
-    return configProvider;
-  }
-
-  @VisibleForTesting
-  public static void setForTesting(@Nullable ConfigProvider configProviderForTesting) {
-    configProvider = configProviderForTesting;
-  }
-
-  private static class ConfigProviderStub implements ConfigProvider {
-    @Override
-    public String getString(String key, String defaultValue) {
-      return defaultValue;
-    }
-
-    @Override
-    public long getLong(String key, long defaultValue) {
-      return defaultValue;
-    }
-
-    @Override
-    public boolean getBoolean(String key, boolean defaultValue) {
-      return defaultValue;
-    }
-  }
-}
diff --git a/java/com/android/dialer/common/ConfigProviderFactory.java b/java/com/android/dialer/common/ConfigProviderFactory.java
deleted file mode 100644
index aeb4f30..0000000
--- a/java/com/android/dialer/common/ConfigProviderFactory.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright (C) 2016 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.dialer.common;
-
-/**
- * This interface should be implementated by the Application subclass. It allows dialer code to get
- * references to a config provider.
- */
-public interface ConfigProviderFactory {
-
-  ConfigProvider getConfigProvider();
-}
diff --git a/java/com/android/dialer/common/concurrent/DefaultDialerExecutorFactory.java b/java/com/android/dialer/common/concurrent/DefaultDialerExecutorFactory.java
index 4b6d81a..82e517d 100644
--- a/java/com/android/dialer/common/concurrent/DefaultDialerExecutorFactory.java
+++ b/java/com/android/dialer/common/concurrent/DefaultDialerExecutorFactory.java
@@ -17,6 +17,7 @@
 package com.android.dialer.common.concurrent;
 
 import android.app.FragmentManager;
+import android.os.AsyncTask;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import com.android.dialer.common.Assert;
@@ -25,9 +26,13 @@
 import com.android.dialer.common.concurrent.DialerExecutor.FailureListener;
 import com.android.dialer.common.concurrent.DialerExecutor.SuccessListener;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import java.util.concurrent.Executor;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.ThreadFactory;
+import java.util.concurrent.TimeUnit;
 import javax.inject.Inject;
 
 /** The production {@link DialerExecutorFactory}. */
@@ -62,16 +67,16 @@
         throwable -> {
           throw new RuntimeException(throwable);
         };
-    @Nullable final ExecutorService serialExecutorService;
-    @Nullable final ExecutorService parallelExecutorService;
+    @Nullable final ScheduledExecutorService serialExecutorService;
+    @Nullable final Executor parallelExecutor;
 
     BaseTaskBuilder(
         Worker<InputT, OutputT> worker,
-        @Nullable ExecutorService serialExecutorService,
-        @Nullable ExecutorService parallelExecutorService) {
+        @Nullable ScheduledExecutorService serialExecutorService,
+        @Nullable Executor parallelExecutor) {
       this.worker = worker;
       this.serialExecutorService = serialExecutorService;
-      this.parallelExecutorService = parallelExecutorService;
+      this.parallelExecutor = parallelExecutor;
     }
 
     @NonNull
@@ -91,6 +96,19 @@
 
   /** Convenience class for use by {@link DialerExecutorFactory} implementations. */
   public static class UiTaskBuilder<InputT, OutputT> extends BaseTaskBuilder<InputT, OutputT> {
+    private static final ScheduledExecutorService defaultSerialExecutorService =
+        Executors.newSingleThreadScheduledExecutor(
+            new ThreadFactory() {
+              @Override
+              public Thread newThread(Runnable runnable) {
+                LogUtil.i("UiTaskBuilder.newThread", "creating serial thread");
+                Thread thread = new Thread(runnable, "UiTaskBuilder-Serial");
+                thread.setPriority(5); // Corresponds to Process.THREAD_PRIORITY_DEFAULT
+                return thread;
+              }
+            });
+
+    private static final Executor defaultParallelExecutorService = AsyncTask.THREAD_POOL_EXECUTOR;
 
     private final FragmentManager fragmentManager;
     private final String id;
@@ -102,16 +120,16 @@
           fragmentManager,
           id,
           worker,
-          null /* serialExecutorService */,
-          null /* parallelExecutorService */);
+          defaultSerialExecutorService,
+          defaultParallelExecutorService);
     }
 
     public UiTaskBuilder(
         FragmentManager fragmentManager,
         String id,
         Worker<InputT, OutputT> worker,
-        ExecutorService serialExecutor,
-        ExecutorService parallelExecutor) {
+        ScheduledExecutorService serialExecutor,
+        Executor parallelExecutor) {
       super(worker, serialExecutor, parallelExecutor);
       this.fragmentManager = fragmentManager;
       this.id = id;
@@ -128,46 +146,46 @@
               super.successListener,
               super.failureListener,
               serialExecutorService,
-              parallelExecutorService);
+              parallelExecutor);
       return new UiDialerExecutor<>(dialerUiTaskFragment);
     }
   }
 
   /** Convenience class for use by {@link DialerExecutorFactory} implementations. */
   public static class NonUiTaskBuilder<InputT, OutputT> extends BaseTaskBuilder<InputT, OutputT> {
-    private static final ExecutorService defaultSerialExecutorService =
-        Executors.newSingleThreadExecutor(
+    private static final ScheduledExecutorService defaultSerialExecutorService =
+        Executors.newSingleThreadScheduledExecutor(
             new ThreadFactory() {
               @Override
               public Thread newThread(Runnable runnable) {
                 LogUtil.i("NonUiTaskBuilder.newThread", "creating serial thread");
-                Thread thread = new Thread(runnable, "NonUiTaskBuilder");
+                Thread thread = new Thread(runnable, "NonUiTaskBuilder-Serial");
                 thread.setPriority(4); // Corresponds to Process.THREAD_PRIORITY_BACKGROUND
                 return thread;
               }
             });
 
-    private static final ExecutorService defaultParallelExecutorService =
+    private static final Executor defaultParallelExecutor =
         Executors.newFixedThreadPool(
             5,
             new ThreadFactory() {
               @Override
               public Thread newThread(Runnable runnable) {
                 LogUtil.i("NonUiTaskBuilder.newThread", "creating parallel thread");
-                Thread thread = new Thread(runnable, "NonUiTaskBuilder");
+                Thread thread = new Thread(runnable, "NonUiTaskBuilder-Parallel");
                 thread.setPriority(4); // Corresponds to Process.THREAD_PRIORITY_BACKGROUND
                 return thread;
               }
             });
 
     NonUiTaskBuilder(Worker<InputT, OutputT> worker) {
-      this(worker, defaultSerialExecutorService, defaultParallelExecutorService);
+      this(worker, defaultSerialExecutorService, defaultParallelExecutor);
     }
 
     public NonUiTaskBuilder(
         Worker<InputT, OutputT> worker,
-        @NonNull ExecutorService serialExecutor,
-        @NonNull ExecutorService parallelExecutor) {
+        @NonNull ScheduledExecutorService serialExecutor,
+        @NonNull Executor parallelExecutor) {
       super(worker, Assert.isNotNull(serialExecutor), Assert.isNotNull(parallelExecutor));
     }
 
@@ -179,7 +197,7 @@
           super.successListener,
           super.failureListener,
           serialExecutorService,
-          parallelExecutorService);
+          parallelExecutor);
     }
   }
 
@@ -197,6 +215,11 @@
     }
 
     @Override
+    public void executeSerialWithWait(@Nullable InputT input, long waitMillis) {
+      dialerUiTaskFragment.executeSerialWithWait(input, waitMillis);
+    }
+
+    @Override
     public void executeParallel(@Nullable InputT input) {
       dialerUiTaskFragment.executeParallel(input);
     }
@@ -214,47 +237,59 @@
     private final SuccessListener<OutputT> successListener;
     private final FailureListener failureListener;
 
-    private final ExecutorService serialExecutorService;
-    private final ExecutorService parallelExecutorService;
+    private final ScheduledExecutorService serialExecutorService;
+    private final Executor parallelExecutor;
+
+    private ScheduledFuture<?> scheduledFuture;
 
     NonUiDialerExecutor(
         Worker<InputT, OutputT> worker,
         SuccessListener<OutputT> successListener,
         FailureListener failureListener,
-        ExecutorService serialExecutorService,
-        ExecutorService parallelExecutorService) {
+        ScheduledExecutorService serialExecutorService,
+        Executor parallelExecutor) {
       this.worker = worker;
       this.successListener = successListener;
       this.failureListener = failureListener;
       this.serialExecutorService = serialExecutorService;
-      this.parallelExecutorService = parallelExecutorService;
+      this.parallelExecutor = parallelExecutor;
     }
 
     @Override
     public void executeSerial(@Nullable InputT input) {
-      executeOnCustomExecutorService(serialExecutorService, input);
+      serialExecutorService.execute(() -> run(input));
+    }
+
+    @Override
+    public void executeSerialWithWait(@Nullable InputT input, long waitMillis) {
+      if (scheduledFuture != null) {
+        LogUtil.i("NonUiDialerExecutor.executeSerialWithWait", "cancelling waiting task");
+        scheduledFuture.cancel(false /* mayInterrupt */);
+      }
+      scheduledFuture =
+          serialExecutorService.schedule(() -> run(input), waitMillis, TimeUnit.MILLISECONDS);
     }
 
     @Override
     public void executeParallel(@Nullable InputT input) {
-      executeOnCustomExecutorService(parallelExecutorService, input);
+      parallelExecutor.execute(() -> run(input));
     }
 
     @Override
     public void executeOnCustomExecutorService(
         @NonNull ExecutorService executorService, @Nullable InputT input) {
-      Assert.isNotNull(executorService)
-          .execute(
-              () -> {
-                OutputT output;
-                try {
-                  output = worker.doInBackground(input);
-                } catch (Throwable throwable) {
-                  ThreadUtil.postOnUiThread(() -> failureListener.onFailure(throwable));
-                  return;
-                }
-                ThreadUtil.postOnUiThread(() -> successListener.onSuccess(output));
-              });
+      Assert.isNotNull(executorService).execute(() -> run(input));
+    }
+
+    private void run(@Nullable InputT input) {
+      OutputT output;
+      try {
+        output = worker.doInBackground(input);
+      } catch (Throwable throwable) {
+        ThreadUtil.postOnUiThread(() -> failureListener.onFailure(throwable));
+        return;
+      }
+      ThreadUtil.postOnUiThread(() -> successListener.onSuccess(output));
     }
   }
 }
diff --git a/java/com/android/dialer/common/concurrent/DialerExecutor.java b/java/com/android/dialer/common/concurrent/DialerExecutor.java
index 0237e3a..0414581 100644
--- a/java/com/android/dialer/common/concurrent/DialerExecutor.java
+++ b/java/com/android/dialer/common/concurrent/DialerExecutor.java
@@ -84,6 +84,16 @@
   void executeSerial(@Nullable InputT input);
 
   /**
+   * Executes the task after waiting {@code waitMillis}. If called while the previous invocation is
+   * still waiting to be started, the original invocation is cancelled.
+   *
+   * <p>This is useful for tasks which might get scheduled many times in very quick succession, but
+   * it is only the last one that actually needs to be executed.
+   */
+  @MainThread
+  void executeSerialWithWait(@Nullable InputT input, long waitMillis);
+
+  /**
    * Executes the task on a thread pool shared across the application. Multiple calls using this
    * method may result in tasks being executed in parallel.
    */
diff --git a/java/com/android/dialer/common/concurrent/DialerExecutorComponent.java b/java/com/android/dialer/common/concurrent/DialerExecutorComponent.java
new file mode 100644
index 0000000..2503325
--- /dev/null
+++ b/java/com/android/dialer/common/concurrent/DialerExecutorComponent.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2017 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.dialer.common.concurrent;
+
+import android.content.Context;
+import com.android.dialer.inject.HasRootComponent;
+import dagger.Subcomponent;
+
+/** Dagger component which provides a {@link DialerExecutorFactory}. */
+@Subcomponent
+public abstract class DialerExecutorComponent {
+
+  public abstract DialerExecutorFactory dialerExecutorFactory();
+
+  public static DialerExecutorComponent get(Context context) {
+    return ((DialerExecutorComponent.HasComponent)
+            ((HasRootComponent) context.getApplicationContext()).component())
+        .dialerExecutorComponent();
+  }
+
+  /** Used to refer to the root application component. */
+  public interface HasComponent {
+    DialerExecutorComponent dialerExecutorComponent();
+  }
+}
diff --git a/java/com/android/dialer/common/concurrent/DialerExecutorModule.java b/java/com/android/dialer/common/concurrent/DialerExecutorModule.java
new file mode 100644
index 0000000..281f88c
--- /dev/null
+++ b/java/com/android/dialer/common/concurrent/DialerExecutorModule.java
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2017 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.dialer.common.concurrent;
+
+import dagger.Binds;
+import dagger.Module;
+
+/** Module which binds the production {@link DialerExecutorFactory}. */
+@Module
+public abstract class DialerExecutorModule {
+
+  @Binds
+  abstract DialerExecutorFactory bindDialerExecutorFactory(
+      DefaultDialerExecutorFactory defaultDialerExecutorFactory);
+}
diff --git a/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java b/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java
index 6273368..7f2a5a0 100644
--- a/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java
+++ b/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java
@@ -18,17 +18,21 @@
 
 import android.app.Fragment;
 import android.app.FragmentManager;
-import android.os.AsyncTask;
 import android.os.Bundle;
 import android.support.annotation.MainThread;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.annotation.WorkerThread;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.common.concurrent.AsyncTaskExecutors.SimpleAsyncTaskExecutor;
 import com.android.dialer.common.concurrent.DialerExecutor.FailureListener;
 import com.android.dialer.common.concurrent.DialerExecutor.SuccessListener;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import java.util.concurrent.Executor;
 import java.util.concurrent.ExecutorService;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
 
 /**
  * Do not use this class directly. Instead use {@link DialerExecutors}.
@@ -38,13 +42,13 @@
  */
 public final class DialerUiTaskFragment<InputT, OutputT> extends Fragment {
 
-  private String taskId;
   private Worker<InputT, OutputT> worker;
   private SuccessListener<OutputT> successListener;
   private FailureListener failureListener;
 
-  private AsyncTaskExecutor serialExecutor = AsyncTaskExecutors.createAsyncTaskExecutor();
-  private AsyncTaskExecutor parallelExecutor = AsyncTaskExecutors.createThreadPoolExecutor();
+  private ScheduledExecutorService serialExecutor;
+  private Executor parallelExecutor;
+  private ScheduledFuture<?> scheduledFuture;
 
   /**
    * Creates a new {@link DialerUiTaskFragment} or gets an existing one in the event that a
@@ -76,8 +80,8 @@
       Worker<InputT, OutputT> worker,
       SuccessListener<OutputT> successListener,
       FailureListener failureListener,
-      @Nullable ExecutorService serialExecutorService,
-      @Nullable ExecutorService parallelExecutorService) {
+      @NonNull ScheduledExecutorService serialExecutorService,
+      @NonNull Executor parallelExecutor) {
     Assert.isMainThread();
 
     DialerUiTaskFragment<InputT, OutputT> fragment =
@@ -88,16 +92,11 @@
       fragment = new DialerUiTaskFragment<>();
       fragmentManager.beginTransaction().add(fragment, taskId).commit();
     }
-    fragment.taskId = taskId;
     fragment.worker = worker;
     fragment.successListener = successListener;
     fragment.failureListener = failureListener;
-    if (serialExecutorService != null) {
-      fragment.serialExecutor = new SimpleAsyncTaskExecutor(serialExecutorService);
-    }
-    if (parallelExecutorService != null) {
-      fragment.parallelExecutor = new SimpleAsyncTaskExecutor(parallelExecutorService);
-    }
+    fragment.serialExecutor = Assert.isNotNull(serialExecutorService);
+    fragment.parallelExecutor = Assert.isNotNull(parallelExecutor);
     return fragment;
   }
 
@@ -111,60 +110,51 @@
   public void onDetach() {
     super.onDetach();
     LogUtil.enterBlock("DialerUiTaskFragment.onDetach");
-    taskId = null;
     successListener = null;
     failureListener = null;
+    if (scheduledFuture != null) {
+      scheduledFuture.cancel(false /* mayInterrupt */);
+      scheduledFuture = null;
+    }
   }
 
   void executeSerial(InputT input) {
-    serialExecutor.submit(taskId, new InternalTask(), input);
+    serialExecutor.execute(() -> runTask(input));
+  }
+
+  void executeSerialWithWait(InputT input, long waitMillis) {
+    if (scheduledFuture != null) {
+      LogUtil.i("DialerUiTaskFragment.executeSerialWithWait", "cancelling waiting task");
+      scheduledFuture.cancel(false /* mayInterrupt */);
+    }
+    scheduledFuture =
+        serialExecutor.schedule(() -> runTask(input), waitMillis, TimeUnit.MILLISECONDS);
   }
 
   void executeParallel(InputT input) {
-    parallelExecutor.submit(taskId, new InternalTask(), input);
+    parallelExecutor.execute(() -> runTask(input));
   }
 
   void executeOnCustomExecutor(ExecutorService executor, InputT input) {
-    new SimpleAsyncTaskExecutor(executor).submit(taskId, new InternalTask(), input);
+    executor.execute(() -> runTask(input));
   }
 
-  private final class InternalTask extends AsyncTask<InputT, Void, InternalTaskResult<OutputT>> {
-
-    @SafeVarargs
-    @Override
-    protected final InternalTaskResult<OutputT> doInBackground(InputT... params) {
-      try {
-        return new InternalTaskResult<>(null, worker.doInBackground(params[0]));
-      } catch (Throwable throwable) {
-        LogUtil.e("InternalTask.doInBackground", "task failed", throwable);
-        return new InternalTaskResult<>(throwable, null);
-      }
-    }
-
-    @Override
-    protected void onPostExecute(InternalTaskResult<OutputT> result) {
-      if (result.throwable != null) {
-        if (failureListener == null) {
-          LogUtil.i("InternalTask.onPostExecute", "task failed but UI is dead");
-        } else {
-          failureListener.onFailure(result.throwable);
-        }
-      } else if (successListener == null) {
-        LogUtil.i("InternalTask.onPostExecute", "task succeeded but UI is dead");
+  @WorkerThread
+  private void runTask(@Nullable InputT input) {
+    try {
+      OutputT output = worker.doInBackground(input);
+      if (successListener == null) {
+        LogUtil.i("DialerUiTaskFragment.runTask", "task succeeded but UI is dead");
       } else {
-        successListener.onSuccess(result.result);
+        ThreadUtil.postOnUiThread(() -> successListener.onSuccess(output));
       }
-    }
-  }
-
-  private static class InternalTaskResult<OutputT> {
-
-    private final Throwable throwable;
-    private final OutputT result;
-
-    InternalTaskResult(Throwable throwable, OutputT result) {
-      this.throwable = throwable;
-      this.result = result;
+    } catch (Throwable throwable) {
+      LogUtil.e("DialerUiTaskFragment.runTask", "task failed", throwable);
+      if (failureListener == null) {
+        LogUtil.i("DialerUiTaskFragment.runTask", "task failed but UI is dead");
+      } else {
+        ThreadUtil.postOnUiThread(() -> failureListener.onFailure(throwable));
+      }
     }
   }
 }
diff --git a/java/com/android/dialer/common/concurrent/ThreadUtil.java b/java/com/android/dialer/common/concurrent/ThreadUtil.java
index 21cf463..39b6cce 100644
--- a/java/com/android/dialer/common/concurrent/ThreadUtil.java
+++ b/java/com/android/dialer/common/concurrent/ThreadUtil.java
@@ -28,6 +28,11 @@
     getUiThreadHandler().post(runnable);
   }
 
+  /** Posts a runnable to the UI thread, to be run after the specified amount of time elapses. */
+  public static void postDelayedOnUiThread(Runnable runnable, long delayMillis) {
+    getUiThreadHandler().postDelayed(runnable, delayMillis);
+  }
+
   /** Gets a handler which uses the main looper. */
   public static Handler getUiThreadHandler() {
     if (mainThreadHandler == null) {
diff --git a/java/com/android/dialer/compat/CompatUtils.java b/java/com/android/dialer/compat/CompatUtils.java
index 673cb70..351c89a 100644
--- a/java/com/android/dialer/compat/CompatUtils.java
+++ b/java/com/android/dialer/compat/CompatUtils.java
@@ -16,15 +16,9 @@
 package com.android.dialer.compat;
 
 import android.os.Build;
-import android.support.annotation.Nullable;
-import android.text.TextUtils;
-import android.util.Log;
-import java.lang.reflect.InvocationTargetException;
 
 public final class CompatUtils {
 
-  private static final String TAG = CompatUtils.class.getSimpleName();
-
   /** PrioritizedMimeType is added in API level 23. */
   public static boolean hasPrioritizedMimeType() {
     return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.M) >= Build.VERSION_CODES.M;
@@ -70,153 +64,4 @@
   public static boolean isCallSubjectCompatible() {
     return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.LOLLIPOP) >= Build.VERSION_CODES.M;
   }
-
-  /**
-   * Determines if this version is compatible with a default dialer. Can also force the version to
-   * be lower through {@link SdkVersionOverride}.
-   *
-   * @return {@code true} if default dialer is a feature on this device, {@code false} otherwise.
-   */
-  public static boolean isDefaultDialerCompatible() {
-    return isMarshmallowCompatible();
-  }
-
-  /**
-   * Determines if this version is compatible with Lollipop Mr1-specific APIs. Can also force the
-   * version to be lower through SdkVersionOverride.
-   *
-   * @return {@code true} if runtime sdk is compatible with Lollipop MR1, {@code false} otherwise.
-   */
-  public static boolean isLollipopMr1Compatible() {
-    return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.LOLLIPOP_MR1)
-        >= Build.VERSION_CODES.LOLLIPOP_MR1;
-  }
-
-  /**
-   * Determines if this version is compatible with Marshmallow-specific APIs. Can also force the
-   * version to be lower through SdkVersionOverride.
-   *
-   * @return {@code true} if runtime sdk is compatible with Marshmallow, {@code false} otherwise.
-   */
-  public static boolean isMarshmallowCompatible() {
-    return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.LOLLIPOP) >= Build.VERSION_CODES.M;
-  }
-
-  /**
-   * Determines if the given class is available. Can be used to check if system apis exist at
-   * runtime.
-   *
-   * @param className the name of the class to look for.
-   * @return {@code true} if the given class is available, {@code false} otherwise or if className
-   *     is empty.
-   */
-  public static boolean isClassAvailable(@Nullable String className) {
-    if (TextUtils.isEmpty(className)) {
-      return false;
-    }
-    try {
-      Class.forName(className);
-      return true;
-    } catch (ClassNotFoundException e) {
-      return false;
-    } catch (Throwable t) {
-      Log.e(
-          TAG,
-          "Unexpected exception when checking if class:" + className + " exists at " + "runtime",
-          t);
-      return false;
-    }
-  }
-
-  /**
-   * Determines if the given class's method is available to call. Can be used to check if system
-   * apis exist at runtime.
-   *
-   * @param className the name of the class to look for
-   * @param methodName the name of the method to look for
-   * @param parameterTypes the needed parameter types for the method to look for
-   * @return {@code true} if the given class is available, {@code false} otherwise or if className
-   *     or methodName are empty.
-   */
-  public static boolean isMethodAvailable(
-      @Nullable String className, @Nullable String methodName, Class<?>... parameterTypes) {
-    if (TextUtils.isEmpty(className) || TextUtils.isEmpty(methodName)) {
-      return false;
-    }
-
-    try {
-      Class.forName(className).getMethod(methodName, parameterTypes);
-      return true;
-    } catch (ClassNotFoundException | NoSuchMethodException e) {
-      Log.v(TAG, "Could not find method: " + className + "#" + methodName);
-      return false;
-    } catch (Throwable t) {
-      Log.e(
-          TAG,
-          "Unexpected exception when checking if method: "
-              + className
-              + "#"
-              + methodName
-              + " exists at runtime",
-          t);
-      return false;
-    }
-  }
-
-  /**
-   * Invokes a given class's method using reflection. Can be used to call system apis that exist at
-   * runtime but not in the SDK.
-   *
-   * @param instance The instance of the class to invoke the method on.
-   * @param methodName The name of the method to invoke.
-   * @param parameterTypes The needed parameter types for the method.
-   * @param parameters The parameter values to pass into the method.
-   * @return The result of the invocation or {@code null} if instance or methodName are empty, or if
-   *     the reflection fails.
-   */
-  @Nullable
-  public static Object invokeMethod(
-      @Nullable Object instance,
-      @Nullable String methodName,
-      Class<?>[] parameterTypes,
-      Object[] parameters) {
-    if (instance == null || TextUtils.isEmpty(methodName)) {
-      return null;
-    }
-
-    String className = instance.getClass().getName();
-    try {
-      return Class.forName(className)
-          .getMethod(methodName, parameterTypes)
-          .invoke(instance, parameters);
-    } catch (ClassNotFoundException
-        | NoSuchMethodException
-        | IllegalArgumentException
-        | IllegalAccessException
-        | InvocationTargetException e) {
-      Log.v(TAG, "Could not invoke method: " + className + "#" + methodName);
-      return null;
-    } catch (Throwable t) {
-      Log.e(
-          TAG,
-          "Unexpected exception when invoking method: "
-              + className
-              + "#"
-              + methodName
-              + " at runtime",
-          t);
-      return null;
-    }
-  }
-
-  /**
-   * Determines if this version is compatible with Lollipop-specific APIs. Can also force the
-   * version to be lower through SdkVersionOverride.
-   *
-   * @return {@code true} if call subject is a feature on this device, {@code false} otherwise.
-   */
-  public static boolean isLollipopCompatible() {
-    return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.LOLLIPOP)
-        >= Build.VERSION_CODES.LOLLIPOP;
-  }
 }
diff --git a/java/com/android/dialer/configprovider/AndroidManifest.xml b/java/com/android/dialer/configprovider/AndroidManifest.xml
new file mode 100644
index 0000000..7729971
--- /dev/null
+++ b/java/com/android/dialer/configprovider/AndroidManifest.xml
@@ -0,0 +1,23 @@
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialer.configprovider">
+
+  <application>
+    <service android:name=".SharedPrefConfigProvider$Service"/>
+  </application>
+
+</manifest>
\ No newline at end of file
diff --git a/java/com/android/dialer/configprovider/ConfigProvider.java b/java/com/android/dialer/configprovider/ConfigProvider.java
new file mode 100644
index 0000000..886a69e
--- /dev/null
+++ b/java/com/android/dialer/configprovider/ConfigProvider.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2016 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.dialer.configprovider;
+
+/** Gets config values from the container application. */
+public interface ConfigProvider {
+
+  String getString(String key, String defaultValue);
+
+  long getLong(String key, long defaultValue);
+
+  boolean getBoolean(String key, boolean defaultValue);
+}
diff --git a/java/com/android/dialer/configprovider/ConfigProviderBindings.java b/java/com/android/dialer/configprovider/ConfigProviderBindings.java
new file mode 100644
index 0000000..0bf0e75
--- /dev/null
+++ b/java/com/android/dialer/configprovider/ConfigProviderBindings.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2016 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.dialer.configprovider;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
+import android.support.v4.os.UserManagerCompat;
+import com.android.dialer.common.Assert;
+
+/** Accessor for getting a {@link ConfigProvider}. */
+public class ConfigProviderBindings {
+
+  private static ConfigProvider configProvider;
+  private static ConfigProvider configProviderStub;
+
+  public static ConfigProvider get(@NonNull Context context) {
+    Assert.isNotNull(context);
+    if (configProvider != null) {
+      return configProvider;
+    }
+    if (!UserManagerCompat.isUserUnlocked(context)) {
+      if (configProviderStub == null) {
+        configProviderStub = new ConfigProviderStub();
+      }
+      return configProviderStub;
+    }
+    configProvider = ConfigProviderComponent.get(context).getConfigProvider();
+    return configProvider;
+  }
+
+  @VisibleForTesting
+  public static void setForTesting(@Nullable ConfigProvider configProviderForTesting) {
+    configProvider = configProviderForTesting;
+  }
+
+  private static class ConfigProviderStub implements ConfigProvider {
+    @Override
+    public String getString(String key, String defaultValue) {
+      return defaultValue;
+    }
+
+    @Override
+    public long getLong(String key, long defaultValue) {
+      return defaultValue;
+    }
+
+    @Override
+    public boolean getBoolean(String key, boolean defaultValue) {
+      return defaultValue;
+    }
+  }
+}
diff --git a/java/com/android/dialer/configprovider/ConfigProviderComponent.java b/java/com/android/dialer/configprovider/ConfigProviderComponent.java
new file mode 100644
index 0000000..e26a5cf
--- /dev/null
+++ b/java/com/android/dialer/configprovider/ConfigProviderComponent.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2017 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.dialer.configprovider;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import com.android.dialer.inject.HasRootComponent;
+import dagger.Subcomponent;
+
+/** Dagger component to provide a {@link ConfigProvider}. */
+@Subcomponent
+public abstract class ConfigProviderComponent {
+
+  @NonNull
+  public abstract ConfigProvider getConfigProvider();
+
+  public static ConfigProviderComponent get(Context context) {
+    return ((ConfigProviderComponent.HasComponent)
+            ((HasRootComponent) context.getApplicationContext()).component())
+        .configProviderComponent();
+  }
+
+  /** Used to refer to the root application component. */
+  public interface HasComponent {
+    ConfigProviderComponent configProviderComponent();
+  }
+}
diff --git a/java/com/android/dialer/configprovider/SharedPrefConfigProvider.java b/java/com/android/dialer/configprovider/SharedPrefConfigProvider.java
new file mode 100644
index 0000000..fad25a4
--- /dev/null
+++ b/java/com/android/dialer/configprovider/SharedPrefConfigProvider.java
@@ -0,0 +1,131 @@
+/*
+ * Copyright (C) 2017 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.dialer.configprovider;
+
+import android.app.IntentService;
+import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.Editor;
+import android.os.StrictMode;
+import android.support.annotation.Nullable;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.inject.ApplicationContext;
+import com.android.dialer.util.DialerUtils;
+import javax.inject.Inject;
+
+/**
+ * {@link ConfigProvider} which uses a shared preferences file.
+ *
+ * <p>Config flags can be written using adb (with root access), for example:
+ *
+ * <pre>
+ *   adb root
+ *   adb shell am startservice -n \
+ *     'com.android.dialer/.configprovider.SharedPrefConfigProvider\$Service' \
+ *     --ez boolean_flag_name flag_value
+ * </pre>
+ *
+ * <p>(For longs use --el and for strings use --es.)
+ *
+ * <p>Flags can be viewed with:
+ *
+ * <pre>
+ *   adb shell cat \
+ *     /data/user_de/0/com.android.dialer/shared_prefs/com.android.dialer_preferences.xml
+ * </pre>
+ */
+class SharedPrefConfigProvider implements ConfigProvider {
+  private static final String PREF_PREFIX = "config_provider_prefs_";
+
+  private final Context appContext;
+
+  @Inject
+  SharedPrefConfigProvider(@ApplicationContext Context appContext) {
+    this.appContext = appContext;
+  }
+
+  /** Service to write values into {@link SharedPrefConfigProvider} using adb. */
+  public static class Service extends IntentService {
+
+    public Service() {
+      super("SharedPrefConfigProvider.Service");
+    }
+
+    @Override
+    protected void onHandleIntent(@Nullable Intent intent) {
+      if (intent == null || intent.getExtras() == null || intent.getExtras().size() != 1) {
+        LogUtil.w("SharedPrefConfigProvider.Service.onHandleIntent", "must set exactly one extra");
+        return;
+      }
+      String key = intent.getExtras().keySet().iterator().next();
+      Object value = intent.getExtras().get(key);
+      put(key, value);
+    }
+
+    private void put(String key, Object value) {
+      Editor editor = getSharedPrefs(getApplicationContext()).edit();
+      String prefixedKey = PREF_PREFIX + key;
+      if (value instanceof Boolean) {
+        editor.putBoolean(prefixedKey, (Boolean) value);
+      } else if (value instanceof Long) {
+        editor.putLong(prefixedKey, (Long) value);
+      } else if (value instanceof String) {
+        editor.putString(prefixedKey, (String) value);
+      } else {
+        throw Assert.createAssertionFailException("unsupported extra type: " + value.getClass());
+      }
+      editor.apply();
+    }
+  }
+
+  @Override
+  public String getString(String key, String defaultValue) {
+    return bypassStrictMode(
+        () -> getSharedPrefs(appContext).getString(PREF_PREFIX + key, defaultValue));
+  }
+
+  @Override
+  public long getLong(String key, long defaultValue) {
+    return bypassStrictMode(
+        () -> getSharedPrefs(appContext).getLong(PREF_PREFIX + key, defaultValue));
+  }
+
+  @Override
+  public boolean getBoolean(String key, boolean defaultValue) {
+    return bypassStrictMode(
+        () -> getSharedPrefs(appContext).getBoolean(PREF_PREFIX + key, defaultValue));
+  }
+
+  private static SharedPreferences getSharedPrefs(Context appContext) {
+    return DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(appContext);
+  }
+
+  private interface Provider<T> {
+    T get();
+  }
+
+  // Reading shared prefs on the main thread is generally safe since a single instance is cached.
+  private static <T> T bypassStrictMode(Provider<T> provider) {
+    StrictMode.ThreadPolicy oldPolicy = StrictMode.allowThreadDiskReads();
+    try {
+      return provider.get();
+    } finally {
+      StrictMode.setThreadPolicy(oldPolicy);
+    }
+  }
+}
diff --git a/java/com/android/dialer/configprovider/SharedPrefConfigProviderModule.java b/java/com/android/dialer/configprovider/SharedPrefConfigProviderModule.java
new file mode 100644
index 0000000..fe1c908
--- /dev/null
+++ b/java/com/android/dialer/configprovider/SharedPrefConfigProviderModule.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2017 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.dialer.configprovider;
+
+import dagger.Binds;
+import dagger.Module;
+import javax.inject.Singleton;
+
+/** Dagger module providing {@link ConfigProvider} based on shared preferences. */
+@Module
+public abstract class SharedPrefConfigProviderModule {
+
+  @Binds
+  @Singleton
+  abstract ConfigProvider to(SharedPrefConfigProvider impl);
+}
diff --git a/java/com/android/dialer/constants/Constants.java b/java/com/android/dialer/constants/Constants.java
index d92c0bc..076393e 100644
--- a/java/com/android/dialer/constants/Constants.java
+++ b/java/com/android/dialer/constants/Constants.java
@@ -53,5 +53,8 @@
   @NonNull
   public abstract String getFileProviderAuthority();
 
+  @NonNull
+  public abstract String getAnnotatedCallLogProviderAuthority();
+
   protected Constants() {}
 }
diff --git a/java/com/android/dialer/constants/ScheduledJobIds.java b/java/com/android/dialer/constants/ScheduledJobIds.java
index 2fed4ef..a54adc7 100644
--- a/java/com/android/dialer/constants/ScheduledJobIds.java
+++ b/java/com/android/dialer/constants/ScheduledJobIds.java
@@ -32,6 +32,7 @@
   public static final int VVM_TASK_SCHEDULER_JOB = 200;
   public static final int VVM_STATUS_CHECK_JOB = 201;
   public static final int VVM_DEVICE_PROVISIONED_JOB = 202;
+  public static final int VVM_TRANSCRIPTION_JOB = 203;
 
   public static final int VOIP_REGISTRATION = 300;
 
diff --git a/java/com/android/dialer/constants/TrafficStatsTags.java b/java/com/android/dialer/constants/TrafficStatsTags.java
new file mode 100644
index 0000000..13c3e2c
--- /dev/null
+++ b/java/com/android/dialer/constants/TrafficStatsTags.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2017 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.dialer.constants;
+
+/** Registry of tags for {@link android.net.TrafficStats#setThreadStatsTag(int)} */
+public class TrafficStatsTags {
+  public static final int CONTACT_PHOTO_DOWNLOAD_TAG = 0x0001;
+  public static final int NEARBY_PLACES_TAG = 0xaaaa;
+  public static final int REVERSE_LOOKUP_CONTACT_TAG = 0xbaaa;
+  public static final int REVERSE_LOOKUP_IMAGE_TAG = 0xbaab;
+  public static final int DOWNLOAD_LOCATION_MAP_TAG = 0xd000;
+  public static final int REVERSE_GEOCODE_TAG = 0xd001;
+  public static final int VISUAL_VOICEMAIL_TAG = 0xd002;
+  public static final int DIALER_VOIP_TAG = 0xd003;
+}
diff --git a/java/com/android/dialer/constants/aospdialer/ConstantsImpl.java b/java/com/android/dialer/constants/aospdialer/ConstantsImpl.java
index 6b78b98..1111732 100644
--- a/java/com/android/dialer/constants/aospdialer/ConstantsImpl.java
+++ b/java/com/android/dialer/constants/aospdialer/ConstantsImpl.java
@@ -34,4 +34,10 @@
   public String getFileProviderAuthority() {
     return "com.android.dialer.files";
   }
+
+  @NonNull
+  @Override
+  public String getAnnotatedCallLogProviderAuthority() {
+    return "com.android.dialer.annotatedcalllog";
+  }
 }
diff --git a/java/com/android/dialer/contactactions/AndroidManifest.xml b/java/com/android/dialer/contactactions/AndroidManifest.xml
new file mode 100644
index 0000000..a64066e
--- /dev/null
+++ b/java/com/android/dialer/contactactions/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<manifest package="com.android.dialer.contactactions"/>
diff --git a/java/com/android/dialer/contactactions/ContactActionBottomSheet.java b/java/com/android/dialer/contactactions/ContactActionBottomSheet.java
new file mode 100644
index 0000000..4718ff0
--- /dev/null
+++ b/java/com/android/dialer/contactactions/ContactActionBottomSheet.java
@@ -0,0 +1,136 @@
+/*
+ * Copyright (C) 2017 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.dialer.contactactions;
+
+import android.content.Context;
+import android.net.Uri;
+import android.os.Bundle;
+import android.support.design.widget.BottomSheetDialog;
+import android.text.TextUtils;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.TextView;
+import com.android.contacts.common.ContactPhotoManager;
+import com.android.dialer.common.Assert;
+import com.android.dialer.dialercontact.DialerContact;
+import java.util.List;
+
+/**
+ * {@link BottomSheetDialog} used for building a list of contact actions in a bottom sheet menu.
+ *
+ * <p>{@link #show(Context, DialerContact, List)} should be used to create and display the menu.
+ * Modules are built using {@link ContactActionModule} and some defaults are provided by {@link
+ * IntentModule} and {@link DividerModule}.
+ */
+public class ContactActionBottomSheet extends BottomSheetDialog implements OnClickListener {
+
+  private final List<ContactActionModule> modules;
+  private final DialerContact contact;
+
+  private ContactActionBottomSheet(
+      Context context, DialerContact contact, List<ContactActionModule> modules) {
+    super(context);
+    this.modules = modules;
+    this.contact = contact;
+    setContentView(LayoutInflater.from(context).inflate(R.layout.sheet_layout, null));
+  }
+
+  public static ContactActionBottomSheet show(
+      Context context, DialerContact contact, List<ContactActionModule> modules) {
+    ContactActionBottomSheet sheet = new ContactActionBottomSheet(context, contact, modules);
+    sheet.show();
+    return sheet;
+  }
+
+  @Override
+  protected void onCreate(Bundle bundle) {
+    super.onCreate(bundle);
+    LinearLayout container = Assert.isNotNull(findViewById(R.id.action_container));
+    container.addView(getContactView(container));
+
+    for (ContactActionModule module : modules) {
+      if (module instanceof DividerModule) {
+        container.addView(getDividerView(container));
+      } else {
+        container.addView(getModuleView(container, module));
+      }
+    }
+  }
+
+  // TODO: add on click action to contact.
+  private View getContactView(ViewGroup container) {
+    LayoutInflater inflater = LayoutInflater.from(getContext());
+    View contactView = inflater.inflate(R.layout.contact_layout, container, false);
+
+    ContactPhotoManager.getInstance(getContext())
+        .loadDialerThumbnailOrPhoto(
+            contactView.findViewById(R.id.quick_contact_photo),
+            contact.hasContactUri() ? Uri.parse(contact.getContactUri()) : null,
+            contact.getPhotoId(),
+            contact.hasPhotoUri() ? Uri.parse(contact.getPhotoUri()) : null,
+            contact.getNameOrNumber(),
+            contact.getContactType());
+
+    TextView nameView = contactView.findViewById(R.id.contact_name);
+    TextView numberView = contactView.findViewById(R.id.phone_number);
+
+    nameView.setText(contact.getNameOrNumber());
+    if (!TextUtils.isEmpty(contact.getDisplayNumber())) {
+      numberView.setVisibility(View.VISIBLE);
+      String secondaryInfo =
+          TextUtils.isEmpty(contact.getNumberLabel())
+              ? contact.getDisplayNumber()
+              : getContext()
+                  .getString(
+                      com.android.contacts.common.R.string.call_subject_type_and_number,
+                      contact.getNumberLabel(),
+                      contact.getDisplayNumber());
+      numberView.setText(secondaryInfo);
+    } else {
+      numberView.setVisibility(View.GONE);
+      numberView.setText(null);
+    }
+    return contactView;
+  }
+
+  private View getDividerView(ViewGroup container) {
+    LayoutInflater inflater = LayoutInflater.from(getContext());
+    return inflater.inflate(R.layout.divider_layout, container, false);
+  }
+
+  private View getModuleView(ViewGroup container, ContactActionModule module) {
+    LayoutInflater inflater = LayoutInflater.from(getContext());
+    View moduleView = inflater.inflate(R.layout.module_layout, container, false);
+    ((TextView) moduleView.findViewById(R.id.module_text)).setText(module.getStringId());
+    ((ImageView) moduleView.findViewById(R.id.module_image))
+        .setImageResource(module.getDrawableId());
+    moduleView.setOnClickListener(this);
+    moduleView.setTag(module);
+    return moduleView;
+  }
+
+  @Override
+  public void onClick(View view) {
+    if (((ContactActionModule) view.getTag()).onClick()) {
+      dismiss();
+    }
+  }
+}
diff --git a/java/com/android/dialer/contactactions/ContactActionModule.java b/java/com/android/dialer/contactactions/ContactActionModule.java
new file mode 100644
index 0000000..8089edc
--- /dev/null
+++ b/java/com/android/dialer/contactactions/ContactActionModule.java
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2017 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.dialer.contactactions;
+
+import android.support.annotation.DrawableRes;
+import android.support.annotation.StringRes;
+
+/**
+ * Modules used to build {@link ContactActionBottomSheet}.
+ *
+ * <p>Contacts as they relate to this class should be thought of as any entity that an action can be
+ * performed on like unknown/restricted contacts, along with saved and non-saved contacts.
+ */
+public interface ContactActionModule {
+
+  @StringRes
+  int getStringId();
+
+  @DrawableRes
+  int getDrawableId();
+
+  /** @return true if the bottom sheet should close, false otherwise */
+  boolean onClick();
+}
diff --git a/java/com/android/dialer/contactactions/DividerModule.java b/java/com/android/dialer/contactactions/DividerModule.java
new file mode 100644
index 0000000..aabd160
--- /dev/null
+++ b/java/com/android/dialer/contactactions/DividerModule.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2017 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.dialer.contactactions;
+
+import com.android.dialer.common.Assert;
+
+/**
+ * A module that inserts a grey line divider into {@link ContactActionModule}. Layout it provided in
+ * R.layout.divider_layout.xml
+ */
+public final class DividerModule implements ContactActionModule {
+
+  @Override
+  public int getStringId() {
+    throw Assert.createUnsupportedOperationFailException();
+  }
+
+  @Override
+  public int getDrawableId() {
+    throw Assert.createUnsupportedOperationFailException();
+  }
+
+  @Override
+  public boolean onClick() {
+    throw Assert.createUnsupportedOperationFailException();
+  }
+}
diff --git a/java/com/android/dialer/contactactions/IntentModule.java b/java/com/android/dialer/contactactions/IntentModule.java
new file mode 100644
index 0000000..201f521
--- /dev/null
+++ b/java/com/android/dialer/contactactions/IntentModule.java
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2017 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.dialer.contactactions;
+
+import android.content.Context;
+import android.content.Intent;
+import android.support.annotation.DrawableRes;
+import android.support.annotation.StringRes;
+import com.android.dialer.callintent.CallInitiationType.Type;
+import com.android.dialer.callintent.CallIntentBuilder;
+
+/**
+ * {@link ContactActionModule} useful for making easy to build modules based on starting an intent.
+ */
+public class IntentModule implements ContactActionModule {
+
+  private final Context context;
+  private final Intent intent;
+  private final @StringRes int text;
+  private final @DrawableRes int image;
+
+  public IntentModule(Context context, Intent intent, @StringRes int text, @DrawableRes int image) {
+    this.context = context;
+    this.intent = intent;
+    this.text = text;
+    this.image = image;
+  }
+
+  @Override
+  public int getStringId() {
+    return text;
+  }
+
+  @Override
+  public int getDrawableId() {
+    return image;
+  }
+
+  @Override
+  public boolean onClick() {
+    context.startActivity(intent);
+    return true;
+  }
+
+  public static IntentModule newCallModule(Context context, String number, Type initiationType) {
+    return new IntentModule(
+        context,
+        new CallIntentBuilder(number, initiationType).build(),
+        R.string.call,
+        R.drawable.quantum_ic_call_white_24);
+  }
+
+  public static IntentModule newVideoCallModule(
+      Context context, String number, Type initiationType) {
+    return new IntentModule(
+        context,
+        new CallIntentBuilder(number, initiationType).setIsVideoCall(true).build(),
+        R.string.video_call,
+        R.drawable.quantum_ic_videocam_white_24);
+  }
+}
diff --git a/java/com/android/dialer/contactactions/res/layout/contact_layout.xml b/java/com/android/dialer/contactactions/res/layout/contact_layout.xml
new file mode 100644
index 0000000..bf32971
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/layout/contact_layout.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 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:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:layout_marginTop="8dp"
+    android:layout_marginBottom="12dp"
+    android:layout_marginEnd="8dp">
+
+  <QuickContactBadge
+      android:id="@+id/quick_contact_photo"
+      android:layout_width="@dimen/contact_actions_image_size"
+      android:layout_height="@dimen/contact_actions_image_size"
+      android:layout_marginStart="@dimen/contact_actions_image_margin"
+      android:layout_marginEnd="@dimen/contact_actions_image_margin"
+      android:padding="4dp"
+      android:focusable="true"/>
+
+  <LinearLayout
+      android:orientation="vertical"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:gravity="center_vertical">
+
+    <TextView
+        android:id="@+id/contact_name"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        style="@style/PrimaryText"/>
+
+    <TextView
+        android:id="@+id/phone_number"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="2dp"
+        style="@style/SecondaryText"/>
+  </LinearLayout>
+</LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactactions/res/layout/divider_layout.xml b/java/com/android/dialer/contactactions/res/layout/divider_layout.xml
new file mode 100644
index 0000000..fdee50e
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/layout/divider_layout.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<View
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="1dp"
+    android:layout_marginTop="8dp"
+    android:layout_marginBottom="8dp"
+    android:background="#12000000"/>
diff --git a/java/com/android/dialer/contactactions/res/layout/module_layout.xml b/java/com/android/dialer/contactactions/res/layout/module_layout.xml
new file mode 100644
index 0000000..9aee679
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/layout/module_layout.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 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:id="@+id/module_container"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="?android:attr/selectableItemBackground">
+
+  <ImageView
+      android:id="@+id/module_image"
+      android:layout_width="@dimen/contact_actions_image_size"
+      android:layout_height="@dimen/contact_actions_image_size"
+      android:layout_marginStart="@dimen/contact_actions_image_margin"
+      android:layout_marginEnd="@dimen/contact_actions_image_margin"
+      android:tint="@color/dialer_secondary_text_color"
+      android:scaleType="center"/>
+
+  <TextView
+      android:id="@+id/module_text"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_gravity="center_vertical"
+      style="@style/PrimaryText"/>
+</LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactactions/res/layout/sheet_layout.xml b/java/com/android/dialer/contactactions/res/layout/sheet_layout.xml
new file mode 100644
index 0000000..6984367
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/layout/sheet_layout.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 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:id="@+id/action_container"
+    android:orientation="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:paddingTop="4dp"
+    android:paddingBottom="8dp"/>
diff --git a/java/com/android/dialer/contactactions/res/values/dimens.xml b/java/com/android/dialer/contactactions/res/values/dimens.xml
new file mode 100644
index 0000000..47bf804
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/values/dimens.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<resources>
+  <dimen name="contact_actions_image_size">48dp</dimen>
+  <dimen name="contact_actions_image_margin">12dp</dimen>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactsfragment/AddContactViewHolder.java b/java/com/android/dialer/contactsfragment/AddContactViewHolder.java
new file mode 100644
index 0000000..09c222e
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/AddContactViewHolder.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2017 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.dialer.contactsfragment;
+
+import android.content.Context;
+import android.support.v7.widget.RecyclerView.ViewHolder;
+import android.view.View;
+import android.view.View.OnClickListener;
+import com.android.dialer.util.DialerUtils;
+import com.android.dialer.util.IntentUtil;
+
+/** ViewHolder for {@link ContactsFragment} to display add contact row. */
+final class AddContactViewHolder extends ViewHolder implements OnClickListener {
+
+  private final Context context;
+
+  AddContactViewHolder(View view) {
+    super(view);
+    view.setOnClickListener(this);
+    context = view.getContext();
+  }
+
+  @Override
+  public void onClick(View v) {
+    DialerUtils.startActivityWithErrorToast(
+        context, IntentUtil.getNewContactIntent(), R.string.add_contact_not_available);
+  }
+}
diff --git a/java/com/android/dialer/contactsfragment/ContactViewHolder.java b/java/com/android/dialer/contactsfragment/ContactViewHolder.java
index 5df106d..586e22a 100644
--- a/java/com/android/dialer/contactsfragment/ContactViewHolder.java
+++ b/java/com/android/dialer/contactsfragment/ContactViewHolder.java
@@ -16,6 +16,7 @@
 
 package com.android.dialer.contactsfragment;
 
+import android.content.Context;
 import android.net.Uri;
 import android.provider.ContactsContract.QuickContact;
 import android.support.v7.widget.RecyclerView;
@@ -25,6 +26,8 @@
 import android.widget.QuickContactBadge;
 import android.widget.TextView;
 import com.android.dialer.common.Assert;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 
 /** View holder for a contact. */
 final class ContactViewHolder extends RecyclerView.ViewHolder implements OnClickListener {
@@ -32,12 +35,14 @@
   private final TextView header;
   private final TextView name;
   private final QuickContactBadge photo;
+  private final Context context;
 
   private String headerText;
   private Uri contactUri;
 
   public ContactViewHolder(View itemView) {
     super(itemView);
+    context = itemView.getContext();
     itemView.findViewById(R.id.click_target).setOnClickListener(this);
     header = (TextView) itemView.findViewById(R.id.header);
     name = (TextView) itemView.findViewById(R.id.contact_name);
@@ -60,6 +65,10 @@
     name.setText(displayName);
     header.setText(headerText);
     header.setVisibility(showHeader ? View.VISIBLE : View.INVISIBLE);
+
+    Logger.get(context)
+        .logQuickContactOnTouch(
+            photo, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CONTACTS_FRAGMENT_BADGE, true);
   }
 
   public QuickContactBadge getPhoto() {
@@ -76,6 +85,8 @@
 
   @Override
   public void onClick(View v) {
+    Logger.get(context)
+        .logInteraction(InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CONTACTS_FRAGMENT_ITEM);
     QuickContact.showQuickContact(
         photo.getContext(), photo, contactUri, QuickContact.MODE_LARGE, null /* excludeMimes */);
   }
diff --git a/java/com/android/dialer/contactsfragment/ContactsAdapter.java b/java/com/android/dialer/contactsfragment/ContactsAdapter.java
index 4692eff..d8ee3d1 100644
--- a/java/com/android/dialer/contactsfragment/ContactsAdapter.java
+++ b/java/com/android/dialer/contactsfragment/ContactsAdapter.java
@@ -20,16 +20,29 @@
 import android.database.Cursor;
 import android.net.Uri;
 import android.provider.ContactsContract.Contacts;
+import android.support.annotation.IntDef;
 import android.support.v4.util.ArrayMap;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
+import android.view.View;
 import android.view.ViewGroup;
-import android.widget.TextView;
 import com.android.contacts.common.ContactPhotoManager;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.dialer.common.Assert;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
 
 /** List adapter for the union of all contacts associated with every account on the device. */
-final class ContactsAdapter extends RecyclerView.Adapter<ContactViewHolder> {
+final class ContactsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
+
+  private static final int UNKNOWN_VIEW_TYPE = 0;
+  private static final int ADD_CONTACT_VIEW_TYPE = 1;
+  private static final int CONTACT_VIEW_TYPE = 2;
+
+  /** An Enum for the different row view types shown by this adapter. */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({UNKNOWN_VIEW_TYPE, ADD_CONTACT_VIEW_TYPE, CONTACT_VIEW_TYPE})
+  @interface ContactsViewType {}
 
   private final ArrayMap<ContactViewHolder, Integer> holderMap = new ArrayMap<>();
   private final Context context;
@@ -41,7 +54,7 @@
   // Number of contacts that correspond to each header in {@code headers}.
   private final int[] counts;
 
-  public ContactsAdapter(Context context, Cursor cursor) {
+  ContactsAdapter(Context context, Cursor cursor) {
     this.context = context;
     this.cursor = cursor;
     headers = cursor.getExtras().getStringArray(Contacts.EXTRA_ADDRESS_BOOK_INDEX_TITLES);
@@ -49,15 +62,31 @@
   }
 
   @Override
-  public ContactViewHolder onCreateViewHolder(ViewGroup parent, int position) {
-    return new ContactViewHolder(
-        LayoutInflater.from(context).inflate(R.layout.contact_row, parent, false));
+  public RecyclerView.ViewHolder onCreateViewHolder(
+      ViewGroup parent, @ContactsViewType int viewType) {
+    switch (viewType) {
+      case ADD_CONTACT_VIEW_TYPE:
+        return new AddContactViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.add_contact_row, parent, false));
+      case CONTACT_VIEW_TYPE:
+        return new ContactViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.contact_row, parent, false));
+      case UNKNOWN_VIEW_TYPE:
+      default:
+        throw Assert.createIllegalStateFailException("Invalid view type: " + viewType);
+    }
   }
 
   @Override
-  public void onBindViewHolder(ContactViewHolder contactViewHolder, int position) {
+  public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int position) {
+    if (viewHolder instanceof AddContactViewHolder) {
+      return;
+    }
+
+    ContactViewHolder contactViewHolder = (ContactViewHolder) viewHolder;
     holderMap.put(contactViewHolder, position);
-    cursor.moveToPosition(position);
+    // Cursor should be offset by 1 because of add contact row
+    cursor.moveToPosition(position - 1);
 
     String name = getDisplayName(cursor);
     String header = getHeaderString(position);
@@ -70,7 +99,7 @@
             getPhotoId(cursor),
             getPhotoUri(cursor),
             name,
-            0);
+            LetterTileDrawable.TYPE_DEFAULT);
 
     String photoDescription =
         context.getString(com.android.contacts.common.R.string.description_quick_contact_for, name);
@@ -79,44 +108,36 @@
     // Always show the view holder's header if it's the first item in the list. Otherwise, compare
     // it to the previous element and only show the anchored header if the row elements fall into
     // the same sublists.
-    if (position == 0) {
-      contactViewHolder.bind(header, name, contactUri, true);
-    } else {
-      boolean showHeader = !header.equals(getHeaderString(position - 1));
-      contactViewHolder.bind(header, name, contactUri, showHeader);
+    boolean showHeader = position == 0 || !header.equals(getHeaderString(position - 1));
+    contactViewHolder.bind(header, name, contactUri, showHeader);
+  }
+
+  @Override
+  public @ContactsViewType int getItemViewType(int position) {
+    return position == 0 ? ADD_CONTACT_VIEW_TYPE : CONTACT_VIEW_TYPE;
+  }
+
+  @Override
+  public void onViewRecycled(RecyclerView.ViewHolder contactViewHolder) {
+    super.onViewRecycled(contactViewHolder);
+    if (contactViewHolder instanceof ContactViewHolder) {
+      holderMap.remove(contactViewHolder);
     }
   }
 
   public void refreshHeaders() {
     for (ContactViewHolder holder : holderMap.keySet()) {
-      onBindViewHolder(holder, holderMap.get(holder));
+      int position = holderMap.get(holder);
+      boolean showHeader =
+          position == 0 || !getHeaderString(position).equals(getHeaderString(position - 1));
+      int visibility = showHeader ? View.VISIBLE : View.INVISIBLE;
+      holder.getHeaderView().setVisibility(visibility);
     }
   }
 
   @Override
   public int getItemCount() {
-    return cursor == null ? 0 : cursor.getCount();
-  }
-
-  public String getHeader(int position) {
-    return getHolderAt(position).getHeader();
-  }
-
-  public TextView getHeaderView(int position) {
-    return getHolderAt(position).getHeaderView();
-  }
-
-  public void setHeaderVisibility(int position, int visibility) {
-    getHolderAt(position).getHeaderView().setVisibility(visibility);
-  }
-
-  private ContactViewHolder getHolderAt(int position) {
-    for (ContactViewHolder holder : holderMap.keySet()) {
-      if (holderMap.get(holder) == position) {
-        return holder;
-      }
-    }
-    throw Assert.createIllegalStateFailException("No holder for position: " + position);
+    return (cursor == null ? 0 : cursor.getCount()) + 1; // add contact
   }
 
   private static String getDisplayName(Cursor cursor) {
@@ -138,7 +159,12 @@
     return Contacts.getLookupUri(contactId, lookupKey);
   }
 
-  private String getHeaderString(int position) {
+  public String getHeaderString(int position) {
+    if (position == 0) {
+      return "+";
+    }
+    position--;
+
     int index = -1;
     int sum = 0;
     while (sum <= position) {
diff --git a/java/com/android/dialer/contactsfragment/ContactsCursorLoader.java b/java/com/android/dialer/contactsfragment/ContactsCursorLoader.java
index 6d4d210..a22f7eb 100644
--- a/java/com/android/dialer/contactsfragment/ContactsCursorLoader.java
+++ b/java/com/android/dialer/contactsfragment/ContactsCursorLoader.java
@@ -29,7 +29,7 @@
   public static final int CONTACT_PHOTO_URI = 3;
   public static final int CONTACT_LOOKUP_KEY = 4;
 
-  public static final String[] CONTACTS_PROJECTION =
+  public static final String[] CONTACTS_PROJECTION_DISPLAY_NAME_PRIMARY =
       new String[] {
         Contacts._ID, // 0
         Contacts.DISPLAY_NAME_PRIMARY, // 1
@@ -38,16 +38,35 @@
         Contacts.LOOKUP_KEY, // 4
       };
 
-  public ContactsCursorLoader(Context context) {
+  public static final String[] CONTACTS_PROJECTION_DISPLAY_NAME_ALTERNATIVE =
+      new String[] {
+        Contacts._ID, // 0
+        Contacts.DISPLAY_NAME_ALTERNATIVE, // 1
+        Contacts.PHOTO_ID, // 2
+        Contacts.PHOTO_THUMBNAIL_URI, // 3
+        Contacts.LOOKUP_KEY, // 4
+      };
+
+  private ContactsCursorLoader(Context context, String[] contactProjection, String sortKey) {
     super(
         context,
         Contacts.CONTENT_URI
             .buildUpon()
             .appendQueryParameter(Contacts.EXTRA_ADDRESS_BOOK_INDEX, "true")
             .build(),
-        CONTACTS_PROJECTION,
+        contactProjection,
+        contactProjection[CONTACT_DISPLAY_NAME] + " IS NOT NULL",
         null,
-        null,
-        Contacts.SORT_KEY_PRIMARY + " ASC");
+        sortKey + " ASC");
+  }
+
+  public static ContactsCursorLoader createInstanceDisplayNamePrimary(
+      Context context, String sortKey) {
+    return new ContactsCursorLoader(context, CONTACTS_PROJECTION_DISPLAY_NAME_PRIMARY, sortKey);
+  }
+
+  public static ContactsCursorLoader createInstanceDisplayNameAlternative(
+      Context context, String sortKey) {
+    return new ContactsCursorLoader(context, CONTACTS_PROJECTION_DISPLAY_NAME_ALTERNATIVE, sortKey);
   }
 }
diff --git a/java/com/android/dialer/contactsfragment/ContactsFragment.java b/java/com/android/dialer/contactsfragment/ContactsFragment.java
index ea662fc..e627718 100644
--- a/java/com/android/dialer/contactsfragment/ContactsFragment.java
+++ b/java/com/android/dialer/contactsfragment/ContactsFragment.java
@@ -19,60 +19,131 @@
 import android.app.Fragment;
 import android.app.LoaderManager.LoaderCallbacks;
 import android.content.Loader;
+import android.content.pm.PackageManager;
 import android.database.Cursor;
 import android.os.Bundle;
+import android.provider.ContactsContract.Contacts;
 import android.support.annotation.Nullable;
+import android.support.v13.app.FragmentCompat;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.RecyclerView.Recycler;
+import android.support.v7.widget.RecyclerView.State;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.View.OnScrollChangeListener;
 import android.view.ViewGroup;
 import android.widget.TextView;
+import com.android.contacts.common.preference.ContactsPreferences;
+import com.android.contacts.common.preference.ContactsPreferences.ChangeListener;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.performancereport.PerformanceReport;
+import com.android.dialer.util.DialerUtils;
+import com.android.dialer.util.IntentUtil;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import com.android.dialer.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import java.util.Arrays;
 
 /** Fragment containing a list of all contacts. */
 public class ContactsFragment extends Fragment
-    implements LoaderCallbacks<Cursor>, OnScrollChangeListener {
+    implements LoaderCallbacks<Cursor>,
+        OnScrollChangeListener,
+        OnEmptyViewActionButtonClickedListener,
+        ChangeListener {
 
+  public static final int READ_CONTACTS_PERMISSION_REQUEST_CODE = 1;
+
+  private FastScroller fastScroller;
   private TextView anchoredHeader;
   private RecyclerView recyclerView;
   private LinearLayoutManager manager;
   private ContactsAdapter adapter;
+  private EmptyContentView emptyContentView;
+
+  private ContactsPreferences contactsPrefs;
+
+  @Override
+  public void onCreate(@Nullable Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    contactsPrefs = new ContactsPreferences(getContext());
+    contactsPrefs.registerChangeListener(this);
+  }
 
   @Nullable
   @Override
   public View onCreateView(
       LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
     View view = inflater.inflate(R.layout.fragment_contacts, container, false);
-    anchoredHeader = (TextView) view.findViewById(R.id.header);
-    manager = new LinearLayoutManager(getContext());
+    fastScroller = view.findViewById(R.id.fast_scroller);
+    anchoredHeader = view.findViewById(R.id.header);
+    recyclerView = view.findViewById(R.id.recycler_view);
 
-    // TODO: Handle contacts permission denied view
-    // TODO: Handle 0 contacts layout
-    recyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
-    recyclerView.setLayoutManager(manager);
-    getLoaderManager().initLoader(0, null, this);
+    emptyContentView = view.findViewById(R.id.empty_list_view);
+    emptyContentView.setImage(R.drawable.empty_contacts);
+    emptyContentView.setActionClickedListener(this);
 
     if (PermissionsUtil.hasContactsReadPermissions(getContext())) {
       getLoaderManager().initLoader(0, null, this);
+    } else {
+      emptyContentView.setDescription(R.string.permission_no_contacts);
+      emptyContentView.setActionLabel(R.string.permission_single_turn_on);
+      emptyContentView.setVisibility(View.VISIBLE);
     }
 
     return view;
   }
 
   @Override
+  public void onChange() {
+    if (getActivity() != null && isAdded()) {
+      getLoaderManager().restartLoader(0, null, this);
+    }
+  }
+
+  /** @return a loader according to sort order and display order. */
+  @Override
   public Loader<Cursor> onCreateLoader(int id, Bundle args) {
-    return new ContactsCursorLoader(getContext());
+    boolean sortOrderPrimary =
+        (contactsPrefs.getSortOrder() == ContactsPreferences.SORT_ORDER_PRIMARY);
+    boolean displayOrderPrimary =
+        (contactsPrefs.getDisplayOrder() == ContactsPreferences.DISPLAY_ORDER_PRIMARY);
+
+    String sortKey = sortOrderPrimary ? Contacts.SORT_KEY_PRIMARY : Contacts.SORT_KEY_ALTERNATIVE;
+    return displayOrderPrimary
+        ? ContactsCursorLoader.createInstanceDisplayNamePrimary(getContext(), sortKey)
+        : ContactsCursorLoader.createInstanceDisplayNameAlternative(getContext(), sortKey);
   }
 
   @Override
   public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
-    // TODO setup fast scroller.
-    adapter = new ContactsAdapter(getContext(), cursor);
-    recyclerView.setAdapter(adapter);
-    if (adapter.getItemCount() > 1) {
-      recyclerView.setOnScrollChangeListener(this);
+    if (cursor.getCount() == 0) {
+      emptyContentView.setDescription(R.string.all_contacts_empty);
+      emptyContentView.setActionLabel(R.string.all_contacts_empty_add_contact_action);
+      emptyContentView.setVisibility(View.VISIBLE);
+    } else {
+      emptyContentView.setVisibility(View.GONE);
+      adapter = new ContactsAdapter(getContext(), cursor);
+      manager =
+          new LinearLayoutManager(getContext()) {
+            @Override
+            public void onLayoutChildren(Recycler recycler, State state) {
+              super.onLayoutChildren(recycler, state);
+              int itemsShown = findLastVisibleItemPosition() - findFirstVisibleItemPosition() + 1;
+              if (adapter.getItemCount() > itemsShown) {
+                fastScroller.setVisibility(View.VISIBLE);
+                recyclerView.setOnScrollChangeListener(ContactsFragment.this);
+              } else {
+                fastScroller.setVisibility(View.GONE);
+              }
+            }
+          };
+
+      recyclerView.setLayoutManager(manager);
+      recyclerView.setAdapter(adapter);
+      PerformanceReport.logOnScrollStateChange(recyclerView);
+      fastScroller.setup(adapter, manager);
     }
   }
 
@@ -81,6 +152,7 @@
     recyclerView.setAdapter(null);
     recyclerView.setOnScrollChangeListener(null);
     adapter = null;
+    contactsPrefs.unregisterChangeListener();
   }
 
   /*
@@ -95,8 +167,10 @@
    */
   @Override
   public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
+    fastScroller.updateContainerAndScrollBarPosition(recyclerView);
     int firstVisibleItem = manager.findFirstVisibleItemPosition();
     int firstCompletelyVisible = manager.findFirstCompletelyVisibleItemPosition();
+    String anchoredHeaderString = adapter.getHeaderString(firstCompletelyVisible);
 
     // If the user swipes to the top of the list very quickly, there is some strange behavior
     // between this method updating headers and adapter#onBindViewHolder updating headers.
@@ -104,15 +178,57 @@
     if (firstVisibleItem == firstCompletelyVisible && firstVisibleItem == 0) {
       adapter.refreshHeaders();
       anchoredHeader.setVisibility(View.INVISIBLE);
-    } else {
-      boolean showAnchor =
-          adapter.getHeader(firstVisibleItem).equals(adapter.getHeader(firstCompletelyVisible));
-      anchoredHeader.setText(adapter.getHeader(firstCompletelyVisible));
-      anchoredHeader.setVisibility(showAnchor ? View.VISIBLE : View.INVISIBLE);
+    } else if (firstVisibleItem != 0) { // skip the add contact row
+      if (adapter.getHeaderString(firstVisibleItem).equals(anchoredHeaderString)) {
+        anchoredHeader.setText(anchoredHeaderString);
+        anchoredHeader.setVisibility(View.VISIBLE);
+        getContactHolder(firstVisibleItem).getHeaderView().setVisibility(View.INVISIBLE);
+        getContactHolder(firstCompletelyVisible).getHeaderView().setVisibility(View.INVISIBLE);
+      } else {
+        anchoredHeader.setVisibility(View.INVISIBLE);
+        getContactHolder(firstVisibleItem).getHeaderView().setVisibility(View.VISIBLE);
+        getContactHolder(firstCompletelyVisible).getHeaderView().setVisibility(View.VISIBLE);
+      }
+    }
+  }
 
-      int rowHeaderVisibility = showAnchor ? View.INVISIBLE : View.VISIBLE;
-      adapter.setHeaderVisibility(firstVisibleItem, rowHeaderVisibility);
-      adapter.setHeaderVisibility(firstCompletelyVisible, rowHeaderVisibility);
+  private ContactViewHolder getContactHolder(int position) {
+    return ((ContactViewHolder) recyclerView.findViewHolderForAdapterPosition(position));
+  }
+
+  @Override
+  public void onEmptyViewActionButtonClicked() {
+    if (emptyContentView.getActionLabel() == R.string.permission_single_turn_on) {
+      String[] deniedPermissions =
+          PermissionsUtil.getPermissionsCurrentlyDenied(
+              getContext(), PermissionsUtil.allContactsGroupPermissionsUsedInDialer);
+      if (deniedPermissions.length > 0) {
+        LogUtil.i(
+            "ContactsFragment.onEmptyViewActionButtonClicked",
+            "Requesting permissions: " + Arrays.toString(deniedPermissions));
+        FragmentCompat.requestPermissions(
+            this, deniedPermissions, READ_CONTACTS_PERMISSION_REQUEST_CODE);
+      }
+
+    } else if (emptyContentView.getActionLabel()
+        == R.string.all_contacts_empty_add_contact_action) {
+      // Add new contact
+      DialerUtils.startActivityWithErrorToast(
+          getContext(), IntentUtil.getNewContactIntent(), R.string.add_contact_not_available);
+    } else {
+      throw Assert.createIllegalStateFailException("Invalid empty content view action label.");
+    }
+  }
+
+  @Override
+  public void onRequestPermissionsResult(
+      int requestCode, String[] permissions, int[] grantResults) {
+    if (requestCode == READ_CONTACTS_PERMISSION_REQUEST_CODE) {
+      if (grantResults.length >= 1 && PackageManager.PERMISSION_GRANTED == grantResults[0]) {
+        // Force a refresh of the data since we were missing the permission before this.
+        emptyContentView.setVisibility(View.GONE);
+        getLoaderManager().initLoader(0, null, this);
+      }
     }
   }
 }
diff --git a/java/com/android/dialer/contactsfragment/FastScroller.java b/java/com/android/dialer/contactsfragment/FastScroller.java
new file mode 100644
index 0000000..0223c5f
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/FastScroller.java
@@ -0,0 +1,130 @@
+/*
+ * Copyright (C) 2017 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.dialer.contactsfragment;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.AttributeSet;
+import android.view.MotionEvent;
+import android.view.View;
+import android.widget.RelativeLayout;
+import android.widget.TextView;
+
+/** Widget to add fast scrolling to {@link ContactsFragment}. */
+public class FastScroller extends RelativeLayout {
+
+  private final int touchTargetWidth;
+
+  private ContactsAdapter adapter;
+  private LinearLayoutManager layoutManager;
+
+  private TextView container;
+  private View scrollBar;
+
+  private boolean dragStarted;
+
+  public FastScroller(Context context, AttributeSet attrs) {
+    super(context, attrs);
+    touchTargetWidth =
+        context.getResources().getDimensionPixelSize(R.dimen.fast_scroller_touch_target_width);
+  }
+
+  @Override
+  protected void onFinishInflate() {
+    super.onFinishInflate();
+    container = findViewById(R.id.fast_scroller_container);
+    scrollBar = findViewById(R.id.fast_scroller_scroll_bar);
+  }
+
+  void setup(ContactsAdapter adapter, LinearLayoutManager layoutManager) {
+    this.adapter = adapter;
+    this.layoutManager = layoutManager;
+    setVisibility(VISIBLE);
+  }
+
+  @Override
+  public boolean onTouchEvent(@NonNull MotionEvent event) {
+    // Don't override if touch event isn't within desired touch target and dragging hasn't started.
+    if (!dragStarted && getWidth() - touchTargetWidth - event.getX() > 0) {
+      return super.onTouchEvent(event);
+    }
+
+    switch (event.getAction()) {
+      case MotionEvent.ACTION_DOWN:
+        dragStarted = true;
+        container.setVisibility(VISIBLE);
+        scrollBar.setSelected(true);
+        // fall through
+      case MotionEvent.ACTION_MOVE:
+        setContainerAndScrollBarPosition(event.getY());
+        setRecyclerViewPosition(event.getY());
+        return true;
+      case MotionEvent.ACTION_UP:
+      case MotionEvent.ACTION_CANCEL:
+        dragStarted = false;
+        container.setVisibility(INVISIBLE);
+        scrollBar.setSelected(false);
+        return true;
+    }
+    return super.onTouchEvent(event);
+  }
+
+  private void setRecyclerViewPosition(float y) {
+    final int itemCount = adapter.getItemCount();
+    float scrolledPosition = getScrolledPercentage(y) * (float) itemCount;
+    int targetPos = getValueInRange(0, itemCount - 1, (int) scrolledPosition);
+    layoutManager.scrollToPositionWithOffset(targetPos, 0);
+    container.setText(adapter.getHeaderString(targetPos));
+  }
+
+  // Returns a float in range [0, 1] which represents the position of the scroller.
+  private float getScrolledPercentage(float y) {
+    if (scrollBar.getY() == 0) {
+      return 0f;
+    } else if (scrollBar.getY() + scrollBar.getHeight() >= getHeight()) {
+      return 1f;
+    } else {
+      return y / (float) getHeight();
+    }
+  }
+
+  private int getValueInRange(int min, int max, int value) {
+    int minimum = Math.max(min, value);
+    return Math.min(minimum, max);
+  }
+
+  void updateContainerAndScrollBarPosition(RecyclerView recyclerView) {
+    if (!scrollBar.isSelected()) {
+      int verticalScrollOffset = recyclerView.computeVerticalScrollOffset();
+      int verticalScrollRange = recyclerView.computeVerticalScrollRange();
+      float proportion = (float) verticalScrollOffset / ((float) verticalScrollRange - getHeight());
+      setContainerAndScrollBarPosition(getHeight() * proportion);
+    }
+  }
+
+  private void setContainerAndScrollBarPosition(float y) {
+    int scrollBarHeight = scrollBar.getHeight();
+    int containerHeight = container.getHeight();
+    scrollBar.setY(
+        getValueInRange(0, getHeight() - scrollBarHeight, (int) (y - scrollBarHeight / 2)));
+    container.setY(
+        getValueInRange(
+            0, getHeight() - containerHeight - scrollBarHeight / 2, (int) (y - containerHeight)));
+  }
+}
diff --git a/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_container_background.xml b/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_container_background.xml
new file mode 100644
index 0000000..a7b2277
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_container_background.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="rectangle">
+  <solid android:color="@color/dialer_theme_color"/>
+  <size
+      android:height="@dimen/fast_scroller_container_size"
+      android:width="@dimen/fast_scroller_container_size"/>
+  <corners
+      android:topLeftRadius="@dimen/fast_scroller_container_corner_radius"
+      android:topRightRadius="@dimen/fast_scroller_container_corner_radius"
+      android:bottomLeftRadius="@dimen/fast_scroller_bottom_left_corner_radius"
+      android:bottomRightRadius="@dimen/fast_scroller_bottom_right_corner_radius"/>
+</shape>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_scroll_bar.xml b/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_scroll_bar.xml
new file mode 100644
index 0000000..a3e0c25
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_scroll_bar.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:state_selected="true">
+    <shape android:shape="rectangle">
+      <solid android:color="@color/dialer_theme_color"/>
+      <size android:height="32dp" android:width="4dp"/>
+      <corners android:radius="2dp"/>
+    </shape>
+  </item>
+  <item>
+    <shape android:shape="rectangle">
+      <solid android:color="@color/dialer_secondary_text_color"/>
+      <size android:height="32dp" android:width="4dp"/>
+      <corners android:radius="2dp"/>
+    </shape>
+  </item>
+</selector>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactsfragment/res/layout/add_contact_row.xml b/java/com/android/dialer/contactsfragment/res/layout/add_contact_row.xml
new file mode 100644
index 0000000..dbc7caf
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/res/layout/add_contact_row.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 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:id="@+id/click_target"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="@dimen/row_height"
+    android:layout_marginTop="8dp"
+    android:layout_marginStart="@dimen/header_width"
+    android:layout_marginEnd="@dimen/row_end_margin"
+    android:paddingTop="@dimen/row_top_bottom_padding"
+    android:paddingBottom="@dimen/row_top_bottom_padding"
+    android:paddingStart="@dimen/row_start_padding"
+    android:gravity="center_vertical"
+    android:background="?android:attr/selectableItemBackground">
+
+  <ImageView
+      android:id="@+id/photo"
+      android:layout_width="@dimen/photo_size"
+      android:layout_height="@dimen/photo_size"
+      android:src="@drawable/quantum_ic_person_add_white_24"
+      android:tint="@color/dialer_theme_color"
+      android:scaleType="center"/>
+
+  <TextView
+      android:id="@+id/contact_name"
+      android:layout_width="wrap_content"
+      android:layout_height="match_parent"
+      android:paddingStart="@dimen/text_padding_start"
+      android:paddingEnd="@dimen/text_padding_end"
+      android:gravity="center_vertical"
+      android:fontFamily="sans-serif"
+      android:text="@string/all_contacts_empty_add_contact_action"
+      style="@style/PrimaryText"/>
+</LinearLayout>
diff --git a/java/com/android/dialer/contactsfragment/res/layout/contact_row.xml b/java/com/android/dialer/contactsfragment/res/layout/contact_row.xml
index af87c7f..9e829fe 100644
--- a/java/com/android/dialer/contactsfragment/res/layout/contact_row.xml
+++ b/java/com/android/dialer/contactsfragment/res/layout/contact_row.xml
@@ -43,11 +43,13 @@
 
     <TextView
         android:id="@+id/contact_name"
-        android:layout_width="match_parent"
+        android:layout_width="wrap_content"
         android:layout_height="match_parent"
         android:paddingStart="@dimen/text_padding_start"
         android:paddingEnd="@dimen/text_padding_end"
-        android:gravity="center_vertical|start"
+        android:maxLines="1"
+        android:ellipsize="end"
+        android:gravity="center_vertical"
         android:textSize="@dimen/text_size"
         android:textColor="@color/dialer_primary_text_color"
         android:fontFamily="sans-serif"/>
diff --git a/java/com/android/dialer/contactsfragment/res/layout/fragment_contacts.xml b/java/com/android/dialer/contactsfragment/res/layout/fragment_contacts.xml
index 67b490f..3d58aad 100644
--- a/java/com/android/dialer/contactsfragment/res/layout/fragment_contacts.xml
+++ b/java/com/android/dialer/contactsfragment/res/layout/fragment_contacts.xml
@@ -23,8 +23,47 @@
       android:id="@+id/recycler_view"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
-      android:background="@color/background_dialer_white"/>
+      android:background="@color/background_dialer_light"/>
+
+  <!-- Scrollbars are always on the right side of the screen. Layouts should use Rights/Left instead
+       of Start/End -->
+  <com.android.dialer.contactsfragment.FastScroller
+      android:id="@+id/fast_scroller"
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:layout_marginTop="8dp"
+      android:layout_marginBottom="8dp"
+      android:clipChildren="false"
+      android:visibility="gone">
+
+    <TextView
+        android:id="@+id/fast_scroller_container"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_toLeftOf="@+id/fast_scroller_scroll_bar"
+        android:gravity="center"
+        android:textSize="48sp"
+        android:textColor="@color/background_dialer_white"
+        android:visibility="gone"
+        android:background="@drawable/fast_scroller_container_background"/>
+
+    <ImageView
+        android:id="@+id/fast_scroller_scroll_bar"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginLeft="8dp"
+        android:layout_alignParentRight="true"
+        android:paddingRight="16dp"
+        android:src="@drawable/fast_scroller_scroll_bar" />
+  </com.android.dialer.contactsfragment.FastScroller>
 
   <!-- Anchored header view -->
   <include layout="@layout/header"/>
+
+  <com.android.dialer.widget.EmptyContentView
+      android:id="@+id/empty_list_view"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:layout_gravity="center"
+      android:visibility="gone"/>
 </FrameLayout>
diff --git a/java/com/android/dialer/contactsfragment/res/values/dimens.xml b/java/com/android/dialer/contactsfragment/res/values/dimens.xml
index 00d7c6d..f120014 100644
--- a/java/com/android/dialer/contactsfragment/res/values/dimens.xml
+++ b/java/com/android/dialer/contactsfragment/res/values/dimens.xml
@@ -25,4 +25,11 @@
   <dimen name="text_padding_start">16dp</dimen>
   <dimen name="text_padding_end">8dp</dimen>
   <dimen name="text_size">16sp</dimen>
-</resources>
+
+  <dimen name="fast_scroller_touch_target_width">20dp</dimen>
+
+  <dimen name="fast_scroller_container_size">88dp</dimen>
+  <dimen name="fast_scroller_container_corner_radius">44dp</dimen>
+  <dimen name="fast_scroller_bottom_right_corner_radius">0px</dimen>
+  <dimen name="fast_scroller_bottom_left_corner_radius">44dp</dimen>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/database/DialerDatabaseHelper.java b/java/com/android/dialer/database/DialerDatabaseHelper.java
index 3488142..6dd7cf4 100644
--- a/java/com/android/dialer/database/DialerDatabaseHelper.java
+++ b/java/com/android/dialer/database/DialerDatabaseHelper.java
@@ -34,6 +34,7 @@
 import android.provider.ContactsContract.Data;
 import android.provider.ContactsContract.Directory;
 import android.support.annotation.VisibleForTesting;
+import android.support.annotation.WorkerThread;
 import android.text.TextUtils;
 import com.android.contacts.common.R;
 import com.android.contacts.common.util.StopWatch;
@@ -46,7 +47,6 @@
 import java.util.HashSet;
 import java.util.Objects;
 import java.util.Set;
-import java.util.concurrent.atomic.AtomicBoolean;
 
 /**
  * Database helper for smart dial. Designed as a singleton to make sure there is only one access
@@ -77,8 +77,6 @@
   private static final int MAX_ENTRIES = 20;
 
   private final Context mContext;
-  private final Object mLock = new Object();
-  private final AtomicBoolean mInUpdate = new AtomicBoolean(false);
   private boolean mIsTestInstance = false;
 
   protected DialerDatabaseHelper(Context context, String databaseName, int dbVersion) {
@@ -596,218 +594,212 @@
    * accordingly. It also queries the deleted contact database to remove newly deleted contacts
    * since last update.
    */
-  public void updateSmartDialDatabase() {
+  @WorkerThread
+  public synchronized void updateSmartDialDatabase() {
     LogUtil.enterBlock("DialerDatabaseHelper.updateSmartDialDatabase");
 
     final SQLiteDatabase db = getWritableDatabase();
 
-    synchronized (mLock) {
-      LogUtil.v("DialerDatabaseHelper.updateSmartDialDatabase", "starting to update database");
-      final StopWatch stopWatch = DEBUG ? StopWatch.start("Updating databases") : null;
+    LogUtil.v("DialerDatabaseHelper.updateSmartDialDatabase", "starting to update database");
+    final StopWatch stopWatch = DEBUG ? StopWatch.start("Updating databases") : null;
 
-      /** Gets the last update time on the database. */
-      final SharedPreferences databaseLastUpdateSharedPref =
-          mContext.getSharedPreferences(DATABASE_LAST_CREATED_SHARED_PREF, Context.MODE_PRIVATE);
-      final String lastUpdateMillis =
-          String.valueOf(databaseLastUpdateSharedPref.getLong(LAST_UPDATED_MILLIS, 0));
+    /** Gets the last update time on the database. */
+    final SharedPreferences databaseLastUpdateSharedPref =
+        mContext.getSharedPreferences(DATABASE_LAST_CREATED_SHARED_PREF, Context.MODE_PRIVATE);
+    final String lastUpdateMillis =
+        String.valueOf(databaseLastUpdateSharedPref.getLong(LAST_UPDATED_MILLIS, 0));
 
-      LogUtil.v(
-          "DialerDatabaseHelper.updateSmartDialDatabase", "last updated at " + lastUpdateMillis);
+    LogUtil.v(
+        "DialerDatabaseHelper.updateSmartDialDatabase", "last updated at " + lastUpdateMillis);
 
-      /** Sets the time after querying the database as the current update time. */
-      final Long currentMillis = System.currentTimeMillis();
+    /** Sets the time after querying the database as the current update time. */
+    final Long currentMillis = System.currentTimeMillis();
 
-      if (DEBUG) {
-        stopWatch.lap("Queried the Contacts database");
-      }
+    if (DEBUG) {
+      stopWatch.lap("Queried the Contacts database");
+    }
 
-      /** Prevents the app from reading the dialer database when updating. */
-      mInUpdate.getAndSet(true);
+    /** Removes contacts that have been deleted. */
+    removeDeletedContacts(db, getDeletedContactCursor(lastUpdateMillis));
+    removePotentiallyCorruptedContacts(db, lastUpdateMillis);
 
-      /** Removes contacts that have been deleted. */
-      removeDeletedContacts(db, getDeletedContactCursor(lastUpdateMillis));
-      removePotentiallyCorruptedContacts(db, lastUpdateMillis);
+    if (DEBUG) {
+      stopWatch.lap("Finished deleting deleted entries");
+    }
 
-      if (DEBUG) {
-        stopWatch.lap("Finished deleting deleted entries");
-      }
-
+    /**
+     * If the database did not exist before, jump through deletion as there is nothing to delete.
+     */
+    if (!lastUpdateMillis.equals("0")) {
       /**
-       * If the database did not exist before, jump through deletion as there is nothing to delete.
+       * Removes contacts that have been updated. Updated contact information will be inserted
+       * later. Note that this has to use a separate result set from updatePhoneCursor, since it is
+       * possible for a contact to be updated (e.g. phone number deleted), but have no results show
+       * up in updatedPhoneCursor (since all of its phone numbers have been deleted).
        */
-      if (!lastUpdateMillis.equals("0")) {
-        /**
-         * Removes contacts that have been updated. Updated contact information will be inserted
-         * later. Note that this has to use a separate result set from updatePhoneCursor, since it
-         * is possible for a contact to be updated (e.g. phone number deleted), but have no results
-         * show up in updatedPhoneCursor (since all of its phone numbers have been deleted).
-         */
-        final Cursor updatedContactCursor =
-            mContext
-                .getContentResolver()
-                .query(
-                    UpdatedContactQuery.URI,
-                    UpdatedContactQuery.PROJECTION,
-                    UpdatedContactQuery.SELECT_UPDATED_CLAUSE,
-                    new String[] {lastUpdateMillis},
-                    null);
-        if (updatedContactCursor == null) {
-          LogUtil.e(
-              "DialerDatabaseHelper.updateSmartDialDatabase",
-              "smartDial query received null for cursor");
-          return;
-        }
-        try {
-          removeUpdatedContacts(db, updatedContactCursor);
-        } finally {
-          updatedContactCursor.close();
-        }
-        if (DEBUG) {
-          stopWatch.lap("Finished deleting entries belonging to updated contacts");
-        }
-      }
-
-      /**
-       * Queries the contact database to get all phone numbers that have been updated since the last
-       * update time.
-       */
-      final Cursor updatedPhoneCursor =
+      final Cursor updatedContactCursor =
           mContext
               .getContentResolver()
               .query(
-                  PhoneQuery.URI,
-                  PhoneQuery.PROJECTION,
-                  PhoneQuery.SELECTION,
+                  UpdatedContactQuery.URI,
+                  UpdatedContactQuery.PROJECTION,
+                  UpdatedContactQuery.SELECT_UPDATED_CLAUSE,
                   new String[] {lastUpdateMillis},
                   null);
-      if (updatedPhoneCursor == null) {
+      if (updatedContactCursor == null) {
         LogUtil.e(
             "DialerDatabaseHelper.updateSmartDialDatabase",
             "smartDial query received null for cursor");
         return;
       }
-
       try {
-        /** Inserts recently updated phone numbers to the smartdial database. */
-        insertUpdatedContactsAndNumberPrefix(db, updatedPhoneCursor, currentMillis);
+        removeUpdatedContacts(db, updatedContactCursor);
+      } finally {
+        updatedContactCursor.close();
+      }
+      if (DEBUG) {
+        stopWatch.lap("Finished deleting entries belonging to updated contacts");
+      }
+    }
+
+    /**
+     * Queries the contact database to get all phone numbers that have been updated since the last
+     * update time.
+     */
+    final Cursor updatedPhoneCursor =
+        mContext
+            .getContentResolver()
+            .query(
+                PhoneQuery.URI,
+                PhoneQuery.PROJECTION,
+                PhoneQuery.SELECTION,
+                new String[] {lastUpdateMillis},
+                null);
+    if (updatedPhoneCursor == null) {
+      LogUtil.e(
+          "DialerDatabaseHelper.updateSmartDialDatabase",
+          "smartDial query received null for cursor");
+      return;
+    }
+
+    try {
+      /** Inserts recently updated phone numbers to the smartdial database. */
+      insertUpdatedContactsAndNumberPrefix(db, updatedPhoneCursor, currentMillis);
+      if (DEBUG) {
+        stopWatch.lap("Finished building the smart dial table");
+      }
+    } finally {
+      updatedPhoneCursor.close();
+    }
+
+    /**
+     * Gets a list of distinct contacts which have been updated, and adds the name prefixes of these
+     * contacts to the prefix table.
+     */
+    final Cursor nameCursor =
+        db.rawQuery(
+            "SELECT DISTINCT "
+                + SmartDialDbColumns.DISPLAY_NAME_PRIMARY
+                + ", "
+                + SmartDialDbColumns.CONTACT_ID
+                + " FROM "
+                + Tables.SMARTDIAL_TABLE
+                + " WHERE "
+                + SmartDialDbColumns.LAST_SMARTDIAL_UPDATE_TIME
+                + " = "
+                + currentMillis,
+            new String[] {});
+    if (nameCursor != null) {
+      try {
         if (DEBUG) {
-          stopWatch.lap("Finished building the smart dial table");
+          stopWatch.lap("Queried the smart dial table for contact names");
+        }
+
+        /** Inserts prefixes of names into the prefix table. */
+        insertNamePrefixes(db, nameCursor);
+        if (DEBUG) {
+          stopWatch.lap("Finished building the name prefix table");
         }
       } finally {
-        updatedPhoneCursor.close();
+        nameCursor.close();
       }
-
-      /**
-       * Gets a list of distinct contacts which have been updated, and adds the name prefixes of
-       * these contacts to the prefix table.
-       */
-      final Cursor nameCursor =
-          db.rawQuery(
-              "SELECT DISTINCT "
-                  + SmartDialDbColumns.DISPLAY_NAME_PRIMARY
-                  + ", "
-                  + SmartDialDbColumns.CONTACT_ID
-                  + " FROM "
-                  + Tables.SMARTDIAL_TABLE
-                  + " WHERE "
-                  + SmartDialDbColumns.LAST_SMARTDIAL_UPDATE_TIME
-                  + " = "
-                  + Long.toString(currentMillis),
-              new String[] {});
-      if (nameCursor != null) {
-        try {
-          if (DEBUG) {
-            stopWatch.lap("Queried the smart dial table for contact names");
-          }
-
-          /** Inserts prefixes of names into the prefix table. */
-          insertNamePrefixes(db, nameCursor);
-          if (DEBUG) {
-            stopWatch.lap("Finished building the name prefix table");
-          }
-        } finally {
-          nameCursor.close();
-        }
-      }
-
-      /** Creates index on contact_id for fast JOIN operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS smartdial_contact_id_index ON "
-              + Tables.SMARTDIAL_TABLE
-              + " ("
-              + SmartDialDbColumns.CONTACT_ID
-              + ");");
-      /** Creates index on last_smartdial_update_time for fast SELECT operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS smartdial_last_update_index ON "
-              + Tables.SMARTDIAL_TABLE
-              + " ("
-              + SmartDialDbColumns.LAST_SMARTDIAL_UPDATE_TIME
-              + ");");
-      /** Creates index on sorting fields for fast sort operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS smartdial_sort_index ON "
-              + Tables.SMARTDIAL_TABLE
-              + " ("
-              + SmartDialDbColumns.STARRED
-              + ", "
-              + SmartDialDbColumns.IS_SUPER_PRIMARY
-              + ", "
-              + SmartDialDbColumns.LAST_TIME_USED
-              + ", "
-              + SmartDialDbColumns.TIMES_USED
-              + ", "
-              + SmartDialDbColumns.IN_VISIBLE_GROUP
-              + ", "
-              + SmartDialDbColumns.DISPLAY_NAME_PRIMARY
-              + ", "
-              + SmartDialDbColumns.CONTACT_ID
-              + ", "
-              + SmartDialDbColumns.IS_PRIMARY
-              + ");");
-      /** Creates index on prefix for fast SELECT operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS nameprefix_index ON "
-              + Tables.PREFIX_TABLE
-              + " ("
-              + PrefixColumns.PREFIX
-              + ");");
-      /** Creates index on contact_id for fast JOIN operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS nameprefix_contact_id_index ON "
-              + Tables.PREFIX_TABLE
-              + " ("
-              + PrefixColumns.CONTACT_ID
-              + ");");
-
-      if (DEBUG) {
-        stopWatch.lap(TAG + "Finished recreating index");
-      }
-
-      /** Updates the database index statistics. */
-      db.execSQL("ANALYZE " + Tables.SMARTDIAL_TABLE);
-      db.execSQL("ANALYZE " + Tables.PREFIX_TABLE);
-      db.execSQL("ANALYZE smartdial_contact_id_index");
-      db.execSQL("ANALYZE smartdial_last_update_index");
-      db.execSQL("ANALYZE nameprefix_index");
-      db.execSQL("ANALYZE nameprefix_contact_id_index");
-      if (DEBUG) {
-        stopWatch.stopAndLog(TAG + "Finished updating index stats", 0);
-      }
-
-      mInUpdate.getAndSet(false);
-
-      final SharedPreferences.Editor editor = databaseLastUpdateSharedPref.edit();
-      editor.putLong(LAST_UPDATED_MILLIS, currentMillis);
-      editor.apply();
-
-      LogUtil.i("DialerDatabaseHelper.updateSmartDialDatabase", "broadcasting smart dial update");
-
-      // Notify content observers that smart dial database has been updated.
-      Intent intent = new Intent(ACTION_SMART_DIAL_UPDATED);
-      intent.setPackage(mContext.getPackageName());
-      mContext.sendBroadcast(intent);
     }
+
+    /** Creates index on contact_id for fast JOIN operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS smartdial_contact_id_index ON "
+            + Tables.SMARTDIAL_TABLE
+            + " ("
+            + SmartDialDbColumns.CONTACT_ID
+            + ");");
+    /** Creates index on last_smartdial_update_time for fast SELECT operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS smartdial_last_update_index ON "
+            + Tables.SMARTDIAL_TABLE
+            + " ("
+            + SmartDialDbColumns.LAST_SMARTDIAL_UPDATE_TIME
+            + ");");
+    /** Creates index on sorting fields for fast sort operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS smartdial_sort_index ON "
+            + Tables.SMARTDIAL_TABLE
+            + " ("
+            + SmartDialDbColumns.STARRED
+            + ", "
+            + SmartDialDbColumns.IS_SUPER_PRIMARY
+            + ", "
+            + SmartDialDbColumns.LAST_TIME_USED
+            + ", "
+            + SmartDialDbColumns.TIMES_USED
+            + ", "
+            + SmartDialDbColumns.IN_VISIBLE_GROUP
+            + ", "
+            + SmartDialDbColumns.DISPLAY_NAME_PRIMARY
+            + ", "
+            + SmartDialDbColumns.CONTACT_ID
+            + ", "
+            + SmartDialDbColumns.IS_PRIMARY
+            + ");");
+    /** Creates index on prefix for fast SELECT operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS nameprefix_index ON "
+            + Tables.PREFIX_TABLE
+            + " ("
+            + PrefixColumns.PREFIX
+            + ");");
+    /** Creates index on contact_id for fast JOIN operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS nameprefix_contact_id_index ON "
+            + Tables.PREFIX_TABLE
+            + " ("
+            + PrefixColumns.CONTACT_ID
+            + ");");
+
+    if (DEBUG) {
+      stopWatch.lap(TAG + "Finished recreating index");
+    }
+
+    /** Updates the database index statistics. */
+    db.execSQL("ANALYZE " + Tables.SMARTDIAL_TABLE);
+    db.execSQL("ANALYZE " + Tables.PREFIX_TABLE);
+    db.execSQL("ANALYZE smartdial_contact_id_index");
+    db.execSQL("ANALYZE smartdial_last_update_index");
+    db.execSQL("ANALYZE nameprefix_index");
+    db.execSQL("ANALYZE nameprefix_contact_id_index");
+    if (DEBUG) {
+      stopWatch.stopAndLog(TAG + "Finished updating index stats", 0);
+    }
+
+    final SharedPreferences.Editor editor = databaseLastUpdateSharedPref.edit();
+    editor.putLong(LAST_UPDATED_MILLIS, currentMillis);
+    editor.apply();
+
+    LogUtil.i("DialerDatabaseHelper.updateSmartDialDatabase", "broadcasting smart dial update");
+
+    // Notify content observers that smart dial database has been updated.
+    Intent intent = new Intent(ACTION_SMART_DIAL_UPDATED);
+    intent.setPackage(mContext.getPackageName());
+    mContext.sendBroadcast(intent);
   }
 
   /**
@@ -817,12 +809,9 @@
    * @param query The prefix of a contact's dialpad index.
    * @return A list of top candidate contacts that will be suggested to user to match their input.
    */
-  public ArrayList<ContactNumber> getLooseMatches(String query, SmartDialNameMatcher nameMatcher) {
-    final boolean inUpdate = mInUpdate.get();
-    if (inUpdate) {
-      return new ArrayList<>();
-    }
-
+  @WorkerThread
+  public synchronized ArrayList<ContactNumber> getLooseMatches(
+      String query, SmartDialNameMatcher nameMatcher) {
     final SQLiteDatabase db = getReadableDatabase();
 
     /** Uses SQL query wildcard '%' to represent prefix matching. */
diff --git a/java/com/android/dialer/dialercontact/dialer_contact.proto b/java/com/android/dialer/dialercontact/dialer_contact.proto
new file mode 100644
index 0000000..d63295b
--- /dev/null
+++ b/java/com/android/dialer/dialercontact/dialer_contact.proto
@@ -0,0 +1,27 @@
+syntax = "proto2";
+
+option java_package = "com.android.dialer.dialercontact";
+option java_multiple_files = true;
+option optimize_for = LITE_RUNTIME;
+
+
+package com.android.dialer.callcomposer;
+
+message DialerContact {
+  optional fixed64 photo_id = 1;
+  optional string photo_uri = 2;
+  optional string contact_uri = 3;
+  optional string name_or_number = 4;
+  optional string number = 6;
+  optional string display_number = 7;
+  optional string number_label = 8;
+  optional int32 contact_type = 9;
+  optional SimDetails sim_details = 10;
+}
+
+message SimDetails {
+  // Human readable netwrork name displayed to user where relevant
+  optional string network = 1;
+  // This value represents a hex representation of a color (i.e. #ffffff)
+  optional int32 color = 2;
+}
diff --git a/java/com/android/dialer/dialpadview/res/layout/dialpad_view_unthemed.xml b/java/com/android/dialer/dialpadview/res/layout/dialpad_view_unthemed.xml
index 838f1ec..13c11f1 100644
--- a/java/com/android/dialer/dialpadview/res/layout/dialpad_view_unthemed.xml
+++ b/java/com/android/dialer/dialpadview/res/layout/dialpad_view_unthemed.xml
@@ -14,141 +14,142 @@
      limitations under the License.
 -->
 <view xmlns:android="http://schemas.android.com/apk/res/android"
-  android:id="@+id/dialpad_view"
-  class="com.android.dialer.dialpadview.DialpadView"
-  android:layout_width="match_parent"
-  android:layout_height="match_parent"
-  android:layout_gravity="bottom"
-  android:background="?attr/dialpad_background"
-  android:clickable="true"
-  android:elevation="?attr/dialpad_elevation"
-  android:layoutDirection="ltr"
-  android:orientation="vertical">
+    android:id="@+id/dialpad_view"
+    class="com.android.dialer.dialpadview.DialpadView"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:layout_gravity="bottom"
+    android:background="?attr/dialpad_background"
+    android:clickable="true"
+    android:elevation="?attr/dialpad_elevation"
+    android:layoutDirection="ltr"
+    android:orientation="vertical">
 
   <!-- Text field where call rate is displayed for ILD calls. -->
   <LinearLayout
-    android:id="@+id/rate_container"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:orientation="vertical"
-    android:visibility="gone">
+      android:id="@+id/rate_container"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:orientation="vertical"
+      android:visibility="gone">
 
     <LinearLayout
-      android:id="@+id/ild_container"
-      android:layout_width="wrap_content"
-      android:layout_height="wrap_content"
-      android:layout_marginTop="@dimen/ild_margin_height"
-      android:layout_marginBottom="@dimen/ild_margin_height"
-      android:layout_gravity="center_horizontal"
-      android:orientation="horizontal">
-
-      <TextView
-        android:id="@+id/ild_country"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"/>
-
-      <TextView
-        android:id="@+id/ild_rate"
-        android:textStyle="bold"
+        android:id="@+id/ild_container"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginStart="4dp"/>
+        android:layout_marginTop="@dimen/ild_margin_height"
+        android:layout_marginBottom="@dimen/ild_margin_height"
+        android:layout_gravity="center_horizontal"
+        android:orientation="horizontal">
+
+      <TextView
+          android:id="@+id/ild_country"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"/>
+
+      <TextView
+          android:id="@+id/ild_rate"
+          android:textStyle="bold"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginStart="4dp"/>
 
     </LinearLayout>
 
     <View
-      android:layout_width="match_parent"
-      android:layout_height="1dp"
-      android:background="#e3e3e3"/>
+        android:layout_width="match_parent"
+        android:layout_height="1dp"
+        android:background="#e3e3e3"/>
 
   </LinearLayout>
 
   <!-- Text field and possibly soft menu button above the keypad where
    the digits are displayed. -->
   <LinearLayout
-    android:id="@+id/digits_container"
-    android:layout_width="match_parent"
-    android:layout_height="?attr/dialpad_digits_adjustable_height"
-    android:orientation="horizontal">
+      android:id="@+id/digits_container"
+      android:layout_width="match_parent"
+      android:layout_height="?attr/dialpad_digits_adjustable_height"
+      android:orientation="horizontal">
 
     <ImageButton
-      android:id="@+id/dialpad_back"
-      android:layout_width="wrap_content"
-      android:layout_height="match_parent"
-      android:layout_margin="@dimen/dialpad_overflow_margin"
-      android:paddingLeft="@dimen/dialpad_digits_menu_left_padding"
-      android:paddingRight="@dimen/dialpad_digits_menu_right_padding"
-      android:background="@drawable/btn_dialpad_key"
-      android:contentDescription="@string/description_dialpad_back"
-      android:gravity="center"
-      android:src="@drawable/quantum_ic_close_white_24"
-      android:tint="?attr/dialpad_icon_tint"
-      android:tintMode="src_in"
-      android:visibility="gone"/>
+        android:id="@+id/dialpad_back"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:layout_margin="@dimen/dialpad_overflow_margin"
+        android:paddingLeft="@dimen/dialpad_digits_menu_left_padding"
+        android:paddingRight="@dimen/dialpad_digits_menu_right_padding"
+        android:background="@drawable/btn_dialpad_key"
+        android:contentDescription="@string/description_dialpad_back"
+        android:gravity="center"
+        android:src="@drawable/quantum_ic_close_white_24"
+        android:tint="?attr/dialpad_icon_tint"
+        android:tintMode="src_in"
+        android:visibility="gone"/>
 
     <ImageButton
-      android:id="@+id/dialpad_overflow"
-      android:layout_width="wrap_content"
-      android:layout_height="match_parent"
-      android:layout_margin="@dimen/dialpad_overflow_margin"
-      android:paddingLeft="@dimen/dialpad_digits_menu_left_padding"
-      android:paddingRight="@dimen/dialpad_digits_menu_right_padding"
-      android:background="@drawable/btn_dialpad_key"
-      android:contentDescription="@string/description_dialpad_overflow"
-      android:gravity="center"
-      android:src="@drawable/quantum_ic_more_vert_white_24"
-      android:tint="?attr/dialpad_icon_tint"
-      android:tintMode="src_in"
-      android:visibility="gone"/>
+        android:id="@+id/dialpad_overflow"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:layout_margin="@dimen/dialpad_overflow_margin"
+        android:paddingLeft="@dimen/dialpad_digits_menu_left_padding"
+        android:paddingRight="@dimen/dialpad_digits_menu_right_padding"
+        android:background="@drawable/btn_dialpad_key"
+        android:contentDescription="@string/description_dialpad_overflow"
+        android:gravity="center"
+        android:src="@drawable/quantum_ic_more_vert_white_24"
+        android:tint="?attr/dialpad_icon_tint"
+        android:tintMode="src_in"
+        android:visibility="gone"/>
 
     <view xmlns:ex="http://schemas.android.com/apk/res-auto"
-      android:id="@+id/digits"
-      class="com.android.dialer.dialpadview.DigitsEditText"
-      android:textStyle="normal"
-      android:layout_width="0dp"
-      android:layout_height="match_parent"
-      android:layout_weight="1"
-      android:background="@android:color/transparent"
-      android:cursorVisible="false"
-      android:focusableInTouchMode="true"
-      android:fontFamily="sans-serif"
-      android:freezesText="true"
-      android:gravity="center"
-      android:maxLines="1"
-      android:scrollHorizontally="true"
-      android:singleLine="true"
-      android:textColor="?attr/dialpad_text_color"
-      android:textCursorDrawable="@null"
-      android:textSize="?attr/dialpad_digits_adjustable_text_size"
-      ex:resizing_text_min_size="@dimen/dialpad_digits_text_min_size"/>
+        android:id="@+id/digits"
+        class="com.android.dialer.dialpadview.DigitsEditText"
+        android:textStyle="normal"
+        android:layout_width="0dp"
+        android:layout_height="match_parent"
+        android:layout_weight="1"
+        android:background="@android:color/transparent"
+        android:cursorVisible="false"
+        android:focusableInTouchMode="true"
+        android:fontFamily="sans-serif"
+        android:freezesText="true"
+        android:gravity="center"
+        android:importantForAutofill="no"
+        android:maxLines="1"
+        android:scrollHorizontally="true"
+        android:singleLine="true"
+        android:textColor="?attr/dialpad_text_color"
+        android:textCursorDrawable="@null"
+        android:textSize="?attr/dialpad_digits_adjustable_text_size"
+        ex:resizing_text_min_size="@dimen/dialpad_digits_text_min_size"/>
 
     <ImageButton
-      android:id="@+id/deleteButton"
-      android:layout_width="wrap_content"
-      android:layout_height="match_parent"
-      android:paddingLeft="@dimen/dialpad_digits_padding"
-      android:paddingRight="@dimen/dialpad_digits_padding"
-      android:background="@drawable/btn_dialpad_key"
-      android:contentDescription="@string/description_delete_button"
-      android:src="@drawable/quantum_ic_backspace_white_24"
-      android:state_enabled="false"
-      android:tint="?attr/dialpad_icon_tint"
-      android:tintMode="src_in"/>
+        android:id="@+id/deleteButton"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:paddingLeft="@dimen/dialpad_digits_padding"
+        android:paddingRight="@dimen/dialpad_digits_padding"
+        android:background="@drawable/btn_dialpad_key"
+        android:contentDescription="@string/description_delete_button"
+        android:src="@drawable/quantum_ic_backspace_white_24"
+        android:state_enabled="false"
+        android:tint="?attr/dialpad_icon_tint"
+        android:tintMode="src_in"/>
   </LinearLayout>
 
   <View
-    android:layout_width="match_parent"
-    android:layout_height="1dp"
-    android:background="#e3e3e3"/>
+      android:layout_width="match_parent"
+      android:layout_height="1dp"
+      android:background="#e3e3e3"/>
 
   <Space
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/dialpad_space_above_keys"/>
+      android:layout_width="match_parent"
+      android:layout_height="@dimen/dialpad_space_above_keys"/>
 
   <include layout="@layout/dialpad"/>
 
   <Space
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/dialpad_space_below_keys"/>
+      android:layout_width="match_parent"
+      android:layout_height="@dimen/dialpad_space_below_keys"/>
 
 </view>
diff --git a/java/com/android/dialer/dialpadview/res/values/dimens.xml b/java/com/android/dialer/dialpadview/res/values/dimens.xml
index 210c816..7277364 100644
--- a/java/com/android/dialer/dialpadview/res/values/dimens.xml
+++ b/java/com/android/dialer/dialpadview/res/values/dimens.xml
@@ -16,7 +16,7 @@
 
 <resources>
   <!-- Text dimensions for dialpad keys -->
-  <dimen name="dialpad_key_numbers_default_size">36sp</dimen>
+  <dimen name="dialpad_key_numbers_default_size">36dp</dimen>
   <dimen name="dialpad_key_letters_size">12sp</dimen>
   <dimen name="dialpad_key_pound_size">23sp</dimen>
   <dimen name="dialpad_key_star_size">36sp</dimen>
diff --git a/java/com/android/dialer/enrichedcall/EnrichedCallManager.java b/java/com/android/dialer/enrichedcall/EnrichedCallManager.java
index 0d3ed9e..f1057be 100644
--- a/java/com/android/dialer/enrichedcall/EnrichedCallManager.java
+++ b/java/com/android/dialer/enrichedcall/EnrichedCallManager.java
@@ -16,7 +16,6 @@
 
 package com.android.dialer.enrichedcall;
 
-import android.support.annotation.IntDef;
 import android.support.annotation.MainThread;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
@@ -25,8 +24,6 @@
 import com.android.dialer.enrichedcall.historyquery.proto.HistoryResult;
 import com.android.dialer.enrichedcall.videoshare.VideoShareListener;
 import com.android.dialer.multimedia.MultimediaData;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
 import java.util.List;
 import java.util.Map;
 
@@ -81,27 +78,6 @@
   @MainThread
   void clearCachedData();
 
-  /** Possible states for call composer sessions. */
-  @Retention(RetentionPolicy.SOURCE)
-  @IntDef({
-    STATE_NONE,
-    STATE_STARTING,
-    STATE_STARTED,
-    STATE_START_FAILED,
-    STATE_MESSAGE_SENT,
-    STATE_MESSAGE_FAILED,
-    STATE_CLOSED,
-  })
-  @interface State {}
-
-  int STATE_NONE = 0;
-  int STATE_STARTING = STATE_NONE + 1;
-  int STATE_STARTED = STATE_STARTING + 1;
-  int STATE_START_FAILED = STATE_STARTED + 1;
-  int STATE_MESSAGE_SENT = STATE_START_FAILED + 1;
-  int STATE_MESSAGE_FAILED = STATE_MESSAGE_SENT + 1;
-  int STATE_CLOSED = STATE_MESSAGE_FAILED + 1;
-
   /**
    * Starts a call composer session with the given remote number.
    *
@@ -119,7 +95,7 @@
    * @param sessionId the id for the session. See {@link #startCallComposerSession(String)}
    * @param data the {@link MultimediaData}
    * @throws IllegalArgumentException if there's no open session with the given number
-   * @throws IllegalStateException if the session isn't in the {@link #STATE_STARTED} state
+   * @throws IllegalStateException if the session isn't in the {@link Session#STATE_STARTED} state
    */
   @MainThread
   void sendCallComposerData(long sessionId, @NonNull MultimediaData data);
@@ -185,6 +161,15 @@
   @Nullable
   Session getSession(long sessionId);
 
+  /**
+   * Returns a list containing viewable string representations of all existing sessions.
+   *
+   * <p>Intended for debug display purposes only.
+   */
+  @MainThread
+  @NonNull
+  List<String> getAllSessionsForDisplay();
+
   @NonNull
   Filter createIncomingCallComposerFilter();
 
@@ -212,6 +197,10 @@
   Map<CallDetailsEntry, List<HistoryResult>> getAllHistoricalData(
       @NonNull String number, @NonNull CallDetailsEntries entries);
 
+  /** Returns true if any enriched calls have been made or received. */
+  @MainThread
+  boolean hasStoredData();
+
   /**
    * Unregisters the given {@link StateChangedListener}.
    *
diff --git a/java/com/android/dialer/enrichedcall/FuzzyPhoneNumberMatcher.java b/java/com/android/dialer/enrichedcall/FuzzyPhoneNumberMatcher.java
index 250c643..27dc0e9 100644
--- a/java/com/android/dialer/enrichedcall/FuzzyPhoneNumberMatcher.java
+++ b/java/com/android/dialer/enrichedcall/FuzzyPhoneNumberMatcher.java
@@ -16,20 +16,41 @@
 package com.android.dialer.enrichedcall;
 
 import android.support.annotation.NonNull;
-import com.android.dialer.common.Assert;
 
 /** Utility for comparing phone numbers. */
 public class FuzzyPhoneNumberMatcher {
 
-  /** Returns {@code true} if the given numbers can be interpreted to be the same. */
-  public static boolean matches(@NonNull String a, @NonNull String b) {
-    String aNormalized = Assert.isNotNull(a).replaceAll("[^0-9]", "");
-    String bNormalized = Assert.isNotNull(b).replaceAll("[^0-9]", "");
-    if (aNormalized.length() < 7 || bNormalized.length() < 7) {
-      return false;
+  private static final int REQUIRED_MATCHED_DIGITS = 7;
+
+  /**
+   * Returns {@code true} if the given numbers can be interpreted to be the same.
+   *
+   * <p>This method is called numerous times when rendering the call log. Using string methods is
+   * too slow, so character by character matching is used instead.
+   */
+  public static boolean matches(@NonNull String lhs, @NonNull String rhs) {
+    int aIndex = lhs.length() - 1;
+    int bIndex = rhs.length() - 1;
+
+    int matchedDigits = 0;
+
+    while (aIndex >= 0 && bIndex >= 0) {
+      if (!Character.isDigit(lhs.charAt(aIndex))) {
+        --aIndex;
+        continue;
+      }
+      if (!Character.isDigit(rhs.charAt(bIndex))) {
+        --bIndex;
+        continue;
+      }
+      if (lhs.charAt(aIndex) != rhs.charAt(bIndex)) {
+        return false;
+      }
+      --aIndex;
+      --bIndex;
+      ++matchedDigits;
     }
-    String aMatchable = aNormalized.substring(aNormalized.length() - 7);
-    String bMatchable = bNormalized.substring(bNormalized.length() - 7);
-    return aMatchable.equals(bMatchable);
+
+    return matchedDigits >= REQUIRED_MATCHED_DIGITS;
   }
 }
diff --git a/java/com/android/dialer/enrichedcall/Session.java b/java/com/android/dialer/enrichedcall/Session.java
index b3f2914..06837e3 100644
--- a/java/com/android/dialer/enrichedcall/Session.java
+++ b/java/com/android/dialer/enrichedcall/Session.java
@@ -16,14 +16,37 @@
 
 package com.android.dialer.enrichedcall;
 
+import android.support.annotation.IntDef;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
-import com.android.dialer.enrichedcall.EnrichedCallManager.State;
 import com.android.dialer.multimedia.MultimediaData;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
 
 /** Holds state information and data about enriched calling sessions. */
 public interface Session {
 
+  /** Possible states for call composer sessions. */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({
+    STATE_NONE,
+    STATE_STARTING,
+    STATE_STARTED,
+    STATE_START_FAILED,
+    STATE_MESSAGE_SENT,
+    STATE_MESSAGE_FAILED,
+    STATE_CLOSED,
+  })
+  @interface State {}
+
+  int STATE_NONE = 0;
+  int STATE_STARTING = STATE_NONE + 1;
+  int STATE_STARTED = STATE_STARTING + 1;
+  int STATE_START_FAILED = STATE_STARTED + 1;
+  int STATE_MESSAGE_SENT = STATE_START_FAILED + 1;
+  int STATE_MESSAGE_FAILED = STATE_MESSAGE_SENT + 1;
+  int STATE_CLOSED = STATE_MESSAGE_FAILED + 1;
+
   /** Id used for sessions that fail to start. */
   long NO_SESSION_ID = -1;
 
diff --git a/java/com/android/dialer/enrichedcall/extensions/StateExtension.java b/java/com/android/dialer/enrichedcall/extensions/StateExtension.java
index 8a4f640..5d90829 100644
--- a/java/com/android/dialer/enrichedcall/extensions/StateExtension.java
+++ b/java/com/android/dialer/enrichedcall/extensions/StateExtension.java
@@ -18,8 +18,8 @@
 
 import android.support.annotation.NonNull;
 import com.android.dialer.common.Assert;
-import com.android.dialer.enrichedcall.EnrichedCallManager;
-import com.android.dialer.enrichedcall.EnrichedCallManager.State;
+import com.android.dialer.enrichedcall.Session;
+import com.android.dialer.enrichedcall.Session.State;
 
 /** Extends the {@link State} to include a toString method. */
 public class StateExtension {
@@ -27,25 +27,25 @@
   /** Returns the string representation for the given {@link State}. */
   @NonNull
   public static String toString(@State int callComposerState) {
-    if (callComposerState == EnrichedCallManager.STATE_NONE) {
+    if (callComposerState == Session.STATE_NONE) {
       return "STATE_NONE";
     }
-    if (callComposerState == EnrichedCallManager.STATE_STARTING) {
+    if (callComposerState == Session.STATE_STARTING) {
       return "STATE_STARTING";
     }
-    if (callComposerState == EnrichedCallManager.STATE_STARTED) {
+    if (callComposerState == Session.STATE_STARTED) {
       return "STATE_STARTED";
     }
-    if (callComposerState == EnrichedCallManager.STATE_START_FAILED) {
+    if (callComposerState == Session.STATE_START_FAILED) {
       return "STATE_START_FAILED";
     }
-    if (callComposerState == EnrichedCallManager.STATE_MESSAGE_SENT) {
+    if (callComposerState == Session.STATE_MESSAGE_SENT) {
       return "STATE_MESSAGE_SENT";
     }
-    if (callComposerState == EnrichedCallManager.STATE_MESSAGE_FAILED) {
+    if (callComposerState == Session.STATE_MESSAGE_FAILED) {
       return "STATE_MESSAGE_FAILED";
     }
-    if (callComposerState == EnrichedCallManager.STATE_CLOSED) {
+    if (callComposerState == Session.STATE_CLOSED) {
       return "STATE_CLOSED";
     }
     Assert.checkArgument(false, "Unexpected callComposerState: %d", callComposerState);
diff --git a/java/com/android/dialer/enrichedcall/historyquery/proto/history_result.proto b/java/com/android/dialer/enrichedcall/historyquery/proto/history_result.proto
index 62d013a..8efb35c 100644
--- a/java/com/android/dialer/enrichedcall/historyquery/proto/history_result.proto
+++ b/java/com/android/dialer/enrichedcall/historyquery/proto/history_result.proto
@@ -4,6 +4,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 package com.android.dialer.enrichedcall.historyquery.proto;
 
 // Holds data that was used in an enrichedcall in the past
diff --git a/java/com/android/dialer/enrichedcall/simulator/AndroidManifest.xml b/java/com/android/dialer/enrichedcall/simulator/AndroidManifest.xml
new file mode 100644
index 0000000..003ff19
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/AndroidManifest.xml
@@ -0,0 +1,26 @@
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<manifest
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialer.calldetails">
+  <application android:theme="@style/Theme.AppCompat">
+    <activity
+        android:label="@string/enriched_call_simulator_activity"
+        android:name="com.android.dialer.enrichedcall.simulator.EnrichedCallSimulatorActivity"
+        android:theme="@style/DialerThemeBase.NoActionBar">
+    </activity>
+  </application>
+</manifest>
diff --git a/java/com/android/dialer/enrichedcall/simulator/EnrichedCallSimulatorActivity.java b/java/com/android/dialer/enrichedcall/simulator/EnrichedCallSimulatorActivity.java
new file mode 100644
index 0000000..bbc1ada
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/EnrichedCallSimulatorActivity.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (C) 2017 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.dialer.enrichedcall.simulator;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.Toolbar;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.widget.Button;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.enrichedcall.EnrichedCallComponent;
+import com.android.dialer.enrichedcall.EnrichedCallManager;
+import com.android.dialer.enrichedcall.EnrichedCallManager.StateChangedListener;
+
+/**
+ * Activity used to display Enriched call sessions that are currently in memory, and create new
+ * outgoing sessions with various bits of data.
+ *
+ * <p>This activity will dynamically refresh as new sessions are added or updated, but there's no
+ * update when sessions are deleted from memory. Use the refresh button to update the view.
+ */
+public class EnrichedCallSimulatorActivity extends AppCompatActivity
+    implements StateChangedListener, OnClickListener {
+
+  public static Intent newIntent(@NonNull Context context) {
+    return new Intent(Assert.isNotNull(context), EnrichedCallSimulatorActivity.class);
+  }
+
+  private Button refreshButton;
+
+  private SessionsAdapter sessionsAdapter;
+
+  @Override
+  protected void onCreate(@Nullable Bundle bundle) {
+    LogUtil.enterBlock("EnrichedCallSimulatorActivity.onCreate");
+    super.onCreate(bundle);
+    setContentView(R.layout.enriched_call_simulator_activity);
+    Toolbar toolbar = findViewById(R.id.toolbar);
+    toolbar.setTitle(R.string.enriched_call_simulator_activity);
+
+    refreshButton = findViewById(R.id.refresh);
+    refreshButton.setOnClickListener(this);
+
+    RecyclerView recyclerView = findViewById(R.id.sessions_recycler_view);
+    recyclerView.setLayoutManager(new LinearLayoutManager(this));
+
+    sessionsAdapter = new SessionsAdapter();
+    sessionsAdapter.setSessionStrings(getEnrichedCallManager().getAllSessionsForDisplay());
+    recyclerView.setAdapter(sessionsAdapter);
+  }
+
+  @Override
+  protected void onResume() {
+    LogUtil.enterBlock("EnrichedCallSimulatorActivity.onResume");
+    super.onResume();
+    getEnrichedCallManager().registerStateChangedListener(this);
+  }
+
+  @Override
+  protected void onPause() {
+    LogUtil.enterBlock("EnrichedCallSimulatorActivity.onPause");
+    super.onPause();
+    getEnrichedCallManager().unregisterStateChangedListener(this);
+  }
+
+  @Override
+  public void onEnrichedCallStateChanged() {
+    LogUtil.enterBlock("EnrichedCallSimulatorActivity.onEnrichedCallStateChanged");
+    refreshSessions();
+  }
+
+  @Override
+  public void onClick(View v) {
+    if (v == refreshButton) {
+      LogUtil.i("EnrichedCallSimulatorActivity.onClick", "refreshing sessions");
+      refreshSessions();
+    }
+  }
+
+  private void refreshSessions() {
+    sessionsAdapter.setSessionStrings(getEnrichedCallManager().getAllSessionsForDisplay());
+    sessionsAdapter.notifyDataSetChanged();
+  }
+
+  private EnrichedCallManager getEnrichedCallManager() {
+    return EnrichedCallComponent.get(this).getEnrichedCallManager();
+  }
+}
diff --git a/java/com/android/dialer/enrichedcall/simulator/SessionViewHolder.java b/java/com/android/dialer/enrichedcall/simulator/SessionViewHolder.java
new file mode 100644
index 0000000..4443125
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/SessionViewHolder.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2017 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.dialer.enrichedcall.simulator;
+
+import android.support.annotation.NonNull;
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.TextView;
+
+/** ViewHolder for an Enriched call session. */
+class SessionViewHolder extends RecyclerView.ViewHolder {
+
+  private final TextView sessionStringView;
+
+  SessionViewHolder(View view) {
+    super(view);
+    sessionStringView = view.findViewById(R.id.session_string);
+  }
+
+  void updateSession(@NonNull String sessionString) {
+    sessionStringView.setText(sessionString);
+  }
+}
diff --git a/java/com/android/dialer/enrichedcall/simulator/SessionsAdapter.java b/java/com/android/dialer/enrichedcall/simulator/SessionsAdapter.java
new file mode 100644
index 0000000..25edfc7
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/SessionsAdapter.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2017 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.dialer.enrichedcall.simulator;
+
+import android.support.annotation.NonNull;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.ViewGroup;
+import com.android.dialer.common.Assert;
+import java.util.List;
+
+/** Adapter for the RecyclerView in {@link EnrichedCallSimulatorActivity}. */
+class SessionsAdapter extends RecyclerView.Adapter<SessionViewHolder> {
+
+  /** List of the string representation of all in-memory sessions */
+  private List<String> sessionStrings;
+
+  void setSessionStrings(@NonNull List<String> sessionStrings) {
+    this.sessionStrings = Assert.isNotNull(sessionStrings);
+  }
+
+  @Override
+  public SessionViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
+    LayoutInflater inflater = LayoutInflater.from(viewGroup.getContext());
+    return new SessionViewHolder(inflater.inflate(R.layout.session_view_holder, viewGroup, false));
+  }
+
+  @Override
+  public void onBindViewHolder(SessionViewHolder viewHolder, int i) {
+    viewHolder.updateSession(sessionStrings.get(i));
+  }
+
+  @Override
+  public int getItemCount() {
+    return sessionStrings.size();
+  }
+}
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/layout/enriched_call_simulator_activity.xml b/java/com/android/dialer/enrichedcall/simulator/res/layout/enriched_call_simulator_activity.xml
new file mode 100644
index 0000000..be9aa7d
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/layout/enriched_call_simulator_activity.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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">
+
+  <com.android.dialer.widget.DialerToolbar
+      android:id="@+id/toolbar"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"/>
+
+  <android.support.v7.widget.RecyclerView
+      android:id="@+id/sessions_recycler_view"
+      android:layout_width="match_parent"
+      android:layout_height="0dp"
+      android:layout_weight="1"/>
+
+  <Button
+      android:id="@+id/refresh"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:text="@string/refresh"/>
+</LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/layout/session_view_holder.xml b/java/com/android/dialer/enrichedcall/simulator/res/layout/session_view_holder.xml
new file mode 100644
index 0000000..65543bd
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/layout/session_view_holder.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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"
+    android:id="@+id/session_string"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:padding="2dp"/>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-af/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-af/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-af/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-am/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-am/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-am/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ar/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ar/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ar/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-az/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-az/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-az/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-b+sr+Latn/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-b+sr+Latn/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-be/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-be/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-be/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-bg/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-bg/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-bg/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-bn/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-bn/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-bn/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-bs/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-bs/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-bs/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ca/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ca/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ca/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-cs/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-cs/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-cs/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-da/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-da/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-da/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-de/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-de/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-de/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-el/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-el/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-el/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-en-rAU/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-en-rAU/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-en-rAU/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-en-rGB/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-en-rGB/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-en-rGB/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-en-rIN/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-en-rIN/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-en-rIN/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-es-rUS/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-es-rUS/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-es-rUS/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-es/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-es/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-es/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-et/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-et/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-et/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-eu/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-eu/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-eu/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-fa/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-fa/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-fa/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-fi/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-fi/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-fi/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-fr-rCA/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-fr-rCA/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-fr-rCA/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-fr/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-fr/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-fr/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-gl/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-gl/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-gl/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-gu/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-gu/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-gu/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-hi/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-hi/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-hi/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-hr/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-hr/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-hr/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-hu/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-hu/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-hu/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-hy/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-hy/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-hy/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-in/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-in/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-in/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-is/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-is/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-is/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-it/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-it/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-it/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-iw/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-iw/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-iw/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ja/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ja/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ja/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ka/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ka/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ka/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-kk/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-kk/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-kk/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-km/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-km/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-km/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-kn/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-kn/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-kn/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ko/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ko/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ko/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ky/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ky/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ky/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-lo/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-lo/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-lo/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-lt/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-lt/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-lt/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-lv/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-lv/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-lv/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-mk/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-mk/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-mk/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ml/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ml/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ml/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-mn/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-mn/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-mn/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-mr/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-mr/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-mr/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ms/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ms/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ms/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-my/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-my/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-my/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-nb/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-nb/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-nb/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ne/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ne/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ne/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-nl/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-nl/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-nl/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-no/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-no/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-no/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-pa/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-pa/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-pa/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-pl/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-pl/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-pl/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-pt-rBR/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-pt-rBR/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-pt-rBR/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-pt-rPT/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-pt-rPT/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-pt-rPT/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-pt/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-pt/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-pt/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ro/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ro/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ro/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ru/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ru/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ru/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-si/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-si/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-si/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-sk/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-sk/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-sk/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-sl/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-sl/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-sl/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-sq/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-sq/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-sq/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-sr/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-sr/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-sr/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-sv/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-sv/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-sv/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-sw/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-sw/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-sw/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ta/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ta/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ta/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-te/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-te/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-te/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-th/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-th/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-th/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-tl/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-tl/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-tl/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-tr/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-tr/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-tr/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-uk/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-uk/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-uk/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-ur/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-ur/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-ur/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-uz/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-uz/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-uz/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-vi/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-vi/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-vi/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rCN/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rCN/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rHK/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rHK/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rHK/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rTW/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-zh-rTW/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values-zu/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values-zu/strings.xml
new file mode 100644
index 0000000..b0c27bc
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values-zu/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+</resources>
diff --git a/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml b/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml
new file mode 100644
index 0000000..5cc2527
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<resources>
+  <string name="enriched_call_simulator_activity" translatable="false">Enriched Call Simulator Activity</string>
+
+  <string name="important" translatable="false">important</string>
+  <string name="not_important" translatable="false">not important</string>
+
+  <string name="refresh" translatable="false">refresh</string>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java b/java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java
index 0540d91..1f2b005 100644
--- a/java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java
+++ b/java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java
@@ -28,6 +28,7 @@
 import com.android.dialer.enrichedcall.historyquery.proto.HistoryResult;
 import com.android.dialer.enrichedcall.videoshare.VideoShareListener;
 import com.android.dialer.multimedia.MultimediaData;
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
@@ -85,6 +86,14 @@
     return null;
   }
 
+  @MainThread
+  @NonNull
+  @Override
+  public List<String> getAllSessionsForDisplay() {
+    Assert.isMainThread();
+    return Collections.emptyList();
+  }
+
   @NonNull
   @Override
   public Filter createIncomingCallComposerFilter() {
@@ -106,6 +115,12 @@
     return null;
   }
 
+  @Override
+  public boolean hasStoredData() {
+    Assert.isMainThread();
+    return false;
+  }
+
   @MainThread
   @Override
   public void requestAllHistoricalData(
diff --git a/java/com/android/dialer/inject/ApplicationContext.java b/java/com/android/dialer/inject/ApplicationContext.java
new file mode 100644
index 0000000..913e36e
--- /dev/null
+++ b/java/com/android/dialer/inject/ApplicationContext.java
@@ -0,0 +1,22 @@
+/*
+ * Copyright (C) 2017 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.dialer.inject;
+
+import javax.inject.Qualifier;
+
+/** Annotation for retrieving the application context. */
+@Qualifier
+public @interface ApplicationContext {}
diff --git a/java/com/android/dialer/inject/ContextModule.java b/java/com/android/dialer/inject/ContextModule.java
index aa83f01..e3da08e 100644
--- a/java/com/android/dialer/inject/ContextModule.java
+++ b/java/com/android/dialer/inject/ContextModule.java
@@ -22,17 +22,18 @@
 import dagger.Module;
 import dagger.Provides;
 
-/** Provides the singleton context object. */
+/** Provides the singleton application context object. */
 @Module
 public final class ContextModule {
 
   @NonNull private final Context context;
 
-  public ContextModule(@NonNull Context context) {
-    this.context = Assert.isNotNull(context);
+  public ContextModule(@NonNull Context appContext) {
+    this.context = Assert.isNotNull(appContext);
   }
 
   @Provides
+  @ApplicationContext
   Context provideContext() {
     return context;
   }
diff --git a/java/com/android/dialer/interactions/PhoneNumberInteraction.java b/java/com/android/dialer/interactions/PhoneNumberInteraction.java
index 52f9d20..ef468a9 100644
--- a/java/com/android/dialer/interactions/PhoneNumberInteraction.java
+++ b/java/com/android/dialer/interactions/PhoneNumberInteraction.java
@@ -54,11 +54,14 @@
 import com.android.contacts.common.Collapser.Collapsible;
 import com.android.contacts.common.MoreContactUtils;
 import com.android.contacts.common.util.ContactDisplayUtils;
+import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.callintent.CallIntentParser;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.TransactionSafeActivity;
 import java.lang.annotation.Retention;
@@ -543,6 +546,12 @@
         final PhoneItem phoneItem = mPhoneList.get(which);
         final CheckBox checkBox = (CheckBox) alertDialog.findViewById(R.id.setPrimary);
         if (checkBox.isChecked()) {
+          if (mCallSpecificAppData.getCallInitiationType() == CallInitiationType.Type.SPEED_DIAL) {
+            Logger.get(getContext())
+                .logInteraction(
+                    InteractionEvent.Type.SPEED_DIAL_SET_DEFAULT_NUMBER_FOR_AMBIGUOUS_CONTACT);
+          }
+
           // Request to mark the data as primary in the background.
           final Intent serviceIntent =
               ContactUpdateService.createSetSuperPrimaryIntent(activity, phoneItem.id);
diff --git a/java/com/android/dialer/interactions/res/values-uz/strings.xml b/java/com/android/dialer/interactions/res/values-uz/strings.xml
index 7eb8175..026198c 100644
--- a/java/com/android/dialer/interactions/res/values-uz/strings.xml
+++ b/java/com/android/dialer/interactions/res/values-uz/strings.xml
@@ -19,5 +19,5 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="sms_disambig_title" msgid="369677069797534410">"Raqamni tanlang"</string>
     <string name="call_disambig_title" msgid="2395382326030227603">"Raqamni tanlang"</string>
-    <string name="make_primary" msgid="9069345357862475091">"Ushbu tanlov eslab qolinsin"</string>
+    <string name="make_primary" msgid="9069345357862475091">"Bu tanlov eslab qolinsin"</string>
 </resources>
diff --git a/java/com/android/dialer/lightbringer/Lightbringer.java b/java/com/android/dialer/lightbringer/Lightbringer.java
index 8caafda..669e571 100644
--- a/java/com/android/dialer/lightbringer/Lightbringer.java
+++ b/java/com/android/dialer/lightbringer/Lightbringer.java
@@ -22,16 +22,24 @@
 import android.support.annotation.MainThread;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.telecom.Call;
+import android.telecom.PhoneAccountHandle;
 
 public interface Lightbringer {
 
   @MainThread
-  boolean isReachable(@NonNull Context context, @NonNull String number);
+  boolean isReachable(@NonNull Context context, @Nullable String number);
+
+  @MainThread
+  boolean supportsUpgrade(@NonNull Context context, @Nullable String number);
 
   @MainThread
   Intent getIntent(@NonNull Context context, @NonNull String number);
 
   @MainThread
+  void requestUpgrade(Call call);
+
+  @MainThread
   void registerListener(@NonNull LightbringerListener listener);
 
   @MainThread
@@ -39,9 +47,13 @@
 
   @Nullable
   @MainThread
-  ComponentName getPhoneAccountComponentName(@NonNull Context context);
+  ComponentName getPhoneAccountComponentName();
 
-  @NonNull
+  @Nullable
   @MainThread
-  String getPackageName(@NonNull Context context);
+  PhoneAccountHandle getPhoneAccountHandle();
+
+  @Nullable
+  @MainThread
+  String getPackageName();
 }
diff --git a/java/com/android/dialer/lightbringer/stub/LightbringerStub.java b/java/com/android/dialer/lightbringer/stub/LightbringerStub.java
index f9bb4cd..1cb3c1f 100644
--- a/java/com/android/dialer/lightbringer/stub/LightbringerStub.java
+++ b/java/com/android/dialer/lightbringer/stub/LightbringerStub.java
@@ -19,7 +19,11 @@
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.Intent;
+import android.support.annotation.MainThread;
 import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.telecom.Call;
+import android.telecom.PhoneAccountHandle;
 import com.android.dialer.common.Assert;
 import com.android.dialer.lightbringer.Lightbringer;
 import com.android.dialer.lightbringer.LightbringerListener;
@@ -30,30 +34,67 @@
   @Inject
   public LightbringerStub() {}
 
+  @MainThread
   @Override
-  public boolean isReachable(Context context, String number) {
+  public boolean isReachable(@NonNull Context context, @Nullable String number) {
+    Assert.isMainThread();
+    Assert.isNotNull(context);
     return false;
   }
 
+  @MainThread
   @Override
-  public Intent getIntent(Context context, String number) {
+  public boolean supportsUpgrade(@NonNull Context context, @Nullable String number) {
+    Assert.isMainThread();
+    Assert.isNotNull(context);
+    return false;
+  }
+
+  @MainThread
+  @Override
+  public Intent getIntent(@NonNull Context context, @NonNull String number) {
+    Assert.isMainThread();
+    Assert.isNotNull(context);
+    Assert.isNotNull(number);
     return null;
   }
 
+  @MainThread
   @Override
-  public void registerListener(LightbringerListener listener) {}
+  public void requestUpgrade(Call call) {
+    Assert.isMainThread();
+    Assert.isNotNull(call);
+  }
 
+  @MainThread
   @Override
-  public void unregisterListener(LightbringerListener listener) {}
+  public void registerListener(LightbringerListener listener) {
+    Assert.isMainThread();
+    Assert.isNotNull(listener);
+  }
 
+  @MainThread
   @Override
-  public ComponentName getPhoneAccountComponentName(Context context) {
+  public void unregisterListener(LightbringerListener listener) {
+    Assert.isMainThread();
+    Assert.isNotNull(listener);
+  }
+
+  @Nullable
+  @Override
+  public ComponentName getPhoneAccountComponentName() {
     return null;
   }
 
-  @NonNull
+  @Nullable
   @Override
-  public String getPackageName(@NonNull Context context) {
-    throw Assert.createUnsupportedOperationFailException();
+  public PhoneAccountHandle getPhoneAccountHandle() {
+    return null;
+  }
+
+  @Nullable
+  @Override
+  public String getPackageName() {
+    return null;
   }
 }
diff --git a/java/com/android/dialer/location/CountryDetector.java b/java/com/android/dialer/location/CountryDetector.java
index a90febf..c4bed14 100644
--- a/java/com/android/dialer/location/CountryDetector.java
+++ b/java/com/android/dialer/location/CountryDetector.java
@@ -33,8 +33,8 @@
 import android.text.TextUtils;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.common.concurrent.DialerExecutors;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
 import com.android.dialer.util.PermissionsUtil;
 import java.util.List;
 import java.util.Locale;
@@ -216,7 +216,9 @@
 
   private static void processLocationUpdate(
       Context appContext, Geocoder geocoder, Location location) {
-    DialerExecutors.createNonUiTaskBuilder(new GeocodeCountryWorker(geocoder))
+    DialerExecutorComponent.get(appContext)
+        .dialerExecutorFactory()
+        .createNonUiTaskBuilder(new GeocodeCountryWorker(geocoder))
         .onSuccess(
             country -> {
               if (country == null) {
diff --git a/java/com/android/dialer/logging/LoggingBindings.java b/java/com/android/dialer/logging/LoggingBindings.java
index 526cb20..85ccfdf 100644
--- a/java/com/android/dialer/logging/LoggingBindings.java
+++ b/java/com/android/dialer/logging/LoggingBindings.java
@@ -14,8 +14,8 @@
 
 package com.android.dialer.logging;
 
-
 import android.app.Activity;
+import android.widget.QuickContactBadge;
 
 /** Allows the container application to gather analytics. */
 public interface LoggingBindings {
@@ -62,6 +62,22 @@
    */
   void logScreenView(com.android.dialer.logging.ScreenEvent.Type screenEvent, Activity activity);
 
+  /** Logs the composition of contact tiles in the speed dial tab. */
+  void logSpeedDialContactComposition(
+      int counter,
+      int starredContactsCount,
+      int pinnedContactsCount,
+      int multipleNumbersContactsCount,
+      int contactsWithPhotoCount,
+      int contactsWithNameCount,
+      int lightbringerReachableContactsCount);
+
   /** Logs a hit event to the analytics server. */
   void sendHitEventAnalytics(String category, String action, String label, long value);
+
+  /** Logs where a quick contact badge is clicked */
+  void logQuickContactOnTouch(
+      QuickContactBadge quickContact,
+      InteractionEvent.Type interactionEvent,
+      boolean shouldPerformClick);
 }
diff --git a/java/com/android/dialer/logging/LoggingBindingsStub.java b/java/com/android/dialer/logging/LoggingBindingsStub.java
index f7ca6ec..3892996 100644
--- a/java/com/android/dialer/logging/LoggingBindingsStub.java
+++ b/java/com/android/dialer/logging/LoggingBindingsStub.java
@@ -15,6 +15,7 @@
 package com.android.dialer.logging;
 
 import android.app.Activity;
+import android.widget.QuickContactBadge;
 
 /** Default implementation for logging bindings. */
 public class LoggingBindingsStub implements LoggingBindings {
@@ -36,5 +37,21 @@
   public void logScreenView(ScreenEvent.Type screenEvent, Activity activity) {}
 
   @Override
+  public void logSpeedDialContactComposition(
+      int counter,
+      int starredContactsCount,
+      int pinnedContactsCount,
+      int multipleNumbersContactsCount,
+      int contactsWithPhotoCount,
+      int contactsWithNameCount,
+      int lightbringerReachableContactsCount) {}
+
+  @Override
   public void sendHitEventAnalytics(String category, String action, String label, long value) {}
+
+  @Override
+  public void logQuickContactOnTouch(
+      QuickContactBadge quickContact,
+      InteractionEvent.Type interactionEvent,
+      boolean shouldPerformClick) {}
 }
diff --git a/java/com/android/dialer/logging/contact_lookup_result.proto b/java/com/android/dialer/logging/contact_lookup_result.proto
index 835d7d7..13ea3c8 100644
--- a/java/com/android/dialer/logging/contact_lookup_result.proto
+++ b/java/com/android/dialer/logging/contact_lookup_result.proto
@@ -5,6 +5,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message ContactLookupResult {
   // The different results of a contact lookup done using a phone number.
   enum Type {
@@ -16,10 +17,10 @@
     // Contact was found in the local database.
     LOCAL_CONTACT = 2;
 
-    // Contact was found in Google Dialer's internal phone number cache
+    // DEPRECATED: see subcategories below
     LOCAL_CACHE = 3;
 
-    // Contact was found via Google Caller ID
+    // DEPRECATED: see subcategories below
     REMOTE = 4;
 
     // Phone number was an emergency phone number
@@ -27,5 +28,40 @@
 
     // Phone number was the SIM card's voicemail number
     VOICEMAIL = 6;
+
+    // Phone number was identified via the places part of the People API.
+    REMOTE_PLACES = 7;
+
+    // Phone number was identified via the profile part of the People API.
+    REMOTE_PROFILE = 8;
+
+    // Number was found in Dialer's local cache but we don't know how it was
+    // originally identified.
+    LOCAL_CACHE_UNKNOWN = 9;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // as a personal contact.
+    LOCAL_CACHE_DIRECTORY = 10;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via a custom extended directory.
+    LOCAL_CACHE_EXTENDED = 11;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via the places part of the People API.
+    LOCAL_CACHE_PLACES = 12;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via the profile part of the People API.
+    LOCAL_CACHE_PROFILE = 13;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via Caller Name Presentation (CNAP) information. Calls in this
+    // category would have had ContactLookupResultType NOT_FOUND originally.
+    LOCAL_CACHE_CNAP = 14;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via Cequint caller ID.
+    LOCAL_CACHE_CEQUINT = 15;
   }
 }
diff --git a/java/com/android/dialer/logging/contact_source.proto b/java/com/android/dialer/logging/contact_source.proto
index 470cf8b..ffd32de 100644
--- a/java/com/android/dialer/logging/contact_source.proto
+++ b/java/com/android/dialer/logging/contact_source.proto
@@ -5,6 +5,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message ContactSource {
   // Applies only to reports made from call history. If we have contact
   // information for the phone number, this field indicates its source.
diff --git a/java/com/android/dialer/logging/dialer_impression.proto b/java/com/android/dialer/logging/dialer_impression.proto
index 5416146..2f89a3a 100644
--- a/java/com/android/dialer/logging/dialer_impression.proto
+++ b/java/com/android/dialer/logging/dialer_impression.proto
@@ -5,11 +5,12 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
+
 message DialerImpression {
   // Event enums to be used for Impression Logging in Dialer.
   // It's perfectly acceptable for this enum to be large
   // Values should be from 1000 to 100000.
-  // Next Tag:1191
   enum Type {
 
     UNKNOWN_AOSP_EVENT_TYPE = 1000;
@@ -386,5 +387,73 @@
     VVM_STATUS_CHECK_REACTIVATION = 1189;
 
     VVM_ARCHIVE_AUTO_DELETE_FAILED_DUE_TO_FAILED_QUOTA_CHECK = 1190;
+
+    // User pressed the speaker phone button on the return-to-call bubble
+    BUBBLE_TURN_ON_SPEAKERPHONE = 1191;
+    // User pressed the speaker phone button again on the return-to-call bubble
+    BUBBLE_TURN_ON_WIRED_OR_EARPIECE = 1192;
+    // User muted the call from the return-to-call bubble
+    BUBBLE_MUTE_CALL = 1193;
+    // User unmuted the call from the return-to-call bubble
+    BUBBLE_UNMUTE_CALL = 1194;
+    // User ended the call from the return-to-call bubble
+    BUBBLE_END_CALL = 1195;
+
+    LIGHTBRINGER_VIDEO_REQUESTED_FROM_SEARCH = 1196;
+    LIGHTBRINGER_VIDEO_REQUESTED_FROM_CALL_LOG =
+        1197;  // Including call history
+    IMS_VIDEO_REQUESTED_FROM_SEARCH = 1198;
+    IMS_VIDEO_REQUESTED_FROM_CALL_LOG = 1199;  // Including call history
+
+    // Multi select impressions
+    MULTISELECT_LONG_PRESS_ENTER_MULTI_SELECT_MODE = 1200;
+    MULTISELECT_LONG_PRESS_TAP_ENTRY = 1201;
+    MULTISELECT_SINGLE_PRESS_SELECT_ENTRY = 1202;
+    MULTISELECT_SINGLE_PRESS_UNSELECT_ENTRY = 1203;
+    MULTISELECT_SINGLE_PRESS_TAP_VIA_CONTACT_BADGE = 1204;
+    MULTISELECT_SELECT_ALL = 1205;
+    MULTISELECT_UNSELECT_ALL = 1206;
+    MULTISELECT_TAP_DELETE_ICON = 1207;
+    MULTISELECT_DISPLAY_DELETE_CONFIRMATION_DIALOG = 1208;
+    MULTISELECT_DELETE_ENTRY_VIA_CONFIRMATION_DIALOG = 1209;
+    MULTISELECT_CANCEL_CONFIRMATION_DIALOG_VIA_CANCEL_BUTTON = 1210;
+    MULTISELECT_CANCEL_CONFIRMATION_DIALOG_VIA_CANCEL_TOUCH = 1211;
+    MULTISELECT_ROTATE_AND_SHOW_ACTION_MODE= 1212;
+
+    // Impressions for verizon VVM with backup and transcription ToS
+    VOICEMAIL_VVM3_TOS_V2_CREATED = 1213;
+    VOICEMAIL_VVM3_TOS_V2_ACCEPTED = 1214;
+    VOICEMAIL_VVM3_TOS_V2_DECLINE_CLICKED = 1215;
+    // Impressions for dialer voicemail with backup and transcription ToS
+    VOICEMAIL_DIALER_TOS_CREATED = 1216;
+    VOICEMAIL_DIALER_TOS_ACCEPTED = 1217;
+    VOICEMAIL_DIALER_TOS_DECLINE_CLICKED = 1218;
+
+    // Add or create contact
+    // Creating new contact fab was logged as NEW_CONTACT_FAB
+    CREATE_NEW_CONTACT_FROM_CALL_LOG = 1219;
+    CREATE_NEW_CONTACT_FROM_DIALPAD = 1220;
+    CREATE_NEW_CONTACT_FROM_VOICEMAIL = 1221;
+    CREATE_NEW_CONTACT_FROM_CALL_HISTORY = 1222;
+    ADD_TO_A_CONTACT_FROM_CALL_LOG = 1223;
+    ADD_TO_A_CONTACT_FROM_DIALPAD = 1224;
+    ADD_TO_A_CONTACT_FROM_VOICEMAIL = 1225;
+    ADD_TO_A_CONTACT_FROM_CALL_HISTORY = 1226;
+
+    // Impressions for dialer reporting caller id as inaccurate
+    CALLER_ID_REPORTED = 1227;
+    CALLER_ID_REPORT_FAILED = 1228;
+
+    // Impressions for interactions with the voicemail transcription server
+    VVM_TRANSCRIPTION_REQUEST_SENT = 1229;
+    VVM_TRANSCRIPTION_REQUEST_RETRY = 1230;
+    VVM_TRANSCRIPTION_RESPONSE_SUCCESS = 1231;
+    VVM_TRANSCRIPTION_RESPONSE_EMPTY = 1232;
+    VVM_TRANSCRIPTION_RESPONSE_INVALID = 1233;
+    VVM_TRANSCRIPTION_RESPONSE_RECOVERABLE_ERROR = 1234;
+    VVM_TRANSCRIPTION_RESPONSE_FATAL_ERROR = 1235;
+
+    // In in call UI
+    UPGRADE_TO_VIDEO_CALL_BUTTON_SHOWN = 1236;
   }
 }
diff --git a/java/com/android/dialer/logging/interaction_event.proto b/java/com/android/dialer/logging/interaction_event.proto
index b9af1b7..89cf46f 100644
--- a/java/com/android/dialer/logging/interaction_event.proto
+++ b/java/com/android/dialer/logging/interaction_event.proto
@@ -5,7 +5,9 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message InteractionEvent {
+  // Next Tag: 38
   enum Type {
 
     UNKNOWN = 0;
@@ -41,5 +43,23 @@
 
     // The user unblocked a number then undid the unblock
     UNDO_UNBLOCK_NUMBER = 24;
+
+    // Actions in speed dial
+    SPEED_DIAL_PIN_CONTACT = 25;
+    SPEED_DIAL_REMOVE_CONTACT = 26;
+    SPEED_DIAL_OPEN_CONTACT_CARD = 27;
+    SPEED_DIAL_CLICK_CONTACT_WITH_AMBIGUOUS_NUMBER = 28;
+
+    SPEED_DIAL_SET_DEFAULT_NUMBER_FOR_AMBIGUOUS_CONTACT = 29;
+
+    // Open quick contact from where
+    OPEN_QUICK_CONTACT_FROM_CALL_LOG = 30;
+    OPEN_QUICK_CONTACT_FROM_CALL_DETAILS = 31;
+    OPEN_QUICK_CONTACT_FROM_ALL_CONTACTS_GENERAL = 32;
+    OPEN_QUICK_CONTACT_FROM_CONTACTS_FRAGMENT_BADGE = 33;
+    OPEN_QUICK_CONTACT_FROM_CONTACTS_FRAGMENT_ITEM = 34;
+    OPEN_QUICK_CONTACT_FROM_SEARCH = 35;
+    OPEN_QUICK_CONTACT_FROM_VOICEMAIL = 36;
+    OPEN_QUICK_CONTACT_FROM_CALL_HISTORY = 37;
   }
 }
diff --git a/java/com/android/dialer/logging/reporting_location.proto b/java/com/android/dialer/logging/reporting_location.proto
index 7286948..d436564 100644
--- a/java/com/android/dialer/logging/reporting_location.proto
+++ b/java/com/android/dialer/logging/reporting_location.proto
@@ -5,6 +5,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message ReportingLocation {
   // Spam reporting location
   enum Type {
diff --git a/java/com/android/dialer/logging/screen_event.proto b/java/com/android/dialer/logging/screen_event.proto
index 2430bfd..ca62477 100644
--- a/java/com/android/dialer/logging/screen_event.proto
+++ b/java/com/android/dialer/logging/screen_event.proto
@@ -5,6 +5,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message ScreenEvent {
   enum Type {
 
diff --git a/java/com/android/dialer/logging/ui_action.proto b/java/com/android/dialer/logging/ui_action.proto
new file mode 100644
index 0000000..784dbed
--- /dev/null
+++ b/java/com/android/dialer/logging/ui_action.proto
@@ -0,0 +1,43 @@
+syntax = "proto2";
+
+package com.android.dialer.logging;
+option java_package = "com.android.dialer.logging";
+option java_multiple_files = true;
+option optimize_for = LITE_RUNTIME;
+
+
+message UiAction {
+  enum Type {
+    UNKNOWN = 0;
+
+    // General action starting from 1
+    CHANGE_TAB_TO_FAVORITE = 1;
+    CHANGE_TAB_TO_CALL_LOG = 2;
+    CHANGE_TAB_TO_CONTACTS = 3;
+    CHANGE_TAB_TO_VOICEMAIL = 4;
+    PRESS_ANDROID_BACK_BUTTON = 5;
+    TEXT_CHANGE_WITH_INPUT = 6;
+    SCROLL = 7;
+
+    // In call log, starting from 100
+    CLICK_CALL_LOG_ITEM = 100;
+    OPEN_CALL_DETAIL = 101;
+    CLOSE_CALL_DETAIL_WITH_CANCEL_BUTTON = 102;
+    COPY_NUMBER_IN_CALL_DETAIL = 103;
+    EDIT_NUMBER_BEFORE_CALL_IN_CALL_DETAIL = 104;
+
+    // In dialpad, starting from 200
+    OPEN_DIALPAD = 200;
+    CLOSE_DIALPAD = 201;
+    PRESS_CALL_BUTTON_WITHOUT_CALLING = 202;
+
+    // In search, starting from 300
+    OPEN_SEARCH = 300;
+    HIDE_KEYBOARD_IN_SEARCH = 301;
+    CLOSE_SEARCH_WITH_HIDE_BUTTON = 302;
+
+    // In call history, starting from 400
+    OPEN_CALL_HISTORY = 400;
+    CLOSE_CALL_HISTORY_WITH_CANCEL_BUTTON = 401;
+  }
+}
diff --git a/java/com/android/dialer/main/Main.java b/java/com/android/dialer/main/Main.java
new file mode 100644
index 0000000..14ac7e4
--- /dev/null
+++ b/java/com/android/dialer/main/Main.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2017 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.dialer.main;
+
+import android.content.Context;
+
+/** Used to display the main activity for Dialer. This hosts favorites, dial pad, search, etc... */
+public interface Main {
+  boolean isNewUiEnabled(Context context);
+
+  // TODO(38502365): Remove this when we're ready to launch the new UI. */
+  void createNewUiLauncherShortcut(Context context);
+}
diff --git a/java/com/android/dialer/main/MainComponent.java b/java/com/android/dialer/main/MainComponent.java
new file mode 100644
index 0000000..e735457
--- /dev/null
+++ b/java/com/android/dialer/main/MainComponent.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2017 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.dialer.main;
+
+import android.content.Context;
+import com.android.dialer.inject.HasRootComponent;
+import com.android.dialer.main.impl.MainModule;
+import dagger.Subcomponent;
+
+/** Subcomponent that can be used to access the main implementation. */
+@Subcomponent(modules = MainModule.class)
+public abstract class MainComponent {
+
+  public abstract Main getMain();
+
+  public static MainComponent get(Context context) {
+    return ((HasComponent) ((HasRootComponent) context.getApplicationContext()).component())
+        .mainComponent();
+  }
+
+  /** Used to refer to the root application component. */
+  public interface HasComponent {
+    MainComponent mainComponent();
+  }
+}
diff --git a/java/com/android/dialer/main/impl/AndroidManifest.xml b/java/com/android/dialer/main/impl/AndroidManifest.xml
new file mode 100644
index 0000000..8edde50
--- /dev/null
+++ b/java/com/android/dialer/main/impl/AndroidManifest.xml
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+  package="com.android.dialer.main.impl">
+
+  <application>
+
+    <activity
+      android:clearTaskOnLaunch="true"
+      android:directBootAware="true"
+      android:enabled="false"
+      android:exported="true"
+      android:icon="@drawable/nui_launcher_icon"
+      android:label="@string/main_activity_label"
+      android:launchMode="singleTask"
+      android:name="com.android.dialer.main.impl.MainActivity"
+      android:resizeableActivity="true"
+      android:theme="@style/NuiMainActivityTheme"
+      android:windowSoftInputMode="stateAlwaysHidden|adjustNothing">
+
+      <!-- LINT.IfChange -->
+      <intent-filter>
+        <action android:name="android.intent.action.DIAL"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+
+        <data android:mimeType="vnd.android.cursor.item/phone"/>
+        <data android:mimeType="vnd.android.cursor.item/person"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.DIAL"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+
+        <data android:scheme="voicemail"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.DIAL"/>
+        <category android:name="android.intent.category.DEFAULT"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.MAIN"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.LAUNCHER"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.VIEW"/>
+        <action android:name="android.intent.action.DIAL"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+
+        <data android:scheme="tel"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.VIEW"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+
+        <data android:mimeType="vnd.android.cursor.dir/calls"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.CALL_BUTTON"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+      </intent-filter>
+      <!-- This was never intended to be public, but is here for backward
+           compatibility.  Use Intent.ACTION_DIAL instead. -->
+      <intent-filter>
+        <action android:name="com.android.phone.action.TOUCH_DIALER"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.TAB"/>
+      </intent-filter>
+      <intent-filter android:label="@string/main_call_history_tab_description">
+        <action android:name="com.android.phone.action.RECENT_CALLS"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.TAB"/>
+      </intent-filter>
+      <!-- LINT.ThenChange(//depot/google3/third_party/java_src/android_app/dialer/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml) -->
+
+      <meta-data
+        android:name="com.android.keyguard.layout"
+        android:resource="@layout/keyguard_preview"/>
+    </activity>
+
+  </application>
+
+</manifest>
diff --git a/java/com/android/dialer/main/impl/MainActivity.java b/java/com/android/dialer/main/impl/MainActivity.java
new file mode 100644
index 0000000..4b2bd2e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/MainActivity.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright (C) 2017 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.dialer.main.impl;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.design.widget.TabLayout;
+import android.support.v4.view.ViewPager;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
+import android.view.Menu;
+import android.view.MenuItem;
+import android.view.View;
+import android.widget.Toast;
+import com.android.dialer.common.LogUtil;
+
+/** This is the main activity for dialer. It hosts favorites, call log, search, dialpad, etc... */
+public final class MainActivity extends AppCompatActivity implements View.OnClickListener {
+
+  static Intent getIntent(Context context) {
+    return new Intent(context, MainActivity.class)
+        .setAction(Intent.ACTION_VIEW)
+        .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+  }
+
+  @Override
+  protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    LogUtil.enterBlock("MainActivity.onCreate");
+    setContentView(R.layout.main_activity);
+    initLayout();
+  }
+
+  private void initLayout() {
+    findViewById(R.id.fab).setOnClickListener(this);
+
+    ViewPager pager = findViewById(R.id.pager);
+    MainPagerAdapter pagerAdapter = new MainPagerAdapter(this, getSupportFragmentManager());
+    pager.setAdapter(pagerAdapter);
+
+    TabLayout tabLayout = findViewById(R.id.tab_layout);
+    tabLayout.setupWithViewPager(pager);
+
+    Toolbar toolbar = findViewById(R.id.toolbar);
+    toolbar.setPopupTheme(android.R.style.Theme_Material_Light);
+    setSupportActionBar(toolbar);
+  }
+
+  @Override
+  public boolean onCreateOptionsMenu(Menu menu) {
+    getMenuInflater().inflate(R.menu.main_menu, menu);
+    return true;
+  }
+
+  @Override
+  public boolean onOptionsItemSelected(MenuItem item) {
+    Toast.makeText(this, "Not yet implemented", Toast.LENGTH_SHORT).show();
+    if (item.getItemId() == R.id.search) {
+      // open search
+      return true;
+    } else if (item.getItemId() == R.id.contacts) {
+      // open contacts
+      return true;
+    } else {
+      // TODO handle other menu items
+      return super.onOptionsItemSelected(item);
+    }
+  }
+
+  @Override
+  public void onClick(View v) {
+    if (v.getId() == R.id.fab) {
+      // open dialpad search
+    }
+  }
+}
diff --git a/java/com/android/dialer/main/impl/MainImpl.java b/java/com/android/dialer/main/impl/MainImpl.java
new file mode 100644
index 0000000..d29e8c0
--- /dev/null
+++ b/java/com/android/dialer/main/impl/MainImpl.java
@@ -0,0 +1,90 @@
+/*
+ * Copyright (C) 2017 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.dialer.main.impl;
+
+import android.annotation.TargetApi;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.os.Build.VERSION_CODES;
+import android.support.v4.content.pm.ShortcutInfoCompat;
+import android.support.v4.content.pm.ShortcutManagerCompat;
+import android.support.v4.graphics.drawable.IconCompat;
+import android.support.v4.os.BuildCompat;
+import com.android.dialer.buildtype.BuildType;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.main.Main;
+import javax.inject.Inject;
+
+/** The entry point for the main feature. */
+final class MainImpl implements Main {
+  private static final String SHORTCUT_KEY = "nui_launcher_shortcut";
+
+  @Inject
+  public MainImpl() {}
+
+  @Override
+  public boolean isNewUiEnabled(Context context) {
+    return BuildType.get() == BuildType.BUGFOOD || LogUtil.isDebugEnabled();
+  }
+
+  @Override
+  public void createNewUiLauncherShortcut(Context context) {
+    enableComponent(context);
+    if (BuildCompat.isAtLeastO()) {
+      createLauncherShortcutO(context);
+    } else {
+      createLauncherShortcutPreO(context);
+    }
+  }
+
+  /**
+   * Enables the NUI activity component. By default the component is disabled and can't be accessed.
+   * Once the component has been enabled the user will get an option to use the new UI to handle
+   * DIAL (and other) intents.
+   */
+  private static void enableComponent(Context context) {
+    context
+        .getPackageManager()
+        .setComponentEnabledSetting(
+            new ComponentName(context, MainActivity.class),
+            PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
+            PackageManager.DONT_KILL_APP);
+  }
+
+  @TargetApi(VERSION_CODES.O)
+  private static void createLauncherShortcutO(Context context) {
+    ShortcutInfoCompat shortcutInfo =
+        new ShortcutInfoCompat.Builder(context, SHORTCUT_KEY)
+            .setIcon(IconCompat.createWithResource(context, R.drawable.nui_launcher_icon))
+            .setIntent(MainActivity.getIntent(context))
+            .setShortLabel(context.getString(R.string.nui_shortcut_name))
+            .build();
+    ShortcutManagerCompat.requestPinShortcut(context, shortcutInfo, null);
+  }
+
+  private static void createLauncherShortcutPreO(Context context) {
+    Intent intent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
+    intent.putExtra(
+        Intent.EXTRA_SHORTCUT_ICON,
+        Intent.ShortcutIconResource.fromContext(context, R.drawable.nui_launcher_icon));
+    intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, context.getString(R.string.nui_shortcut_name));
+    intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, MainActivity.getIntent(context));
+    context.sendBroadcast(intent);
+  }
+}
diff --git a/java/com/android/dialer/main/impl/MainModule.java b/java/com/android/dialer/main/impl/MainModule.java
new file mode 100644
index 0000000..90342cf
--- /dev/null
+++ b/java/com/android/dialer/main/impl/MainModule.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2017 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.dialer.main.impl;
+
+import com.android.dialer.main.Main;
+import dagger.Module;
+import dagger.Provides;
+
+/** This module provides an instance of {@link Main}. */
+@Module
+public final class MainModule {
+  @Provides
+  public static Main provideMain() {
+    return new MainImpl();
+  }
+}
diff --git a/java/com/android/dialer/main/impl/MainPagerAdapter.java b/java/com/android/dialer/main/impl/MainPagerAdapter.java
new file mode 100644
index 0000000..19cf4e7
--- /dev/null
+++ b/java/com/android/dialer/main/impl/MainPagerAdapter.java
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2017 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.dialer.main.impl;
+
+import android.content.Context;
+import android.support.annotation.IntDef;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentStatePagerAdapter;
+import com.android.dialer.common.Assert;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** Adapter for {@link MainActivity} ViewPager. */
+final class MainPagerAdapter extends FragmentStatePagerAdapter {
+
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({
+    TabIndex.SPEED_DIAL,
+    TabIndex.HISTORY,
+    TabIndex.VOICEMAIL,
+  })
+  private @interface TabIndex {
+    int SPEED_DIAL = 0;
+    int HISTORY = 1;
+    int VOICEMAIL = 2;
+  }
+
+  private final Context context;
+
+  MainPagerAdapter(Context context, FragmentManager fragmentManager) {
+    super(fragmentManager);
+    this.context = context;
+  }
+
+  @Override
+  public int getCount() {
+    // TODO: add logic to hide/show voicemail tab
+    return 3;
+  }
+
+  @Override
+  public Fragment getItem(int position) {
+    // TODO: implement tabs
+    return new StubFragment();
+  }
+
+  @Override
+  public CharSequence getPageTitle(int position) {
+    switch (position) {
+      case TabIndex.SPEED_DIAL:
+        return context.getString(R.string.tab_title_speed_dial);
+      case TabIndex.HISTORY:
+        return context.getString(R.string.tab_title_call_history);
+      case TabIndex.VOICEMAIL:
+        return context.getString(R.string.tab_title_voicemail);
+      default:
+        throw Assert.createIllegalStateFailException("Tab position with no title: " + position);
+    }
+  }
+}
diff --git a/java/com/android/dialer/main/impl/StubFragment.java b/java/com/android/dialer/main/impl/StubFragment.java
new file mode 100644
index 0000000..8e0accf
--- /dev/null
+++ b/java/com/android/dialer/main/impl/StubFragment.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2017 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.dialer.main.impl;
+
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.app.Fragment;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+/** Stub Fragment for Dialer. */
+public class StubFragment extends Fragment {
+
+  @Nullable
+  @Override
+  public View onCreateView(
+      LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
+    return inflater.inflate(R.layout.stub_fragment, container, false);
+  }
+}
diff --git a/java/com/android/dialer/main/impl/res/drawable-xxxhdpi/nui_launcher_icon.png b/java/com/android/dialer/main/impl/res/drawable-xxxhdpi/nui_launcher_icon.png
new file mode 100644
index 0000000..7845ebc
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/drawable-xxxhdpi/nui_launcher_icon.png
Binary files differ
diff --git a/java/com/android/dialer/main/impl/res/layout/main_activity.xml b/java/com/android/dialer/main/impl/res/layout/main_activity.xml
new file mode 100644
index 0000000..73b2eae
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/layout/main_activity.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<FrameLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:id="@+id/container"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+  <TextView
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:textColor="@android:color/secondary_text_dark_nodisable"/>
+
+  <android.support.design.widget.CoordinatorLayout
+      android:layout_width="match_parent"
+      android:layout_height="match_parent">
+
+    <android.support.design.widget.AppBarLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:theme="@style/AppBarTheme">
+
+      <android.support.v7.widget.Toolbar
+          android:id="@+id/toolbar"
+          android:layout_height="wrap_content"
+          android:layout_width="match_parent"
+          android:background="?android:attr/colorPrimary"/>
+
+      <android.support.design.widget.TabLayout
+          android:id="@+id/tab_layout"
+          android:layout_width="match_parent"
+          android:layout_height="wrap_content"
+          android:background="?android:attr/colorPrimary"
+          app:tabIndicatorColor="?android:attr/colorAccent"
+          app:layout_scrollFlags="enterAlwaysCollapsed"/>
+    </android.support.design.widget.AppBarLayout>
+
+    <android.support.v4.view.ViewPager
+        android:id="@+id/pager"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
+
+    <android.support.design.widget.FloatingActionButton
+        android:id="@+id/fab"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="bottom|end"
+        android:layout_margin="16dp"
+        android:src="@drawable/quantum_ic_dialpad_white_24"
+        app:backgroundTint="?android:attr/colorAccent"/>
+  </android.support.design.widget.CoordinatorLayout>
+</FrameLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/main/impl/res/layout/stub_fragment.xml b/java/com/android/dialer/main/impl/res/layout/stub_fragment.xml
new file mode 100644
index 0000000..3bb744f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/layout/stub_fragment.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<FrameLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+  <TextView
+      android:text="hello world!"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_gravity="center"/>
+</FrameLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/main/impl/res/menu/main_menu.xml b/java/com/android/dialer/main/impl/res/menu/main_menu.xml
new file mode 100644
index 0000000..09bcbf8
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/menu/main_menu.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto">
+  <item
+      android:id="@+id/search"
+      android:icon="@drawable/quantum_ic_search_white_24"
+      android:title="@string/search"
+      android:contentDescription="@string/description_search"
+      app:showAsAction="always"/>
+
+  <item
+      android:id="@+id/contacts"
+      android:icon="@drawable/quantum_ic_person_white_24"
+      android:title="@string/contacts"
+      android:contentDescription="@string/description_contacts"
+      app:showAsAction="always"/>
+
+  <item
+      android:id="@+id/call_history"
+      android:title="@string/tab_title_call_history"
+      app:showAsAction="collapseActionView"/>
+
+  <item
+      android:id="@+id/settings"
+      android:title="@string/settings"
+      app:showAsAction="collapseActionView"/>
+
+  <item
+      android:id="@+id/feedback"
+      android:title="@string/main_send_feedback"
+      app:showAsAction="collapseActionView"/>
+</menu>
\ No newline at end of file
diff --git a/java/com/android/dialer/main/impl/res/values-af/strings.xml b/java/com/android/dialer/main/impl/res/values-af/strings.xml
new file mode 100644
index 0000000..fd1a859
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-af/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Foon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Foon-NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Oproepgeskiedenis"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Deursoek kontakte en plekke"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakte"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Bekyk kontakte"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Oproepgeskiedenis"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Spoedbel"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Stemboodskap"</string>
+    <string name="settings" msgid="7614336599112169779">"Instellings"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Stuur terugvoer"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-am/strings.xml b/java/com/android/dialer/main/impl/res/values-am/strings.xml
new file mode 100644
index 0000000..273c019
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-am/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ስልክ"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ስልክ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"የጥሪ ታሪክ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ዕውቂያዎችን እና ቦታዎችን ይፈልጉ"</string>
+    <string name="contacts" msgid="4464246185723317911">"እውቂያዎች"</string>
+    <string name="description_contacts" msgid="12768481422137448">"እውቂያዎችን ይመልከቱ"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"የጥሪ ታሪክ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"አቋራጭ መደወያ"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"የድምፅ መልዕክት"</string>
+    <string name="settings" msgid="7614336599112169779">"ቅንብሮች"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ግብረመልስ ይላኩ"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ar/strings.xml b/java/com/android/dialer/main/impl/res/values-ar/strings.xml
new file mode 100644
index 0000000..2be1289
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ar/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"الهاتف"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"واجهة مستخدم جديدة للهاتف"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"سجل المكالمات"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"البحث عن جهات الاتصال والأماكن"</string>
+    <string name="contacts" msgid="4464246185723317911">"جهات الاتصال"</string>
+    <string name="description_contacts" msgid="12768481422137448">"عرض جهات الاتصال"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"سجلّ المكالمات"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"اتصال سريع"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"بريد صوتي"</string>
+    <string name="settings" msgid="7614336599112169779">"الإعدادات"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"إرسال تعليقات"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-az/strings.xml b/java/com/android/dialer/main/impl/res/values-az/strings.xml
new file mode 100644
index 0000000..db9c17d
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-az/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefon Yeni İİ"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Zəng tarixçəsi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kontakt və yer axtarın"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktlar"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Kontaktlara Baxın"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Zəng Tarixçəsi"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Cəld Yığım"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"E-məktub"</string>
+    <string name="settings" msgid="7614336599112169779">"Ayarlar"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Cavab rəyi göndərin"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/main/impl/res/values-b+sr+Latn/strings.xml
new file mode 100644
index 0000000..75be4b8
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-b+sr+Latn/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Novi UI Telefona"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Istorija poziva"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pretražite kontakte i mesta"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakti"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Pregledajte kontakte"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Ist. poziva"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Brzo poz."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Gov. pošta"</string>
+    <string name="settings" msgid="7614336599112169779">"Podešavanja"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Pošalji povr. inform."</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-be/strings.xml b/java/com/android/dialer/main/impl/res/values-be/strings.xml
new file mode 100644
index 0000000..c83b770
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-be/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Тэлефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Новы карыстальніцкі інтэрфейс тэлефона"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Гісторыя выклікаў"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Пошук кантактаў і месцаў"</string>
+    <string name="contacts" msgid="4464246185723317911">"Кантакты"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Прагляд кантактаў"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Выклікі"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Хуткі наб."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гал. пошта"</string>
+    <string name="settings" msgid="7614336599112169779">"Налады"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Адправіць водгук"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-bg/strings.xml b/java/com/android/dialer/main/impl/res/values-bg/strings.xml
new file mode 100644
index 0000000..075e3e9
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-bg/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Телефон – НПИ"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"История на обажданията"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Търсене на контакти и места"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакти"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Преглед на контактите"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"История"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Бързо наб."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гл. поща"</string>
+    <string name="settings" msgid="7614336599112169779">"Настройки"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Изпращане на отзиви"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-bn/strings.xml b/java/com/android/dialer/main/impl/res/values-bn/strings.xml
new file mode 100644
index 0000000..e5b56ff
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-bn/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ফোন"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ফোন NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"কলের ইতিহাস"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"পরিচিতি এবং স্থানগুলি অনুসন্ধান করুন"</string>
+    <string name="contacts" msgid="4464246185723317911">"পরিচিতিগুলি"</string>
+    <string name="description_contacts" msgid="12768481422137448">"পরিচিতিগুলি দেখুন"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"কলের ইতিহাস"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"দ্রুত ডায়াল"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ভয়েসমেল"</string>
+    <string name="settings" msgid="7614336599112169779">"সেটিংস"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"প্রতিক্রিয়া পাঠান"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-bs/strings.xml b/java/com/android/dialer/main/impl/res/values-bs/strings.xml
new file mode 100644
index 0000000..989fa5c
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-bs/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historija poziva"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pretraži kontakte i mjesta"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakti"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Prikaži kontakte"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"His. pozi."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Brzo bira."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Govor. poš."</string>
+    <string name="settings" msgid="7614336599112169779">"Postavke"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Poša. povrat. infor."</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ca/strings.xml b/java/com/android/dialer/main/impl/res/values-ca/strings.xml
new file mode 100644
index 0000000..48c5904
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ca/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telèfon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nova IU de telèfon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historial de trucades"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Cerca contactes i llocs"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactes"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Mostra contactes"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Hist. trucades"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Marc. ràpid"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Miss. de veu"</string>
+    <string name="settings" msgid="7614336599112169779">"Configuració"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Envia suggeriments"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-cs/strings.xml b/java/com/android/dialer/main/impl/res/values-cs/strings.xml
new file mode 100644
index 0000000..71fd8f3
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-cs/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nové rozhraní Telefonu"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historie volání"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Hledat kontakty a místa"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakty"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Zobrazit kontakty"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historie volání"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Oblíbené"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Schránka"</string>
+    <string name="settings" msgid="7614336599112169779">"Nastavení"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Poslat zpětnou vazbu"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-da/strings.xml b/java/com/android/dialer/main/impl/res/values-da/strings.xml
new file mode 100644
index 0000000..67f0e92
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-da/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Ny genvej til telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Opkaldshistorik"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Søg efter kontaktpersoner og steder"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktpersoner"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Se kontaktpersoner"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Opkaldshistorik"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Hurtigkald"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Talebesked"</string>
+    <string name="settings" msgid="7614336599112169779">"Indstillinger"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Send feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-de/strings.xml b/java/com/android/dialer/main/impl/res/values-de/strings.xml
new file mode 100644
index 0000000..a305ed4
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-de/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Neue Benutzeroberfläche für Telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Anrufliste"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kontakte und Orte suchen"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakte"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Kontakte ansehen"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Anrufliste"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Kurzwahl"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Mailbox"</string>
+    <string name="settings" msgid="7614336599112169779">"Einstellungen"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Feedback geben"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-el/strings.xml b/java/com/android/dialer/main/impl/res/values-el/strings.xml
new file mode 100644
index 0000000..8591032
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-el/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Τηλέφωνο"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Νέα διεπαφή χρήστη για το Τηλέφωνο"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Ιστορικό κλήσεων"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Αναζητήστε επαφές και μέρη"</string>
+    <string name="contacts" msgid="4464246185723317911">"Επαφές"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Προβολή επαφών"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Ιστορικό"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Ταχεία κλ."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Αυτ. τηλ."</string>
+    <string name="settings" msgid="7614336599112169779">"Ρυθμίσεις"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Αποστολή σχολίων"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-en-rAU/strings.xml b/java/com/android/dialer/main/impl/res/values-en-rAU/strings.xml
new file mode 100644
index 0000000..b6c139f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-en-rAU/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telephone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Call history"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Search contacts and places"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"View contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Call history"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Speed dial"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Voicemail"</string>
+    <string name="settings" msgid="7614336599112169779">"Settings"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Sending feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-en-rGB/strings.xml b/java/com/android/dialer/main/impl/res/values-en-rGB/strings.xml
new file mode 100644
index 0000000..b6c139f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-en-rGB/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telephone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Call history"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Search contacts and places"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"View contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Call history"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Speed dial"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Voicemail"</string>
+    <string name="settings" msgid="7614336599112169779">"Settings"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Sending feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-en-rIN/strings.xml b/java/com/android/dialer/main/impl/res/values-en-rIN/strings.xml
new file mode 100644
index 0000000..b6c139f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-en-rIN/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telephone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Call history"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Search contacts and places"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"View contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Call history"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Speed dial"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Voicemail"</string>
+    <string name="settings" msgid="7614336599112169779">"Settings"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Sending feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-es-rUS/strings.xml b/java/com/android/dialer/main/impl/res/values-es-rUS/strings.xml
new file mode 100644
index 0000000..e62a6e6
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-es-rUS/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Teléfono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nueva IU del teléfono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historial de llamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Buscar contactos y lugares"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contactos"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Hist. llam"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Marc. ráp."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Buz. voz"</string>
+    <string name="settings" msgid="7614336599112169779">"Configuración"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Enviar comentarios"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-es/strings.xml b/java/com/android/dialer/main/impl/res/values-es/strings.xml
new file mode 100644
index 0000000..5ccc9e9
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-es/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Teléfono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nueva interfaz de usuario del teléfono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historial de llamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Buscar contactos y sitios"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contactos"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historial"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Marcación"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Buzón"</string>
+    <string name="settings" msgid="7614336599112169779">"Ajustes"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Enviar comentarios"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-et/strings.xml b/java/com/android/dialer/main/impl/res/values-et/strings.xml
new file mode 100644
index 0000000..1c082fe
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-et/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefoni uus kasutajaliides"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Kõneajalugu"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Otsige kontakte ja soovitusi"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktid"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Vaadake kontakte"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Kõneajalugu"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Kiirvalimine"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Kõnepost"</string>
+    <string name="settings" msgid="7614336599112169779">"Seaded"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Tagasiside saatmine"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-eu/strings.xml b/java/com/android/dialer/main/impl/res/values-eu/strings.xml
new file mode 100644
index 0000000..a7100f0
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-eu/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefonoa"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefonoko erabiltzaile-interfaze naturala"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Deien historia"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Ikusi kontaktuak eta tokiak"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktuak"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ikusi kontaktuak"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Deien historia"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Mark. biz."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Erantzung."</string>
+    <string name="settings" msgid="7614336599112169779">"Ezarpenak"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Bidali iritzia"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-fa/strings.xml b/java/com/android/dialer/main/impl/res/values-fa/strings.xml
new file mode 100644
index 0000000..f855670
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-fa/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"تلفن"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"رابط کاربری جدید تلفن"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"سابقه تماس"</string>
+    <string name="search" msgid="3570654445331155513">"‎@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"جستجوی مخاطبین و مکان‌ها"</string>
+    <string name="contacts" msgid="4464246185723317911">"مخاطبین"</string>
+    <string name="description_contacts" msgid="12768481422137448">"مشاهده مخاطبین"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"سابقه تماس"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"شماره‌گیری سریع"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"پست صوتی"</string>
+    <string name="settings" msgid="7614336599112169779">"تنظیمات"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ارسال بازخورد"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-fi/strings.xml b/java/com/android/dialer/main/impl/res/values-fi/strings.xml
new file mode 100644
index 0000000..7b7e053
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-fi/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Puhelin"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Puhelimen uusi UI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Soittohistoria"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/haku_aloita"</string>
+    <string name="description_search" msgid="3443578912463129718">"Haku yhteystiedoista ja paikoista"</string>
+    <string name="contacts" msgid="4464246185723317911">"Yhteystiedot"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Näytä yhteystiedot"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Soittohistoria"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Pikavalinta"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Vastaaja"</string>
+    <string name="settings" msgid="7614336599112169779">"Asetukset"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Lähetä palautetta"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-fr-rCA/strings.xml b/java/com/android/dialer/main/impl/res/values-fr-rCA/strings.xml
new file mode 100644
index 0000000..5d81972
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-fr-rCA/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Téléphoner"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Téléphoner (nouvelle IU)"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historique des appels"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Rechercher dans les contacts et les lieux"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Afficher les contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Appels"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Comp. abr."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Mess. voc."</string>
+    <string name="settings" msgid="7614336599112169779">"Paramètres"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Envoyer commentaires"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-fr/strings.xml b/java/com/android/dialer/main/impl/res/values-fr/strings.xml
new file mode 100644
index 0000000..39b2fa5
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-fr/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Téléphone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Téléphone (nouvelle version)"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historique des appels"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Recherchez des contacts et des adresses"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Consultez vos contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historique"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Num. abrégée"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Messagerie"</string>
+    <string name="settings" msgid="7614336599112169779">"Paramètres"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Envoyer commentaires"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-gl/strings.xml b/java/com/android/dialer/main/impl/res/values-gl/strings.xml
new file mode 100644
index 0000000..a8b4b4e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-gl/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Teléfono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nova IU do teléfono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historial de chamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Busca contactos e lugares"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Mira os contactos"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historial"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Marc. ráp."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Correo voz"</string>
+    <string name="settings" msgid="7614336599112169779">"Configuración"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Enviar comentarios"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-gu/strings.xml b/java/com/android/dialer/main/impl/res/values-gu/strings.xml
new file mode 100644
index 0000000..2bf6137
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-gu/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ફોન"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ફોન NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"કૉલ ઇતિહાસ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"સંપર્કો અને સ્થાનો શોધો"</string>
+    <string name="contacts" msgid="4464246185723317911">"સંપર્કો"</string>
+    <string name="description_contacts" msgid="12768481422137448">"સંપર્કો જુઓ"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"કૉલ ઇતિહાસ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"સ્પીડ ડાયલ"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"વૉઇસમેઇલ"</string>
+    <string name="settings" msgid="7614336599112169779">"સેટિંગ્સ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"પ્રતિસાદ મોકલો"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-hi/strings.xml b/java/com/android/dialer/main/impl/res/values-hi/strings.xml
new file mode 100644
index 0000000..99cc780
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-hi/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"फ़ोन"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"फ़ोन NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"कॉल इतिहास"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"संपर्क और स्थान खोजें"</string>
+    <string name="contacts" msgid="4464246185723317911">"संपर्क"</string>
+    <string name="description_contacts" msgid="12768481422137448">"संपर्क देखें"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"कॉल इतिहास"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"स्पीड डायल"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"वॉइसमेल"</string>
+    <string name="settings" msgid="7614336599112169779">"सेटिंग"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"फ़ीडबैक भेजें"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-hr/strings.xml b/java/com/android/dialer/main/impl/res/values-hr/strings.xml
new file mode 100644
index 0000000..0376d00
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-hr/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI telefona"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Povijest poziva"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pretraži kontakte i mjesta"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakti"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Prikaži kontakte"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Povijest poziva"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Brzo biranje"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Govorna pošta"</string>
+    <string name="settings" msgid="7614336599112169779">"Postavke"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Pošaljite povratne informacije"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-hu/strings.xml b/java/com/android/dialer/main/impl/res/values-hu/strings.xml
new file mode 100644
index 0000000..246d71d
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-hu/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefon új felhasználói felülete"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Híváslista"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Névjegyek és helyek keresése"</string>
+    <string name="contacts" msgid="4464246185723317911">"Névjegyek"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Névjegyek megtekintése"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Előzmények"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Gyorshívó"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Hangposta"</string>
+    <string name="settings" msgid="7614336599112169779">"Beállítások"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Visszajelzés küldése"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-hy/strings.xml b/java/com/android/dialer/main/impl/res/values-hy/strings.xml
new file mode 100644
index 0000000..e8334ca
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-hy/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Հեռախոս"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Հեռախոսի նոր միջերես"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Զանգերի պատմություն"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Գտնել կոնտակտներ և վայրեր"</string>
+    <string name="contacts" msgid="4464246185723317911">"Կոնտակտներ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Դիտել կոնտակտները"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Զանգերի պատմ."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Արագ հավաքում"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Ձայն. փոստ"</string>
+    <string name="settings" msgid="7614336599112169779">"Կարգավորումներ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Կարծիք հայտնել"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-in/strings.xml b/java/com/android/dialer/main/impl/res/values-in/strings.xml
new file mode 100644
index 0000000..9cbab60
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-in/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telepon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI Telepon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Histori panggilan"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Telusuri kontak dan tempat"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontak"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Lihat Kontak"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Histori Panggilan"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Panggilan Cepat"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Pesan Suara"</string>
+    <string name="settings" msgid="7614336599112169779">"Setelan"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Kirim masukan"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-is/strings.xml b/java/com/android/dialer/main/impl/res/values-is/strings.xml
new file mode 100644
index 0000000..6be2056
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-is/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Sími"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nýtt viðmót síma"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Símtalaferill"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Leita að tengiliðum og stöðum"</string>
+    <string name="contacts" msgid="4464246185723317911">"Tengiliðir"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Skoða tengiliði"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Símtalaferill"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Hraðval"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Talhólf"</string>
+    <string name="settings" msgid="7614336599112169779">"Stillingar"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Senda ábendingu"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-it/strings.xml b/java/com/android/dialer/main/impl/res/values-it/strings.xml
new file mode 100644
index 0000000..52dc74b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-it/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI telefono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Cronologia chiamate"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Cerca contatti e luoghi"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contatti"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Visualizza contatti"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Cronologia"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Chiamata rapida"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Segreteria"</string>
+    <string name="settings" msgid="7614336599112169779">"Impostazioni"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Invia feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-iw/strings.xml b/java/com/android/dialer/main/impl/res/values-iw/strings.xml
new file mode 100644
index 0000000..645ef20
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-iw/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"טלפון"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ממשק משתמש חדש לטלפון"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"היסטוריית שיחות"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"חיפוש אנשי קשר ומקומות"</string>
+    <string name="contacts" msgid="4464246185723317911">"אנשי קשר"</string>
+    <string name="description_contacts" msgid="12768481422137448">"הצגת אנשי הקשר"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"היסטוריית שיחות"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"חיוג מהיר"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"דואר קולי"</string>
+    <string name="settings" msgid="7614336599112169779">"הגדרות"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"משוב"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ja/strings.xml b/java/com/android/dialer/main/impl/res/values-ja/strings.xml
new file mode 100644
index 0000000..9b8cc79
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ja/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"電話"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"電話 NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"通話履歴"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"連絡先や場所を検索"</string>
+    <string name="contacts" msgid="4464246185723317911">"連絡先"</string>
+    <string name="description_contacts" msgid="12768481422137448">"連絡先を表示"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"通話履歴"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"クイックアクセス"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ボイスメール"</string>
+    <string name="settings" msgid="7614336599112169779">"設定"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"フィードバックを送信"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ka/strings.xml b/java/com/android/dialer/main/impl/res/values-ka/strings.xml
new file mode 100644
index 0000000..02f6c26
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ka/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ტელეფონი"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ტელეფონის NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ზარების ისტორია"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"კონტაქტებისა და ადგილების ძიება"</string>
+    <string name="contacts" msgid="4464246185723317911">"კონტაქტები"</string>
+    <string name="description_contacts" msgid="12768481422137448">"კონტაქტების ნახვა"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ზარის ისტ."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"სწრ.აკრეფა"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ხმოვ.ფოსტა"</string>
+    <string name="settings" msgid="7614336599112169779">"პარამეტრები"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"გამოხმაურება"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-kk/strings.xml b/java/com/android/dialer/main/impl/res/values-kk/strings.xml
new file mode 100644
index 0000000..f3075a5
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-kk/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Телефонға арналған жаңа пайдаланушы интерфейсі"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Қоңыраулар тарихы"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Контактілер мен орындарды іздеу"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контактілер"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Контактілерді көру"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Қоңыраулар тарихы"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Жылдам теру"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Дауыстық хабар"</string>
+    <string name="settings" msgid="7614336599112169779">"Параметрлер"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Пікір жіберу"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-km/strings.xml b/java/com/android/dialer/main/impl/res/values-km/strings.xml
new file mode 100644
index 0000000..bf8f51e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-km/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ទូរសព្ទ"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ទូរសព្ទ"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ប្រវត្តិហៅ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ទំនាក់ទំនង និង​កន្លែង​ស្វែងរក"</string>
+    <string name="contacts" msgid="4464246185723317911">"ទំនាក់ទំនង"</string>
+    <string name="description_contacts" msgid="12768481422137448">"មើលទំនាក់ទំនង"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ប្រវត្តិហៅ​ទូរសព្ទ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"ការហៅរហ័ស"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"សារ​ជា​សំឡេង"</string>
+    <string name="settings" msgid="7614336599112169779">"ការ​កំណត់"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ផ្ញើ​មតិ​ស្ថាបនា"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-kn/strings.xml b/java/com/android/dialer/main/impl/res/values-kn/strings.xml
new file mode 100644
index 0000000..640bdcc
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-kn/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ಫೋನ್"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ಫೋನ್ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ಕರೆ ಇತಿಹಾಸ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ಸಂಪರ್ಕಗಳು ಮತ್ತು ಸ್ಥಳಗಳನ್ನು ಹುಡುಕಿ"</string>
+    <string name="contacts" msgid="4464246185723317911">"ಸಂಪರ್ಕಗಳು"</string>
+    <string name="description_contacts" msgid="12768481422137448">"ಸಂಪರ್ಕ ವೀಕ್ಷಿಸು"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ಕರೆ ಇತಿಹಾಸ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"ಸ್ಪೀಡ್ ಡಯಲ್"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ಧ್ವನಿಮೇಲ್"</string>
+    <string name="settings" msgid="7614336599112169779">"ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ಪ್ರತಿಕ್ರಿಯೆ ಕಳುಹಿಸಿ"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ko/strings.xml b/java/com/android/dialer/main/impl/res/values-ko/strings.xml
new file mode 100644
index 0000000..1f98f7f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ko/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"전화"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"새 전화 UI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"통화 기록"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"연락처 및 장소 검색"</string>
+    <string name="contacts" msgid="4464246185723317911">"연락처"</string>
+    <string name="description_contacts" msgid="12768481422137448">"연락처 보기"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"통화 기록"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"단축 다이얼"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"음성사서함"</string>
+    <string name="settings" msgid="7614336599112169779">"설정"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"의견 보내기"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ky/strings.xml b/java/com/android/dialer/main/impl/res/values-ky/strings.xml
new file mode 100644
index 0000000..517a789
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ky/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Чалуу"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Жаы интерфейсте чалуу"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Чалуулар таржымалы"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Байланыштарды жана жерлерди издөө"</string>
+    <string name="contacts" msgid="4464246185723317911">"Байланыштар"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Байланыштарды көрүү"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Чалуу таржымалы"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Тез терүү"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Үн почтасы"</string>
+    <string name="settings" msgid="7614336599112169779">"Жөндөөлөр"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Жооп пикир жөнөтүү"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-lo/strings.xml b/java/com/android/dialer/main/impl/res/values-lo/strings.xml
new file mode 100644
index 0000000..8b7e547
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-lo/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ໂທລະສັບ"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ປະຫວັດການໂທ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ຊອກຫາລາຍຊື່ຜູ້ຕິດຕໍ່ ແລະ ສະຖານທີ່"</string>
+    <string name="contacts" msgid="4464246185723317911">"ລາຍຊື່ຜູ້ຕິດຕໍ່"</string>
+    <string name="description_contacts" msgid="12768481422137448">"ເບິ່ງລາຍຊື່ຜູ້ຕິດຕໍ່"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ປະຫວັດການໂທ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"ໂທດ່ວນ"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ຂໍ້ຄວາມສຽງ"</string>
+    <string name="settings" msgid="7614336599112169779">"ການຕັ້ງຄ່າ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ສົ່ງຄຳຕິຊົມ"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-lt/strings.xml b/java/com/android/dialer/main/impl/res/values-lt/strings.xml
new file mode 100644
index 0000000..4b3e3b9
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-lt/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefonas"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nauja telefono NS"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Skambučių istorija"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Ieškoti kontaktų ir vietų"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktai"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Žr. kontaktus"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Sk. istor."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Sp. rink."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Balso p."</string>
+    <string name="settings" msgid="7614336599112169779">"Nustatymai"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Siųsti atsiliepimą"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-lv/strings.xml b/java/com/android/dialer/main/impl/res/values-lv/strings.xml
new file mode 100644
index 0000000..b1520b3
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-lv/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Tālrunis"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Tālruņa jaunā lietotāja saskarne"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Zvanu vēsture"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Meklēt kontaktpersonas un vietas"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktpersonas"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Skatīt kontaktpersonas"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Vēsture"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Ātrā izv."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Balss pasts"</string>
+    <string name="settings" msgid="7614336599112169779">"Iestatījumi"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Sūtīt atsauksmes"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-mk/strings.xml b/java/com/android/dialer/main/impl/res/values-mk/strings.xml
new file mode 100644
index 0000000..4a04b4d
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-mk/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Нов интерфејс на телефон"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Историја на повици"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Пребарајте контакти и места"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакти"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Прикажи контакти"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Историја"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Брзо бирање"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гов. пошта"</string>
+    <string name="settings" msgid="7614336599112169779">"Поставки"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Повратни информации"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ml/strings.xml b/java/com/android/dialer/main/impl/res/values-ml/strings.xml
new file mode 100644
index 0000000..b41d82f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ml/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ഫോണ്‍"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ഫോൺ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"കോള്‍‌ ചരിത്രം"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"കോൺടാക്റ്റുകളും സ്ഥലങ്ങളും തിരയുക"</string>
+    <string name="contacts" msgid="4464246185723317911">"കോൺടാക്റ്റുകൾ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"കോൺടാക്റ്റുകൾ കാണുക"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"കോള്‍‌ ചരിത്രം"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"സ്‌പീഡ് ഡയൽ"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"വോയ്‌സ്‌മെയിൽ"</string>
+    <string name="settings" msgid="7614336599112169779">"ക്രമീകരണം"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ഫീഡ്‌ബാക്ക് അയയ്‌ക്കുക"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-mn/strings.xml b/java/com/android/dialer/main/impl/res/values-mn/strings.xml
new file mode 100644
index 0000000..6dee167
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-mn/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Утас"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Утас NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Дуудлагын түүх"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Харилцагчид, газруудаас хайх"</string>
+    <string name="contacts" msgid="4464246185723317911">"Харилцагчид"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Харилцагчдыг харах"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Дуудлагын түүх"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Шуурхай залгах"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Дуут шуудан"</string>
+    <string name="settings" msgid="7614336599112169779">"Тохиргоо"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Санал хүсэл илгээх"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-mr/strings.xml b/java/com/android/dialer/main/impl/res/values-mr/strings.xml
new file mode 100644
index 0000000..4662461
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-mr/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"फोन"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"फोन NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"कॉल इतिहास"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"संपर्क आणि स्थाने शोधा"</string>
+    <string name="contacts" msgid="4464246185723317911">"संपर्क"</string>
+    <string name="description_contacts" msgid="12768481422137448">"संपर्क पहा"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"कॉल इतिहास"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"जलद डायल"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"व्हॉइसमेल"</string>
+    <string name="settings" msgid="7614336599112169779">"सेटिंग्ज"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"अभिप्राय पाठवा"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ms/strings.xml b/java/com/android/dialer/main/impl/res/values-ms/strings.xml
new file mode 100644
index 0000000..36cb14b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ms/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI Telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Sejarah panggilan"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Cari kenalan dan tempat"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kenalan"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Lihat Kenalan"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Sjrh Pgln"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Dail Laju"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Mel suara"</string>
+    <string name="settings" msgid="7614336599112169779">"Tetapan"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Hantar maklum balas"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-my/strings.xml b/java/com/android/dialer/main/impl/res/values-my/strings.xml
new file mode 100644
index 0000000..b71a8a5
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-my/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ဖုန်း"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ဖုန်း"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ခေါ်ဆိုမှုမှတ်တမ်း"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"အဆက်အသွယ်များနှင့် နေရာများကို ရှာဖွေရန်"</string>
+    <string name="contacts" msgid="4464246185723317911">"အဆက်အသွယ်များ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"အဆက်အသွယ်များကို ကြည့်ရှုရန်"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ခေါ်ဆိုမှု"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"နံပါတ်ကွက်"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"အသံမေးလ်"</string>
+    <string name="settings" msgid="7614336599112169779">"ဆက်တင်များ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"အကြံပြုချက် ပို့ရန်"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-nb/strings.xml b/java/com/android/dialer/main/impl/res/values-nb/strings.xml
new file mode 100644
index 0000000..78ac920
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-nb/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Anropslogg"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Søk etter kontakter og steder"</string>
+    <string name="contacts" msgid="4464246185723317911">"Google-kontakter"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Se kontakter"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Anropslogg"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Hurtigvalg"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Talepost"</string>
+    <string name="settings" msgid="7614336599112169779">"Innstillinger"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Send tilbakemelding"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ne/strings.xml b/java/com/android/dialer/main/impl/res/values-ne/strings.xml
new file mode 100644
index 0000000..794b058
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ne/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"फोन"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI फोन"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"कलको इतिहास"</string>
+    <string name="search" msgid="3570654445331155513">"@android:स्ट्रिङ/खोज_जानुहोस्"</string>
+    <string name="description_search" msgid="3443578912463129718">"सम्पर्क र स्थानहरू खोज्‍नुहोस्"</string>
+    <string name="contacts" msgid="4464246185723317911">"सम्पर्कहरू"</string>
+    <string name="description_contacts" msgid="12768481422137448">"सम्पर्कहरू हेर्नुहोस्"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"कल इतिहास"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"स्पिड डायल"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"भ्वाइस मेल"</string>
+    <string name="settings" msgid="7614336599112169779">"सेटिङहरू"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"प्रतिक्रिया पठाउने"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-nl/strings.xml b/java/com/android/dialer/main/impl/res/values-nl/strings.xml
new file mode 100644
index 0000000..1e8d5f1
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-nl/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Bellen"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nieuwe UI van telefoon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Oproepgeschiedenis"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Contacten en plaatsen zoeken"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacten"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Contacten bekijken"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Oproepen"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Snelkeuze"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Voicemail"</string>
+    <string name="settings" msgid="7614336599112169779">"Instellingen"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Feedback verzenden"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-no/strings.xml b/java/com/android/dialer/main/impl/res/values-no/strings.xml
new file mode 100644
index 0000000..78ac920
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-no/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Anropslogg"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Søk etter kontakter og steder"</string>
+    <string name="contacts" msgid="4464246185723317911">"Google-kontakter"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Se kontakter"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Anropslogg"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Hurtigvalg"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Talepost"</string>
+    <string name="settings" msgid="7614336599112169779">"Innstillinger"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Send tilbakemelding"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pa/strings.xml b/java/com/android/dialer/main/impl/res/values-pa/strings.xml
new file mode 100644
index 0000000..57d3334
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pa/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ਫ਼ੋਨ"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ਫ਼ੋਨ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ਕਾਲ ਇਤਿਹਾਸ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ਸੰਪਰਕਾਂ ਅਤੇ ਥਾਂਵਾਂ ਨੂੰ ਖੋਜੋ"</string>
+    <string name="contacts" msgid="4464246185723317911">"ਸੰਪਰਕ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"ਸੰਪਰਕ ਵੇਖੋ"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ਕਾਲ ਇਤਿਹਾਸ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"ਸਪੀਡ ਡਾਇਲ"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ਵੌਇਸਮੇਲ"</string>
+    <string name="settings" msgid="7614336599112169779">"ਸੈਟਿੰਗਾਂ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ਪ੍ਰਤੀਕਰਮ ਭੇਜੋ"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pl/strings.xml b/java/com/android/dialer/main/impl/res/values-pl/strings.xml
new file mode 100644
index 0000000..70f535e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pl/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nowy interfejs telefonu"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historia połączeń"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Wyszukaj kontakty i miejsca"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakty"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Wyświetl kontakty"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historia połączeń"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Szybkie wybieranie"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Poczta głosowa"</string>
+    <string name="settings" msgid="7614336599112169779">"Ustawienia"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Prześlij opinię"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pt-rBR/strings.xml b/java/com/android/dialer/main/impl/res/values-pt-rBR/strings.xml
new file mode 100644
index 0000000..e722727
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pt-rBR/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nova IU: Telefone"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Histórico de chamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pesquisar contatos e lugares"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contatos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contatos"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Histórico"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Discagem rápida"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Correio de voz"</string>
+    <string name="settings" msgid="7614336599112169779">"Configurações"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Enviar feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pt-rPT/strings.xml b/java/com/android/dialer/main/impl/res/values-pt-rPT/strings.xml
new file mode 100644
index 0000000..07043fc
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pt-rPT/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NIU do telemóvel"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Histórico de chamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pesquisar contactos e locais"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contactos"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Chamadas"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Marcação"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Corr. voz"</string>
+    <string name="settings" msgid="7614336599112169779">"Definições"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Enviar comentários"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pt/strings.xml b/java/com/android/dialer/main/impl/res/values-pt/strings.xml
new file mode 100644
index 0000000..e722727
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pt/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nova IU: Telefone"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Histórico de chamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pesquisar contatos e lugares"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contatos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contatos"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Histórico"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Discagem rápida"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Correio de voz"</string>
+    <string name="settings" msgid="7614336599112169779">"Configurações"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Enviar feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ro/strings.xml b/java/com/android/dialer/main/impl/res/values-ro/strings.xml
new file mode 100644
index 0000000..02158cf
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ro/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Noua IU pentru Telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Istoricul apelurilor"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Căutați persoane de contact și locuri"</string>
+    <string name="contacts" msgid="4464246185723317911">"Agendă"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Afișați Agenda"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Istoric"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Apel rapid"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Ms. vocală"</string>
+    <string name="settings" msgid="7614336599112169779">"Setări"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Trimiteți feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ru/strings.xml b/java/com/android/dialer/main/impl/res/values-ru/strings.xml
new file mode 100644
index 0000000..4a60cfc
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ru/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Позвонить"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Позвонить в новом интерфейсе"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Журнал звонков"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Поиск контактов и мест"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакты"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Посмотреть контакты"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Звонки"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Быстрый набор"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гол. почта"</string>
+    <string name="settings" msgid="7614336599112169779">"Настройки"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Отправить отзыв"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-si/strings.xml b/java/com/android/dialer/main/impl/res/values-si/strings.xml
new file mode 100644
index 0000000..938bb39
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-si/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"දුරකථනය"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ඇමතුම් ඉතිහාසය"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"සම්බන්ධතා සහ ස්ථාන සොයන්න"</string>
+    <string name="contacts" msgid="4464246185723317911">"සම්බන්ධතා"</string>
+    <string name="description_contacts" msgid="12768481422137448">"සම්බන්ධතා බලන්න"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ඇමතුම් ඉති"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"වේග ඇමතීම"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"හඬ තැපෑල"</string>
+    <string name="settings" msgid="7614336599112169779">"සැකසීම්"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ප්‍රතිපෝෂණය යවන්න"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sk/strings.xml b/java/com/android/dialer/main/impl/res/values-sk/strings.xml
new file mode 100644
index 0000000..74e7ebd
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sk/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefón"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nové rozhranie Telefónu"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"História hovorov"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Hľadať kontakty a miesta"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakty"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Zobraziť kontakty"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"História hovorov"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Rých. voľ."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Hlas. sch."</string>
+    <string name="settings" msgid="7614336599112169779">"Nastavenia"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Odoslať spätnú väzbu"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sl/strings.xml b/java/com/android/dialer/main/impl/res/values-sl/strings.xml
new file mode 100644
index 0000000..f6746bd
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sl/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nov uporabniški vmesnik za telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Zgodovina klicev"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Iskanje po stikih in mestih"</string>
+    <string name="contacts" msgid="4464246185723317911">"Stiki"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Prikaz stikov"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Zg. klicev"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Hitro izb."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Odzivnik"</string>
+    <string name="settings" msgid="7614336599112169779">"Nastavitve"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Pošilj. povr. info."</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sq/strings.xml b/java/com/android/dialer/main/impl/res/values-sq/strings.xml
new file mode 100644
index 0000000..faf6518
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sq/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefoni"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Ndërfaqja e re e përdoruesit e telefonit"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historiku i telefonatave"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kërko për kontakte dhe vende"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktet"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Shiko kontaktet"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historiku i telefonatave"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Telefonatë e shpejtë"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Posta zanore"</string>
+    <string name="settings" msgid="7614336599112169779">"Cilësimet"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Dërgo komentin"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sr/strings.xml b/java/com/android/dialer/main/impl/res/values-sr/strings.xml
new file mode 100644
index 0000000..542460e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sr/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Нови UI Телефона"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Историја позива"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Претражите контакте и места"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакти"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Прегледајте контакте"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Ист. позива"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Брзо поз."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гов. пошта"</string>
+    <string name="settings" msgid="7614336599112169779">"Подешавања"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Пошаљи повр. информ."</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sv/strings.xml b/java/com/android/dialer/main/impl/res/values-sv/strings.xml
new file mode 100644
index 0000000..cefefb3
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sv/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nytt användargränssnitt för telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Samtalshistorik"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Sök efter kontakter och platser"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakter"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Visa kontakter"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Samt.hist."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Snabbval"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Röstbrevl."</string>
+    <string name="settings" msgid="7614336599112169779">"Inställningar"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Skicka feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sw/strings.xml b/java/com/android/dialer/main/impl/res/values-sw/strings.xml
new file mode 100644
index 0000000..0c50bd5
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sw/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Simu"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ya Simu"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Rekodi ya simu zilizopigwa"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Tafuta anwani na mahali"</string>
+    <string name="contacts" msgid="4464246185723317911">"Anwani"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Angalia Anwani"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Simu Zilizopigwa"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Mnaowasiliana Sana"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Ujumbe wa sauti"</string>
+    <string name="settings" msgid="7614336599112169779">"Mipangilio"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Tupe maoni yako"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ta/strings.xml b/java/com/android/dialer/main/impl/res/values-ta/strings.xml
new file mode 100644
index 0000000..81e02ef
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ta/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ஃபோன்"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ஃபோன் NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"அழைப்பு வரலாறு"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"தொடர்புகளையும் இடங்களையும் தேடுவதற்கான பொத்தான்"</string>
+    <string name="contacts" msgid="4464246185723317911">"தொடர்புகள்"</string>
+    <string name="description_contacts" msgid="12768481422137448">"தொடர்புகளைக் காட்டுவதற்கான பொத்தான்"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"கால் தகவல்"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"ஸ்பீட்டைல்"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"குரலஞ்சல்"</string>
+    <string name="settings" msgid="7614336599112169779">"அமைப்புகள்"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"கருத்துத் தெரிவி"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-te/strings.xml b/java/com/android/dialer/main/impl/res/values-te/strings.xml
new file mode 100644
index 0000000..c337cf3
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-te/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ఫోన్"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ఫోన్ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"కాల్ చరిత్ర"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"పరిచయాలు మరియు స్థలాలను శోధించు"</string>
+    <string name="contacts" msgid="4464246185723317911">"పరిచయాలు"</string>
+    <string name="description_contacts" msgid="12768481422137448">"పరిచయాలను వీక్షించండి"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"కాల్ చరిత్ర"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"స్పీడ్ డయల్"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"వాయిస్ మెయిల్"</string>
+    <string name="settings" msgid="7614336599112169779">"సెట్టింగ్‌లు"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"అభిప్రాయాన్ని పంపండి"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-th/strings.xml b/java/com/android/dialer/main/impl/res/values-th/strings.xml
new file mode 100644
index 0000000..aa83f81
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-th/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"โทรศัพท์"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ของโทรศัพท์"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ประวัติการโทร"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ค้นหารายชื่อติดต่อและสถานที่"</string>
+    <string name="contacts" msgid="4464246185723317911">"รายชื่อติดต่อ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"ดูรายชื่อติดต่อ"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ประวัติการโทร"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"โทรด่วน"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ข้อความเสียง"</string>
+    <string name="settings" msgid="7614336599112169779">"การตั้งค่า"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ส่งความคิดเห็น"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-tl/strings.xml b/java/com/android/dialer/main/impl/res/values-tl/strings.xml
new file mode 100644
index 0000000..bbfe10c
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-tl/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telepono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ng telepono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"History ng tawag"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Maghanap ng mga contact at mga lugar"</string>
+    <string name="contacts" msgid="4464246185723317911">"Mga Contact"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Tingnan ang Mga Contact"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"History ng Tawag"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Speed Dial"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Voicemail"</string>
+    <string name="settings" msgid="7614336599112169779">"Mga Setting"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Padala ng feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-tr/strings.xml b/java/com/android/dialer/main/impl/res/values-tr/strings.xml
new file mode 100644
index 0000000..31e15be
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-tr/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefonun Yeni Kullanıcı Arayüzü"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Çağrı geçmişi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kişileri ve yerleri ara"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kişiler"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Kişileri Göster"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Çağrı Gçmş"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Hızlı Ara"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Sesli msj"</string>
+    <string name="settings" msgid="7614336599112169779">"Ayarlar"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Geri bildirim gönder"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-uk/strings.xml b/java/com/android/dialer/main/impl/res/values-uk/strings.xml
new file mode 100644
index 0000000..7691054
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-uk/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Новий елемент інтерфейсу телефону"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Історія дзвінків"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Шукати контакти й місця"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакти"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Переглянути контакти"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Історія"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Шв. набір"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гол. пошта"</string>
+    <string name="settings" msgid="7614336599112169779">"Налаштування"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Надіслати відгук"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ur/strings.xml b/java/com/android/dialer/main/impl/res/values-ur/strings.xml
new file mode 100644
index 0000000..5795faa
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ur/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"فون"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"‏فون NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"کال کی سرگزشت"</string>
+    <string name="search" msgid="3570654445331155513">"‎@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"رابطے اور مقامات تلاش کریں"</string>
+    <string name="contacts" msgid="4464246185723317911">"رابطے"</string>
+    <string name="description_contacts" msgid="12768481422137448">"رابطے دیکھیں"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"کال کی سرگزشت"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"اسپیڈ ڈائل"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"صوتی میل"</string>
+    <string name="settings" msgid="7614336599112169779">"ترتیبات"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"تاثرات بھیجیں"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-uz/strings.xml b/java/com/android/dialer/main/impl/res/values-uz/strings.xml
new file mode 100644
index 0000000..8083322
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-uz/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Chaqiruv"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Yangi interfeysdan foydalanib qo‘ng‘iroq qilish"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Qo‘ng‘iroqlar tarixi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kontakt va joylarni qidirish"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktlar"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Kontaktlarni ko‘rish"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Tarix"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Tez. ter."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Ov. pochta"</string>
+    <string name="settings" msgid="7614336599112169779">"Sozlamalar"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Fikr-mulohaza yubor."</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-vi/strings.xml b/java/com/android/dialer/main/impl/res/values-vi/strings.xml
new file mode 100644
index 0000000..73fd31b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-vi/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Điện thoại"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI điện thoại"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Nhật ký cuộc gọi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Tìm kiếm liên hệ và địa điểm"</string>
+    <string name="contacts" msgid="4464246185723317911">"Danh bạ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Xem Danh bạ"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Nhật ký cuộc gọi"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Quay số nhanh"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Thư thoại"</string>
+    <string name="settings" msgid="7614336599112169779">"Cài đặt"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Gửi phản hồi"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-zh-rCN/strings.xml b/java/com/android/dialer/main/impl/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000..9649748
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-zh-rCN/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"拨打电话"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"电话 NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"通话记录"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"搜索联系人和地点"</string>
+    <string name="contacts" msgid="4464246185723317911">"联系人"</string>
+    <string name="description_contacts" msgid="12768481422137448">"查看联系人"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"通话记录"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"快速拨号"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"语音邮件"</string>
+    <string name="settings" msgid="7614336599112169779">"设置"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"发送反馈"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-zh-rHK/strings.xml b/java/com/android/dialer/main/impl/res/values-zh-rHK/strings.xml
new file mode 100644
index 0000000..5595a9d
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-zh-rHK/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"電話"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"電話 NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"通話記錄"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"搜尋聯絡人和地點"</string>
+    <string name="contacts" msgid="4464246185723317911">"通訊錄"</string>
+    <string name="description_contacts" msgid="12768481422137448">"查看通訊錄"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"通話記錄"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"快速撥號"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"留言"</string>
+    <string name="settings" msgid="7614336599112169779">"設定"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"提供意見"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-zh-rTW/strings.xml b/java/com/android/dialer/main/impl/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000..abda680
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-zh-rTW/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"手機"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"手機 NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"通話紀錄"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"搜尋聯絡人和地點"</string>
+    <string name="contacts" msgid="4464246185723317911">"聯絡人"</string>
+    <string name="description_contacts" msgid="12768481422137448">"查看聯絡人"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"通話紀錄"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"快速撥號"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"語音信箱"</string>
+    <string name="settings" msgid="7614336599112169779">"設定"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"提供意見"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-zu/strings.xml b/java/com/android/dialer/main/impl/res/values-zu/strings.xml
new file mode 100644
index 0000000..8529550
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-zu/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Ifoni"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"I-Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Umlando wekholi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Sesha oxhumana nabo nezindawo"</string>
+    <string name="contacts" msgid="4464246185723317911">"Oxhumana nabo"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Buka oxhumana nabo"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Umlando wekholi"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Ukudayela okusheshayo"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Ivoyisimeyili"</string>
+    <string name="settings" msgid="7614336599112169779">"Izilungiselelo"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Thumela impendulo"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values/strings.xml b/java/com/android/dialer/main/impl/res/values/strings.xml
new file mode 100644
index 0000000..ba8a20b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values/strings.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<resources>
+  <!-- Name of the main activity. -->
+  <string name="main_activity_label">Phone</string>
+
+  <!-- Name of launcher shortcut for the new UI main activity.
+       TODO(38502365): Remove this once we're ready to launch the new UI. -->
+  <string name="nui_shortcut_name">Phone NUI</string>
+
+  <!-- The description text for the call log tab. -->
+  <string name="main_call_history_tab_description">Call history</string>
+
+  <!-- Text for a toolbar button that shows the user their contacts [CHAR LIMIT=NONE] -->
+  <string name="search">@android:string/search_go</string>
+  <!-- A11y announcement to let users know a button will let them search for contacts and places [CHAR LIMIT=NONE] -->
+  <string name="description_search">Search contacts and places</string>
+
+  <!-- Text for a toolbar button that shows the user their contacts [CHAR LIMIT=NONE] -->
+  <string name="contacts">Contacts</string>
+  <!-- A11y announcement to let users know a button will let them view their contacts [CHAR LIMIT=NONE] -->
+  <string name="description_contacts">View Contacts</string>
+
+  <!-- Tab text to show users their call log/call history [CHAR LIMIT=10] -->
+  <string name="tab_title_call_history">Call History</string>
+  <!-- Tab text to show users their favorite contacts that they can call in 1 click [CHAR LIMIT=10] -->
+  <string name="tab_title_speed_dial">Speed Dial</string>
+  <!-- Tab text to show users their voicemails  [CHAR LIMIT=10] -->
+  <string name="tab_title_voicemail">Voicemail</string>
+
+  <!-- Show users their settings [CHAR LIMIT=20] -->
+  <string name="settings">Settings</string>
+  <!-- Send feedback about the app [CHAR LIMIT=20] -->
+  <string name="main_send_feedback">Send feedback</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values/styles.xml b/java/com/android/dialer/main/impl/res/values/styles.xml
new file mode 100644
index 0000000..38c5008
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values/styles.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<resources>
+  <style name="NuiMainActivityTheme" parent="Theme.AppCompat.Light.NoActionBar">
+    <item name="android:colorPrimary">@color/dialtacts_theme_color</item>
+    <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item>
+    <item name="android:colorAccent">@color/dialer_secondary_color</item>
+  </style>
+
+  <style name="AppBarTheme" parent="Theme.AppCompat">
+    <item name="android:colorPrimary">@color/dialtacts_theme_color</item>
+    <item name="android:colorAccent">@color/dialer_secondary_color</item>
+  </style>
+</resources>
diff --git a/java/com/android/dialer/multimedia/MultimediaData.java b/java/com/android/dialer/multimedia/MultimediaData.java
index 22bb764..dee0cff 100644
--- a/java/com/android/dialer/multimedia/MultimediaData.java
+++ b/java/com/android/dialer/multimedia/MultimediaData.java
@@ -20,6 +20,7 @@
 import android.net.Uri;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.text.TextUtils;
 import com.android.dialer.common.LogUtil;
 import com.google.auto.value.AutoValue;
 
@@ -63,6 +64,11 @@
   /** Returns {@code true} if this data is marked as important. */
   public abstract boolean isImportant();
 
+  /** Returns true if this has image, text or location data. */
+  public boolean hasData() {
+    return hasImageData() || !TextUtils.isEmpty(getText()) || getLocation() != null;
+  }
+
   /** Returns the string form of this MultimediaData with no PII. */
   @Override
   public String toString() {
diff --git a/java/com/android/dialer/notification/AndroidManifest.xml b/java/com/android/dialer/notification/AndroidManifest.xml
index 741f481..b89d8f8 100644
--- a/java/com/android/dialer/notification/AndroidManifest.xml
+++ b/java/com/android/dialer/notification/AndroidManifest.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
 <!--
   ~ Copyright (C) 2017 The Android Open Source Project
   ~
@@ -13,19 +14,6 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-
-<manifest
-  xmlns:android="http://schemas.android.com/apk/res/android"
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.notification">
-
-  <uses-sdk android:minSdkVersion="23"/>
-  <application>
-    <receiver android:name=".PackageUpdatedReceiver"
-              android:directBootAware="true">
-      <intent-filter>
-        <action android:name="android.intent.action.MY_PACKAGE_REPLACED"/>
-        <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED"/>
-      </intent-filter>
-    </receiver>
-  </application>
 </manifest>
diff --git a/java/com/android/dialer/notification/GroupedNotificationUtil.java b/java/com/android/dialer/notification/GroupedNotificationUtil.java
deleted file mode 100644
index 3925248..0000000
--- a/java/com/android/dialer/notification/GroupedNotificationUtil.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (C) 2017 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.dialer.notification;
-
-import android.app.NotificationManager;
-import android.service.notification.StatusBarNotification;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import java.util.Objects;
-
-/** Utilities for dealing with grouped notifications */
-public final class GroupedNotificationUtil {
-
-  /**
-   * Remove notification(s) that were added as part of a group. Will ensure that if this is the last
-   * notification in the group the summary will be removed.
-   *
-   * @param tag String tag as included in {@link NotificationManager#notify(String, int,
-   *     android.app.Notification)}. If null will remove all notifications under id
-   * @param id notification id as included with {@link NotificationManager#notify(String, int,
-   *     android.app.Notification)}.
-   * @param summaryTag String tag of the summary notification
-   */
-  public static void removeNotification(
-      @NonNull NotificationManager notificationManager,
-      @Nullable String tag,
-      int id,
-      @NonNull String summaryTag) {
-    if (tag == null) {
-      // Clear all grouped notifications
-      for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
-        if (notification.getId() == id) {
-          notificationManager.cancel(notification.getTag(), id);
-        }
-      }
-    } else {
-      notificationManager.cancel(tag, id);
-
-      // See if other non-summary grouped notifications exist, and if not then clear the summary
-      boolean clearSummary = true;
-      for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
-        if (notification.getId() == id && !Objects.equals(summaryTag, notification.getTag())) {
-          clearSummary = false;
-          break;
-        }
-      }
-      if (clearSummary) {
-        notificationManager.cancel(summaryTag, id);
-      }
-    }
-  }
-}
diff --git a/java/com/android/dialer/notification/NotificationChannelId.java b/java/com/android/dialer/notification/NotificationChannelId.java
new file mode 100644
index 0000000..4ab3d44
--- /dev/null
+++ b/java/com/android/dialer/notification/NotificationChannelId.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2017 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.dialer.notification;
+
+import android.support.annotation.StringDef;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** Centralized source of all notification channels used by Dialer. */
+@Retention(RetentionPolicy.SOURCE)
+@StringDef({
+  NotificationChannelId.INCOMING_CALL,
+  NotificationChannelId.ONGOING_CALL,
+  NotificationChannelId.MISSED_CALL,
+  NotificationChannelId.DEFAULT,
+})
+public @interface NotificationChannelId {
+  // This value is white listed in the system.
+  // See /vendor/google/nexus_overlay/common/frameworks/base/core/res/res/values/config.xml
+  String INCOMING_CALL = "phone_incoming_call";
+
+  String ONGOING_CALL = "phone_ongoing_call";
+
+  String MISSED_CALL = "phone_missed_call";
+
+  String DEFAULT = "phone_default";
+}
diff --git a/java/com/android/dialer/notification/NotificationChannelManager.java b/java/com/android/dialer/notification/NotificationChannelManager.java
index 8867906..790aac3 100644
--- a/java/com/android/dialer/notification/NotificationChannelManager.java
+++ b/java/com/android/dialer/notification/NotificationChannelManager.java
@@ -17,366 +17,156 @@
 package com.android.dialer.notification;
 
 import android.annotation.TargetApi;
-import android.app.Notification;
 import android.app.NotificationChannel;
-import android.app.NotificationChannelGroup;
 import android.app.NotificationManager;
 import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
 import android.media.AudioAttributes;
-import android.net.Uri;
 import android.os.Build.VERSION_CODES;
-import android.provider.Settings;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
-import android.support.annotation.RequiresApi;
-import android.support.annotation.StringDef;
 import android.support.v4.os.BuildCompat;
-import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
-import android.telecom.TelecomManager;
-import android.telephony.TelephonyManager;
-import com.android.contacts.common.compat.TelephonyManagerCompat;
-import com.android.dialer.buildtype.BuildType;
+import android.util.ArraySet;
+import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.common.concurrent.DialerExecutors;
-import com.android.dialer.telecom.TelecomUtil;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.util.List;
-import java.util.Objects;
+import java.util.Set;
 
-/** Contains info on how to create {@link NotificationChannel NotificationChannels} */
-public class NotificationChannelManager {
-
-  private static final String PREFS_FILENAME = "NotificationChannelManager";
-  private static final String PREF_NEED_FIRST_INIT = "needFirstInit";
-  private static NotificationChannelManager instance;
-
-  public static NotificationChannelManager getInstance() {
-    if (instance == null) {
-      instance = new NotificationChannelManager();
-    }
-    return instance;
-  }
+/** Creates all notification channels for Dialer. */
+@TargetApi(VERSION_CODES.O)
+public final class NotificationChannelManager {
 
   /**
-   * Set the channel of notification appropriately. Will create the channel if it does not already
-   * exist. Safe to call pre-O (will no-op).
+   * Creates all the notification channels Dialer will need. This method is called at app startup
+   * and must be fast. Currently it takes between 3 to 7 milliseconds on a Pixel XL.
    *
-   * <p>phoneAccount should only be null if channelName is {@link Channel#DEFAULT} or {@link
-   * Channel#MISSED_CALL} since these do not have account-specific settings.
+   * <p>An alternative approach would be to lazily create channels when we actualy post a
+   * notification. The advatange to precreating channels is that:
+   *
+   * <ul>
+   *   <li>channels will be available to user right away. For example, users can customize voicemail
+   *       sounds when they first get their device without waiting for a voicemail to arrive first.
+   *   <li>code that posts a notification can be simpler
+   *   <li>channel management code is simpler and it's easier to ensure that the correct set of
+   *       channels are visible.
+   *       <ul>
    */
-  @TargetApi(26)
-  public static void applyChannel(
-      @NonNull Notification.Builder notification,
-      @NonNull Context context,
-      @Channel String channelName,
-      @Nullable PhoneAccountHandle phoneAccount) {
-    checkNullity(channelName, phoneAccount);
+  public static void initChannels(@NonNull Context context) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
 
-    if (BuildCompat.isAtLeastO()) {
-      NotificationChannel channel =
-          NotificationChannelManager.getInstance().getChannel(context, channelName, phoneAccount);
-      notification.setChannelId(channel.getId());
-    }
-  }
-
-  private static void checkNullity(
-      @Channel String channelName, @Nullable PhoneAccountHandle phoneAccount) {
-    if (phoneAccount != null || channelAllowsNullPhoneAccountHandle(channelName)) {
-      return;
-    }
-
-    // TODO (b/36568553): don't throw an exception once most cases have been identified
-    IllegalArgumentException exception =
-        new IllegalArgumentException(
-            "Phone account handle must not be null on channel " + channelName);
-    if (BuildType.get() == BuildType.RELEASE) {
-      LogUtil.e("NotificationChannelManager.applyChannel", null, exception);
-    } else {
-      throw exception;
-    }
-  }
-
-  private static boolean channelAllowsNullPhoneAccountHandle(@Channel String channelName) {
-    switch (channelName) {
-      case Channel.DEFAULT:
-      case Channel.MISSED_CALL:
-        return true;
-      default:
-        return false;
-    }
-  }
-
-  /** The base Channel IDs for {@link NotificationChannel} */
-  @Retention(RetentionPolicy.SOURCE)
-  @StringDef({
-    Channel.INCOMING_CALL,
-    Channel.ONGOING_CALL,
-    Channel.ONGOING_CALL_OLD,
-    Channel.MISSED_CALL,
-    Channel.VOICEMAIL,
-    Channel.EXTERNAL_CALL,
-    Channel.DEFAULT
-  })
-  public @interface Channel {
-    @Deprecated String ONGOING_CALL_OLD = "ongoingCall";
-    String INCOMING_CALL = "incomingCall";
-    String ONGOING_CALL = "ongoingCall2";
-    String MISSED_CALL = "missedCall";
-    String VOICEMAIL = "voicemail";
-    String EXTERNAL_CALL = "externalCall";
-    String DEFAULT = "default";
-  }
-
-  @Channel
-  private static final String[] prepopulatedAccountChannels =
-      new String[] {Channel.INCOMING_CALL, Channel.ONGOING_CALL, Channel.VOICEMAIL};
-
-  @Channel
-  private static final String[] prepopulatedGlobalChannels =
-      new String[] {Channel.MISSED_CALL, Channel.DEFAULT};
-
-  private NotificationChannelManager() {}
-
-  public void firstInitIfNeeded(@NonNull Context context) {
-    if (BuildCompat.isAtLeastO()) {
-      DialerExecutors.createNonUiTaskBuilder(this::firstInitIfNeededSync)
-          .build()
-          .executeSerial(context);
-    }
-  }
-
-  private boolean firstInitIfNeededSync(@NonNull Context context) {
-    if (needsFirstInit(context)) {
-      initChannels(context);
-      return true;
-    }
-    return false;
-  }
-
-  public boolean needsFirstInit(@NonNull Context context) {
-    return (BuildCompat.isAtLeastO()
-        && getSharedPreferences(context).getBoolean(PREF_NEED_FIRST_INIT, true));
-  }
-
-  @RequiresApi(VERSION_CODES.N)
-  private SharedPreferences getSharedPreferences(@NonNull Context context) {
-    // Use device protected storage since in some cases this will need to be accessed while device
-    // is locked
-    context = context.createDeviceProtectedStorageContext();
-    return context.getSharedPreferences(PREFS_FILENAME, Context.MODE_PRIVATE);
-  }
-
-  @RequiresApi(26)
-  public Intent getSettingsIntentForChannel(
-      @NonNull Context context, @Channel String channelName, PhoneAccountHandle accountHandle) {
-    checkNullity(channelName, accountHandle);
-    Intent intent = new Intent(Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS);
-    intent.putExtra(
-        Settings.EXTRA_CHANNEL_ID, getChannel(context, channelName, accountHandle).getId());
-    intent.putExtra(Settings.EXTRA_APP_PACKAGE, context.getPackageName());
-    return intent;
-  }
-
-  @TargetApi(26)
-  @SuppressWarnings("AndroidApiChecker")
-  public void initChannels(@NonNull Context context) {
-    if (!BuildCompat.isAtLeastO()) {
-      return;
-    }
-    LogUtil.enterBlock("NotificationChannelManager.initChannels");
-    List<PhoneAccountHandle> phoneAccounts = TelecomUtil.getCallCapablePhoneAccounts(context);
-
-    // Remove notification channels for PhoneAccounts that don't exist anymore
     NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
-    List<NotificationChannelGroup> notificationChannelGroups =
-        notificationManager.getNotificationChannelGroups();
-    notificationChannelGroups
-        .stream()
-        .filter(group -> !idExists(group.getId(), phoneAccounts))
-        .forEach(group -> deleteGroup(notificationManager, group));
+    Set<String> desiredChannelIds = getAllDesiredChannelIds(context);
+    Set<String> existingChannelIds = getAllExistingChannelIds(context);
 
-    for (PhoneAccountHandle phoneAccountHandle : phoneAccounts) {
-      for (@Channel String channel : prepopulatedAccountChannels) {
-        getChannel(context, channel, phoneAccountHandle);
+    if (desiredChannelIds.equals(existingChannelIds)) {
+      return;
+    }
+    LogUtil.i(
+        "NotificationChannelManager.initChannels",
+        "doing an expensive initialization of all notification channels");
+    LogUtil.i(
+        "NotificationChannelManager.initChannels", "desired channel IDs: " + desiredChannelIds);
+    LogUtil.i(
+        "NotificationChannelManager.initChannels", "existing channel IDs: " + existingChannelIds);
+
+    // Delete any old channels that we don't use any more. This is safe because if we're recreate
+    // this later then any user settings will be restored. An example is SIM specific voicemail
+    // channel that gets deleted when the user removes the SIM and is then restored when the user
+    // re-inserts the SIM.
+    for (String existingChannelId : existingChannelIds) {
+      if (!desiredChannelIds.contains(existingChannelId)) {
+        notificationManager.deleteNotificationChannel(existingChannelId);
       }
     }
 
-    for (@Channel String channel : prepopulatedGlobalChannels) {
-      getChannel(context, channel, null);
-    }
-    getSharedPreferences(context).edit().putBoolean(PREF_NEED_FIRST_INIT, false).apply();
-  }
-
-  @TargetApi(26)
-  private void deleteGroup(
-      @NonNull NotificationManager notificationManager, @NonNull NotificationChannelGroup group) {
-    for (NotificationChannel channel : group.getChannels()) {
-      notificationManager.deleteNotificationChannel(channel.getId());
-    }
-    notificationManager.deleteNotificationChannelGroup(group.getId());
-  }
-
-  private boolean idExists(String id, List<PhoneAccountHandle> phoneAccountHandles) {
-    for (PhoneAccountHandle handle : phoneAccountHandles) {
-      if (Objects.equals(handle.getId(), id)) {
-        return true;
-      }
-    }
-    return false;
+    // Just recreate all desired channels. We won't do this often so it's ok to do this now.
+    createIncomingCallChannel(context);
+    createOngoingCallChannel(context);
+    createMissedCallChannel(context);
+    createDefaultChannel(context);
+    VoicemailChannelUtils.createAllChannels(context);
   }
 
   @NonNull
-  @RequiresApi(26)
-  private NotificationChannel getChannel(
-      @NonNull Context context,
-      @Channel String channelName,
-      @Nullable PhoneAccountHandle phoneAccount) {
-    String channelId = channelNameToId(channelName, phoneAccount);
-    NotificationChannel channel = getNotificationManager(context).getNotificationChannel(channelId);
-    if (channel == null) {
-      channel = createChannel(context, channelName, phoneAccount);
+  public static String getVoicemailChannelId(
+      @NonNull Context context, @Nullable PhoneAccountHandle handle) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
+    return VoicemailChannelUtils.getChannelId(context, handle);
+  }
+
+  private static Set<String> getAllExistingChannelIds(@NonNull Context context) {
+    Set<String> result = new ArraySet<>();
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    for (NotificationChannel channel : notificationManager.getNotificationChannels()) {
+      result.add(channel.getId());
     }
-    return channel;
+    return result;
   }
 
-  private static String channelNameToId(
-      @Channel String name, @Nullable PhoneAccountHandle phoneAccountHandle) {
-    if (phoneAccountHandle == null) {
-      return name;
-    } else {
-      return name + ":" + phoneAccountHandle.getId();
-    }
+  private static Set<String> getAllDesiredChannelIds(@NonNull Context context) {
+    Set<String> result = new ArraySet<>();
+    result.add(NotificationChannelId.INCOMING_CALL);
+    result.add(NotificationChannelId.ONGOING_CALL);
+    result.add(NotificationChannelId.MISSED_CALL);
+    result.add(NotificationChannelId.DEFAULT);
+    result.addAll(VoicemailChannelUtils.getAllChannelIds(context));
+    return result;
   }
 
-  @RequiresApi(26)
-  private NotificationChannel createChannel(
-      Context context,
-      @Channel String channelName,
-      @Nullable PhoneAccountHandle phoneAccountHandle) {
-    String channelId = channelNameToId(channelName, phoneAccountHandle);
-
-    if (phoneAccountHandle != null) {
-      PhoneAccount account = getTelecomManager(context).getPhoneAccount(phoneAccountHandle);
-      NotificationChannelGroup group =
-          new NotificationChannelGroup(
-              phoneAccountHandle.getId(),
-              (account == null) ? phoneAccountHandle.getId() : account.getLabel().toString());
-      getNotificationManager(context)
-          .createNotificationChannelGroup(group); // No-op if already exists
-    } else if (!channelAllowsNullPhoneAccountHandle(channelName)) {
-      LogUtil.w(
-          "NotificationChannelManager.createChannel",
-          "Null PhoneAccountHandle with channel " + channelName);
-    }
-
-    Uri silentRingtone = Uri.EMPTY;
-
-    CharSequence name;
-    int importance;
-    boolean canShowBadge;
-    boolean lights;
-    boolean vibration;
-    Uri sound;
-    switch (channelName) {
-      case Channel.INCOMING_CALL:
-        name = context.getText(R.string.notification_channel_incoming_call);
-        importance = NotificationManager.IMPORTANCE_MAX;
-        canShowBadge = false;
-        lights = true;
-        vibration = false;
-        sound = silentRingtone;
-        break;
-      case Channel.MISSED_CALL:
-        name = context.getText(R.string.notification_channel_missed_call);
-        importance = NotificationManager.IMPORTANCE_DEFAULT;
-        canShowBadge = true;
-        lights = true;
-        vibration = true;
-        sound = silentRingtone;
-        break;
-      case Channel.ONGOING_CALL:
-        name = context.getText(R.string.notification_channel_ongoing_call);
-        importance = NotificationManager.IMPORTANCE_DEFAULT;
-        canShowBadge = false;
-        lights = false;
-        vibration = false;
-        sound = silentRingtone;
-        deleteOldOngoingCallChannelIfNeeded(context, phoneAccountHandle);
-        break;
-      case Channel.VOICEMAIL:
-        name = context.getText(R.string.notification_channel_voicemail);
-        importance = NotificationManager.IMPORTANCE_DEFAULT;
-        canShowBadge = true;
-        lights = true;
-        vibration =
-            TelephonyManagerCompat.isVoicemailVibrationEnabled(
-                getTelephonyManager(context), phoneAccountHandle);
-        sound =
-            TelephonyManagerCompat.getVoicemailRingtoneUri(
-                getTelephonyManager(context), phoneAccountHandle);
-        break;
-      case Channel.EXTERNAL_CALL:
-        name = context.getText(R.string.notification_channel_external_call);
-        importance = NotificationManager.IMPORTANCE_HIGH;
-        canShowBadge = false;
-        lights = true;
-        vibration = true;
-        sound = null;
-        break;
-      case Channel.DEFAULT:
-        name = context.getText(R.string.notification_channel_misc);
-        importance = NotificationManager.IMPORTANCE_DEFAULT;
-        canShowBadge = false;
-        lights = true;
-        vibration = true;
-        sound = null;
-        break;
-      default:
-        throw new IllegalArgumentException("Unknown channel: " + channelName);
-    }
-
-    NotificationChannel channel = new NotificationChannel(channelId, name, importance);
-    channel.setShowBadge(canShowBadge);
-    if (sound != null) {
-      // silentRingtone acts as a sentinel value to indicate that setSound should still be called,
-      // but with a null value to indicate no sound.
-      channel.setSound(
-          sound.equals(silentRingtone) ? null : sound,
-          new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
-    }
-    channel.enableLights(lights);
-    channel.enableVibration(vibration);
-    getNotificationManager(context).createNotificationChannel(channel);
-    return channel;
+  private static void createIncomingCallChannel(@NonNull Context context) {
+    NotificationChannel channel =
+        new NotificationChannel(
+            NotificationChannelId.INCOMING_CALL,
+            context.getText(R.string.notification_channel_incoming_call),
+            NotificationManager.IMPORTANCE_MAX);
+    channel.setShowBadge(false);
+    channel.enableLights(true);
+    channel.enableVibration(false);
+    channel.setSound(
+        null, new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
   }
 
-  @RequiresApi(26)
-  private void deleteOldOngoingCallChannelIfNeeded(
-      @NonNull Context context, PhoneAccountHandle phoneAccountHandle) {
-    String channelId = channelNameToId(Channel.ONGOING_CALL_OLD, phoneAccountHandle);
-    NotificationManager notificationManager = getNotificationManager(context);
-    NotificationChannel channel = notificationManager.getNotificationChannel(channelId);
-    if (channel != null) {
-      LogUtil.i(
-          "NotificationManager.deleteOldOngoingCallChannelIfNeeded",
-          "Old ongoing channel found. Deleting to create new channel");
-      notificationManager.deleteNotificationChannel(channel.getId());
-    }
+  private static void createOngoingCallChannel(@NonNull Context context) {
+    NotificationChannel channel =
+        new NotificationChannel(
+            NotificationChannelId.ONGOING_CALL,
+            context.getText(R.string.notification_channel_ongoing_call),
+            NotificationManager.IMPORTANCE_DEFAULT);
+    channel.setShowBadge(false);
+    channel.enableLights(false);
+    channel.enableVibration(false);
+    channel.setSound(
+        null, new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
   }
 
-  private static NotificationManager getNotificationManager(@NonNull Context context) {
-    return context.getSystemService(NotificationManager.class);
+  private static void createMissedCallChannel(@NonNull Context context) {
+    NotificationChannel channel =
+        new NotificationChannel(
+            NotificationChannelId.MISSED_CALL,
+            context.getText(R.string.notification_channel_missed_call),
+            NotificationManager.IMPORTANCE_DEFAULT);
+    channel.setShowBadge(true);
+    channel.enableLights(true);
+    channel.enableVibration(true);
+    channel.setSound(
+        null, new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
   }
 
-  private static TelephonyManager getTelephonyManager(@NonNull Context context) {
-    return context.getSystemService(TelephonyManager.class);
+  private static void createDefaultChannel(@NonNull Context context) {
+    NotificationChannel channel =
+        new NotificationChannel(
+            NotificationChannelId.DEFAULT,
+            context.getText(R.string.notification_channel_misc),
+            NotificationManager.IMPORTANCE_DEFAULT);
+    channel.setShowBadge(false);
+    channel.enableLights(true);
+    channel.enableVibration(true);
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
   }
 
-  private static TelecomManager getTelecomManager(@NonNull Context context) {
-    return context.getSystemService(TelecomManager.class);
-  }
+  private NotificationChannelManager() {}
 }
diff --git a/java/com/android/dialer/notification/PackageUpdatedReceiver.java b/java/com/android/dialer/notification/PackageUpdatedReceiver.java
deleted file mode 100644
index feed402..0000000
--- a/java/com/android/dialer/notification/PackageUpdatedReceiver.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright (C) 2017 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.dialer.notification;
-
-import android.annotation.TargetApi;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.support.v4.os.BuildCompat;
-
-/** Inits the notification channels when Dialer or OS is updated */
-public class PackageUpdatedReceiver extends BroadcastReceiver {
-
-  @Override
-  @TargetApi(26)
-  public void onReceive(Context context, Intent intent) {
-    if (!BuildCompat.isAtLeastO()) {
-      return;
-    }
-    context = context.createDeviceProtectedStorageContext();
-    NotificationChannelManager.getInstance().initChannels(context);
-  }
-}
diff --git a/java/com/android/dialer/notification/VoicemailChannelUtils.java b/java/com/android/dialer/notification/VoicemailChannelUtils.java
new file mode 100644
index 0000000..dc74799
--- /dev/null
+++ b/java/com/android/dialer/notification/VoicemailChannelUtils.java
@@ -0,0 +1,217 @@
+/*
+ * Copyright (C) 2017 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.dialer.notification;
+
+import android.annotation.TargetApi;
+import android.app.NotificationChannel;
+import android.app.NotificationManager;
+import android.content.Context;
+import android.media.AudioAttributes;
+import android.os.Build.VERSION_CODES;
+import android.provider.Settings;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.v4.os.BuildCompat;
+import android.telecom.PhoneAccount;
+import android.telecom.PhoneAccountHandle;
+import android.telecom.TelecomManager;
+import android.telephony.TelephonyManager;
+import android.text.TextUtils;
+import android.util.ArraySet;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+/** Utilities for working with voicemail channels. */
+@TargetApi(VERSION_CODES.O)
+/* package */ final class VoicemailChannelUtils {
+  private static final String GLOBAL_VOICEMAIL_CHANNEL_ID = "phone_voicemail";
+  private static final String PER_ACCOUNT_VOICEMAIL_CHANNEL_ID_PREFIX = "phone_voicemail_account_";
+
+  static Set<String> getAllChannelIds(@NonNull Context context) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
+
+    Set<String> result = new ArraySet<>();
+    if (isSingleSimDevice(context)) {
+      result.add(GLOBAL_VOICEMAIL_CHANNEL_ID);
+    } else {
+      for (PhoneAccountHandle handle : getAllEligableAccounts(context)) {
+        result.add(getChannelIdForAccount(handle));
+      }
+    }
+    return result;
+  }
+
+  static void createAllChannels(@NonNull Context context) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
+
+    if (isSingleSimDevice(context)) {
+      createGlobalVoicemailChannel(context);
+    } else {
+      for (PhoneAccountHandle handle : getAllEligableAccounts(context)) {
+        createVoicemailChannelForAccount(context, handle);
+      }
+    }
+  }
+
+  @NonNull
+  static String getChannelId(@NonNull Context context, @Nullable PhoneAccountHandle handle) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
+
+    // Most devices we deal with have a single SIM slot. No need to distinguish between phone
+    // accounts.
+    if (isSingleSimDevice(context)) {
+      return GLOBAL_VOICEMAIL_CHANNEL_ID;
+    }
+
+    // We can get a null phone account at random points (modem reboot, etc...). Gracefully degrade
+    // by using the default channel.
+    if (handle == null) {
+      LogUtil.i(
+          "VoicemailChannelUtils.getChannelId",
+          "no phone account on a multi-SIM device, using default channel");
+      return NotificationChannelId.DEFAULT;
+    }
+
+    // Voicemail notifications should always be associated with a SIM based phone account.
+    if (!isChannelAllowedForAccount(context, handle)) {
+      LogUtil.i(
+          "VoicemailChannelUtils.getChannelId",
+          "phone account is not for a SIM, using default channel");
+      return NotificationChannelId.DEFAULT;
+    }
+
+    // Now we're in the multi-SIM case.
+    String channelId = getChannelIdForAccount(handle);
+    if (!doesChannelExist(context, channelId)) {
+      LogUtil.i(
+          "VoicemailChannelUtils.getChannelId",
+          "voicemail channel not found for phone account (possible SIM swap?), creating a new one");
+      createVoicemailChannelForAccount(context, handle);
+    }
+    return channelId;
+  }
+
+  private static boolean doesChannelExist(@NonNull Context context, @NonNull String channelId) {
+    return context.getSystemService(NotificationManager.class).getNotificationChannel(channelId)
+        != null;
+  }
+
+  private static String getChannelIdForAccount(@NonNull PhoneAccountHandle handle) {
+    Assert.isNotNull(handle);
+    return PER_ACCOUNT_VOICEMAIL_CHANNEL_ID_PREFIX + ":" + handle.getId();
+  }
+
+  /**
+   * Creates a voicemail channel but doesn't associate it with a SIM. For devices with only one SIM
+   * slot this is ideal because there won't be duplication in the settings UI.
+   */
+  private static void createGlobalVoicemailChannel(@NonNull Context context) {
+    NotificationChannel channel = newChannel(context, GLOBAL_VOICEMAIL_CHANNEL_ID, null);
+
+    TelecomManager telecomManager = context.getSystemService(TelecomManager.class);
+    PhoneAccountHandle handle =
+        telecomManager.getDefaultOutgoingPhoneAccount(PhoneAccount.SCHEME_TEL);
+    if (handle == null) {
+      LogUtil.i(
+          "VoicemailChannelUtils.createGlobalVoicemailChannel",
+          "phone account is null, not migrating sound settings");
+    } else if (!isChannelAllowedForAccount(context, handle)) {
+      LogUtil.i(
+          "VoicemailChannelUtils.createGlobalVoicemailChannel",
+          "phone account is not eligable, not migrating sound settings");
+    } else {
+      migrateVoicemailSoundSettings(context, channel, handle);
+    }
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
+  }
+
+  private static List<PhoneAccountHandle> getAllEligableAccounts(@NonNull Context context) {
+    List<PhoneAccountHandle> handles = new ArrayList<>();
+    TelecomManager telecomManager = context.getSystemService(TelecomManager.class);
+    for (PhoneAccountHandle handle : telecomManager.getCallCapablePhoneAccounts()) {
+      if (isChannelAllowedForAccount(context, handle)) {
+        handles.add(handle);
+      }
+    }
+    return handles;
+  }
+
+  private static void createVoicemailChannelForAccount(
+      @NonNull Context context, @NonNull PhoneAccountHandle handle) {
+    PhoneAccount phoneAccount =
+        context.getSystemService(TelecomManager.class).getPhoneAccount(handle);
+    NotificationChannel channel =
+        newChannel(context, getChannelIdForAccount(handle), phoneAccount.getLabel());
+    migrateVoicemailSoundSettings(context, channel, handle);
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
+  }
+
+  private static void migrateVoicemailSoundSettings(
+      @NonNull Context context,
+      @NonNull NotificationChannel channel,
+      @NonNull PhoneAccountHandle handle) {
+    TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
+    channel.enableVibration(telephonyManager.isVoicemailVibrationEnabled(handle));
+    channel.setSound(
+        telephonyManager.getVoicemailRingtoneUri(handle),
+        new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+  }
+
+  private static boolean isChannelAllowedForAccount(
+      @NonNull Context context, @NonNull PhoneAccountHandle handle) {
+    PhoneAccount phoneAccount =
+        context.getSystemService(TelecomManager.class).getPhoneAccount(handle);
+    if (phoneAccount == null) {
+      return false;
+    }
+    if (!phoneAccount.hasCapabilities(PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION)) {
+      return false;
+    }
+    return true;
+  }
+
+  private static NotificationChannel newChannel(
+      @NonNull Context context, @NonNull String channelId, @Nullable CharSequence nameSuffix) {
+    CharSequence name = context.getText(R.string.notification_channel_voicemail);
+    // TODO: Use a string resource template after v10.
+    if (!TextUtils.isEmpty(nameSuffix)) {
+      name = TextUtils.concat(name, ": ", nameSuffix);
+    }
+
+    NotificationChannel channel =
+        new NotificationChannel(channelId, name, NotificationManager.IMPORTANCE_DEFAULT);
+    channel.setShowBadge(true);
+    channel.enableLights(true);
+    channel.enableVibration(true);
+    channel.setSound(
+        Settings.System.DEFAULT_NOTIFICATION_URI,
+        new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+    return channel;
+  }
+
+  private static boolean isSingleSimDevice(@NonNull Context context) {
+    return context.getSystemService(TelephonyManager.class).getPhoneCount() <= 1;
+  }
+
+  private VoicemailChannelUtils() {}
+}
diff --git a/java/com/android/dialer/notification/res/values-af/strings.xml b/java/com/android/dialer/notification/res/values-af/strings.xml
index 08dd754..e48249b 100644
--- a/java/com/android/dialer/notification/res/values-af/strings.xml
+++ b/java/com/android/dialer/notification/res/values-af/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Deurlopende oproepe"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Gemiste oproepe"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Stemboodskappe"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Ekterne oproepe"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Verstek"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-am/strings.xml b/java/com/android/dialer/notification/res/values-am/strings.xml
index 56d6c2c..0983e05 100644
--- a/java/com/android/dialer/notification/res/values-am/strings.xml
+++ b/java/com/android/dialer/notification/res/values-am/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"በመካሄድ ላይ ያሉ ጥሪዎች"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ያመለጡ ጥሪዎች"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"የድምፅ መልዕክቶች"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ውጫዊ ጥሪዎች"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ነባሪ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ar/strings.xml b/java/com/android/dialer/notification/res/values-ar/strings.xml
index 71857c2..ab6059f 100644
--- a/java/com/android/dialer/notification/res/values-ar/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ar/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"المكالمات الجارية"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"المكالمات الفائتة"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"رسائل البريد الصوتي"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"المكالمات الخارجية"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"افتراضي"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-az/strings.xml b/java/com/android/dialer/notification/res/values-az/strings.xml
index f907e55..425f30a 100644
--- a/java/com/android/dialer/notification/res/values-az/strings.xml
+++ b/java/com/android/dialer/notification/res/values-az/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Gedən zənglər"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Buraxılmış zənglər"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Səsli məktublar"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"External calls"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Defolt"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/notification/res/values-b+sr+Latn/strings.xml
index 4d5b5e7..4598e76 100644
--- a/java/com/android/dialer/notification/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/notification/res/values-b+sr+Latn/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pozivi u toku"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Propušteni pozivi"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Govorne poruke"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Spoljni pozivi"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Podrazumevano"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-be/strings.xml b/java/com/android/dialer/notification/res/values-be/strings.xml
index 70defe3..586a36c 100644
--- a/java/com/android/dialer/notification/res/values-be/strings.xml
+++ b/java/com/android/dialer/notification/res/values-be/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Адбываючыяся выклікі"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Прапушчаныя выклікі"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Галасавая пошта"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Знешнія выклікі"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Стандартны"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-bg/strings.xml b/java/com/android/dialer/notification/res/values-bg/strings.xml
index 1ec202e..9bc8f8f 100644
--- a/java/com/android/dialer/notification/res/values-bg/strings.xml
+++ b/java/com/android/dialer/notification/res/values-bg/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Текущи обаждания"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропуснати обаждания"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Гласови съобщения"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Външни обаждания"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"По подразбиране"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-bn/strings.xml b/java/com/android/dialer/notification/res/values-bn/strings.xml
index 886f831..1d77817 100644
--- a/java/com/android/dialer/notification/res/values-bn/strings.xml
+++ b/java/com/android/dialer/notification/res/values-bn/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"সংযুক্ত কল"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"মিস করা কল"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ভয়েসমেল"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"বাহ্যিক কল"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ডিফল্ট"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-bs/strings.xml b/java/com/android/dialer/notification/res/values-bs/strings.xml
index e408a64..dedbb1c 100644
--- a/java/com/android/dialer/notification/res/values-bs/strings.xml
+++ b/java/com/android/dialer/notification/res/values-bs/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Tekući pozivi"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Propušteni pozivi"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Poruke govorne pošte"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Vanjski pozivi"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Zadano"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ca/strings.xml b/java/com/android/dialer/notification/res/values-ca/strings.xml
index ea81b62..1c19d0f 100644
--- a/java/com/android/dialer/notification/res/values-ca/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ca/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Trucades en curs"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Trucades perdudes"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Missatges de veu"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Trucades externes"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predeterminat"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-cs/strings.xml b/java/com/android/dialer/notification/res/values-cs/strings.xml
index 9ea7b61..c428ca2 100644
--- a/java/com/android/dialer/notification/res/values-cs/strings.xml
+++ b/java/com/android/dialer/notification/res/values-cs/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Probíhající hovory"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Zmeškané hovory"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Hlasové zprávy"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externí hovory"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Výchozí"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-da/strings.xml b/java/com/android/dialer/notification/res/values-da/strings.xml
index e4fc4dd..7f0ce9f 100644
--- a/java/com/android/dialer/notification/res/values-da/strings.xml
+++ b/java/com/android/dialer/notification/res/values-da/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Igangværende opkald"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Ubesvarede opkald"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Talebeskeder"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Eksterne opkald"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-de/strings.xml b/java/com/android/dialer/notification/res/values-de/strings.xml
index 7fce6bf..86b7520 100644
--- a/java/com/android/dialer/notification/res/values-de/strings.xml
+++ b/java/com/android/dialer/notification/res/values-de/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Laufende Anrufe"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Entgangene Anrufe"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mailboxnachrichten"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externe Anrufe"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-el/strings.xml b/java/com/android/dialer/notification/res/values-el/strings.xml
index a25bb43..812dc25 100644
--- a/java/com/android/dialer/notification/res/values-el/strings.xml
+++ b/java/com/android/dialer/notification/res/values-el/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Κλήσεις σε εξέλιξη"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Αναπάντητες κλήσεις"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Μηνύματα αυτόματου τηλεφωνητή"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Εξωτερικές κλήσεις"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Προεπιλογή"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-en-rAU/strings.xml b/java/com/android/dialer/notification/res/values-en-rAU/strings.xml
index 7d4bd82..43b722b 100644
--- a/java/com/android/dialer/notification/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/notification/res/values-en-rAU/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Ongoing calls"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Missed calls"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Voicemail"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"External calls"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-en-rGB/strings.xml b/java/com/android/dialer/notification/res/values-en-rGB/strings.xml
index 7d4bd82..43b722b 100644
--- a/java/com/android/dialer/notification/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/notification/res/values-en-rGB/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Ongoing calls"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Missed calls"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Voicemail"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"External calls"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-en-rIN/strings.xml b/java/com/android/dialer/notification/res/values-en-rIN/strings.xml
index 7d4bd82..43b722b 100644
--- a/java/com/android/dialer/notification/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/notification/res/values-en-rIN/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Ongoing calls"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Missed calls"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Voicemail"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"External calls"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-es-rUS/strings.xml b/java/com/android/dialer/notification/res/values-es-rUS/strings.xml
index fe8fe13..c56edcf 100644
--- a/java/com/android/dialer/notification/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/notification/res/values-es-rUS/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Llamadas en curso"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Llamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mensajes de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Llamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predeterminado"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-es/strings.xml b/java/com/android/dialer/notification/res/values-es/strings.xml
index fe8fe13..c56edcf 100644
--- a/java/com/android/dialer/notification/res/values-es/strings.xml
+++ b/java/com/android/dialer/notification/res/values-es/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Llamadas en curso"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Llamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mensajes de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Llamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predeterminado"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-et/strings.xml b/java/com/android/dialer/notification/res/values-et/strings.xml
index 4162395..9c60a31 100644
--- a/java/com/android/dialer/notification/res/values-et/strings.xml
+++ b/java/com/android/dialer/notification/res/values-et/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Käimasolevad kõned"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Vastamata kõned"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Kõnepostisõnumid"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Välised kõned"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Vaikeseade"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-eu/strings.xml b/java/com/android/dialer/notification/res/values-eu/strings.xml
index 326ac0a..d94ac0a 100644
--- a/java/com/android/dialer/notification/res/values-eu/strings.xml
+++ b/java/com/android/dialer/notification/res/values-eu/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Abian diren deiak"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Dei galduak"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Ahots-mezuak"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Kanpoko deiak"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Lehenetsia"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-fa/strings.xml b/java/com/android/dialer/notification/res/values-fa/strings.xml
index f1a7efc..edbc983 100644
--- a/java/com/android/dialer/notification/res/values-fa/strings.xml
+++ b/java/com/android/dialer/notification/res/values-fa/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"تماس‌های درحال انجام"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"تماس‌های بی‌پاسخ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"پست‌های صوتی"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"تماس‌های خارجی"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"پیش‌فرض"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-fi/strings.xml b/java/com/android/dialer/notification/res/values-fi/strings.xml
index c88c232..87652f8 100644
--- a/java/com/android/dialer/notification/res/values-fi/strings.xml
+++ b/java/com/android/dialer/notification/res/values-fi/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Käynnissä olevat puhelut"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Vastaamattomat puhelut"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Vastaajaviestit"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Ulkopuoliset puhelut"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Oletus"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-fr-rCA/strings.xml b/java/com/android/dialer/notification/res/values-fr-rCA/strings.xml
index a21d6b2..5a2d7dc 100644
--- a/java/com/android/dialer/notification/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/notification/res/values-fr-rCA/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Appels en cours"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Appels manqués"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Messages vocaux"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Appels externes"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Par défaut"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-fr/strings.xml b/java/com/android/dialer/notification/res/values-fr/strings.xml
index a21d6b2..5a2d7dc 100644
--- a/java/com/android/dialer/notification/res/values-fr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-fr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Appels en cours"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Appels manqués"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Messages vocaux"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Appels externes"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Par défaut"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-gl/strings.xml b/java/com/android/dialer/notification/res/values-gl/strings.xml
index 3b57a59..0e7fb61 100644
--- a/java/com/android/dialer/notification/res/values-gl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-gl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chamadas saíntes"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Correos de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predeterminado"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-gu/strings.xml b/java/com/android/dialer/notification/res/values-gu/strings.xml
index f185e59..a4a0a7a 100644
--- a/java/com/android/dialer/notification/res/values-gu/strings.xml
+++ b/java/com/android/dialer/notification/res/values-gu/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ચાલુ કૉલ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"છૂટેલા કૉલ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"વૉઇસમેઇલ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"બાહ્ય કૉલ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ડિફૉલ્ટ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-hi/strings.xml b/java/com/android/dialer/notification/res/values-hi/strings.xml
index 89c8e55..69ed9b0 100644
--- a/java/com/android/dialer/notification/res/values-hi/strings.xml
+++ b/java/com/android/dialer/notification/res/values-hi/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"चल रहे कॉल"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"छूटे कॉल"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"वॉइसमेल"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"बाहरी कॉल"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"डिफ़ॉल्ट"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-hr/strings.xml b/java/com/android/dialer/notification/res/values-hr/strings.xml
index 9f786d7..a5924c3 100644
--- a/java/com/android/dialer/notification/res/values-hr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-hr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pozivi u tijeku"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Propušteni pozivi"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Poruke govorne pošte"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Vanjski pozivi"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Zadano"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-hu/strings.xml b/java/com/android/dialer/notification/res/values-hu/strings.xml
index 09fa795..719252f 100644
--- a/java/com/android/dialer/notification/res/values-hu/strings.xml
+++ b/java/com/android/dialer/notification/res/values-hu/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Kimenő hívások"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Nem fogadott hívások"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Hangüzenetek"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Külső hívások"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Alapértelmezett"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-hy/strings.xml b/java/com/android/dialer/notification/res/values-hy/strings.xml
index 693898a..6bb2c34 100644
--- a/java/com/android/dialer/notification/res/values-hy/strings.xml
+++ b/java/com/android/dialer/notification/res/values-hy/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Ընթացիկ զանգեր"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Բաց թողնված զանգեր"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Ձայնային փոստ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Արտաքին զանգեր"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Կանխադրված"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-in/strings.xml b/java/com/android/dialer/notification/res/values-in/strings.xml
index 405b292..88ef3d5 100644
--- a/java/com/android/dialer/notification/res/values-in/strings.xml
+++ b/java/com/android/dialer/notification/res/values-in/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Panggilan keluar"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Panggilan tak terjawab"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Pesan suara"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Panggilan eksternal"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-is/strings.xml b/java/com/android/dialer/notification/res/values-is/strings.xml
index be84917..166d974 100644
--- a/java/com/android/dialer/notification/res/values-is/strings.xml
+++ b/java/com/android/dialer/notification/res/values-is/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Símtöl í gangi"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Ósvöruð símtöl"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Talhólfsskilaboð"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Utanaðkomandi símtöl"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Sjálfgefið"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-it/strings.xml b/java/com/android/dialer/notification/res/values-it/strings.xml
index 1ac6e2d..7b55da9 100644
--- a/java/com/android/dialer/notification/res/values-it/strings.xml
+++ b/java/com/android/dialer/notification/res/values-it/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chiamate in uscita"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chiamate perse"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Messaggi vocali"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chiamate esterne"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predefinito"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-iw/strings.xml b/java/com/android/dialer/notification/res/values-iw/strings.xml
index ed07b86..2b8b9df 100644
--- a/java/com/android/dialer/notification/res/values-iw/strings.xml
+++ b/java/com/android/dialer/notification/res/values-iw/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"שיחות יוצאות"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"שיחות שלא נענו"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"הודעות קוליות"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"שיחות חיצוניות"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ברירת מחדל"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ja/strings.xml b/java/com/android/dialer/notification/res/values-ja/strings.xml
index 3265d72..2ff8da7 100644
--- a/java/com/android/dialer/notification/res/values-ja/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ja/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"通話中"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"不在着信"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ボイスメール"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"外部通話"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"デフォルト"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ka/strings.xml b/java/com/android/dialer/notification/res/values-ka/strings.xml
index 6d81465..73394ef 100644
--- a/java/com/android/dialer/notification/res/values-ka/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ka/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"გამავალი ზარები"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"გამოტოვებული ზარები"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ხმოვანი ფოსტა"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"გარე ზარები"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ნაგულისხმევი"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-kk/strings.xml b/java/com/android/dialer/notification/res/values-kk/strings.xml
index 35733fb..8151c9c 100644
--- a/java/com/android/dialer/notification/res/values-kk/strings.xml
+++ b/java/com/android/dialer/notification/res/values-kk/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Қазіргі қоңыраулар"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Қабылданбаған қоңыраулар"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Дауыстық хабарлар"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Сыртқы қоңыраулар"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Әдепкі"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-km/strings.xml b/java/com/android/dialer/notification/res/values-km/strings.xml
index 42bc113..22131ff 100644
--- a/java/com/android/dialer/notification/res/values-km/strings.xml
+++ b/java/com/android/dialer/notification/res/values-km/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ការ​ហៅ​បន្ត"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ការ​ហៅ​ដែល​មិន​បាន​ទទួល"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"សារ​ជា​សំឡេង"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ការ​ហៅខាង​ក្រៅ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"លំ​នាំ​ដើម"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-kn/strings.xml b/java/com/android/dialer/notification/res/values-kn/strings.xml
index 45f26e3..d6e55bd 100644
--- a/java/com/android/dialer/notification/res/values-kn/strings.xml
+++ b/java/com/android/dialer/notification/res/values-kn/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕರೆಗಳು"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ಮಿಸ್ಡ್‌ ಕರೆಗಳು"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ಧ್ವನಿಮೇಲ್‌ಗಳು"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ಹೊರಗಿನ ಕರೆಗಳು"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ಡಿಫಾಲ್ಟ್"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ko/strings.xml b/java/com/android/dialer/notification/res/values-ko/strings.xml
index d806cad..5a66717 100644
--- a/java/com/android/dialer/notification/res/values-ko/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ko/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"진행 중인 전화"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"부재중 전화"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"음성사서함"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"외부 전화"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"기본"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ky/strings.xml b/java/com/android/dialer/notification/res/values-ky/strings.xml
index eb6adf6..c525931 100644
--- a/java/com/android/dialer/notification/res/values-ky/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ky/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Учурдагы чалуулар"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Кабыл алынбаган чалуулар"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Үнкаттар"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Тышкы чалуулар"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Демейки"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-lo/strings.xml b/java/com/android/dialer/notification/res/values-lo/strings.xml
index f439807..a52d9df 100644
--- a/java/com/android/dialer/notification/res/values-lo/strings.xml
+++ b/java/com/android/dialer/notification/res/values-lo/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ສາຍໂທອອກ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ສາຍບໍ່ໄດ້ຮັບ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ຂໍ້ຄວາມສຽງ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ສາຍພາຍນອກ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ຄ່າເລີ່ມຕົ້ນ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-lt/strings.xml b/java/com/android/dialer/notification/res/values-lt/strings.xml
index f08697a..6f26d3e 100644
--- a/java/com/android/dialer/notification/res/values-lt/strings.xml
+++ b/java/com/android/dialer/notification/res/values-lt/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Vykstantys skambučiai"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Praleisti skambučiai"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Balso pašto pranešimai"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Išoriniai skambučiai"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Numatytasis"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-lv/strings.xml b/java/com/android/dialer/notification/res/values-lv/strings.xml
index d465b68..1819d81 100644
--- a/java/com/android/dialer/notification/res/values-lv/strings.xml
+++ b/java/com/android/dialer/notification/res/values-lv/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Aktīvie zvani"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Neatbildētie zvani"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Balss pasta ziņojumi"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Ārējie zvani"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Noklusējums"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-mk/strings.xml b/java/com/android/dialer/notification/res/values-mk/strings.xml
index 838065b..56459c4 100644
--- a/java/com/android/dialer/notification/res/values-mk/strings.xml
+++ b/java/com/android/dialer/notification/res/values-mk/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Појдовни повици"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропуштени повици"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Говорни пораки"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Надворешни повици"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Стандардно"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ml/strings.xml b/java/com/android/dialer/notification/res/values-ml/strings.xml
index 448186a..49a64e8 100644
--- a/java/com/android/dialer/notification/res/values-ml/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ml/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"നിലവിലുള്ള കോളുകൾ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"മിസ്‌ഡ് കോളുകൾ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"വോയ്‌സ്മെയിലുകൾ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"എക്‌സ്റ്റേണൽ കോളുകൾ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ഡിഫോൾട്ട്"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-mn/strings.xml b/java/com/android/dialer/notification/res/values-mn/strings.xml
index 3dca52e..28297b3 100644
--- a/java/com/android/dialer/notification/res/values-mn/strings.xml
+++ b/java/com/android/dialer/notification/res/values-mn/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Үргэлжилж буй дуудлага"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Аваагүй дуудлага"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Дуут шуудан"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Гадаад дуудлага"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Өгөгдмөл"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-mr/strings.xml b/java/com/android/dialer/notification/res/values-mr/strings.xml
index 5685376..38fbd60 100644
--- a/java/com/android/dialer/notification/res/values-mr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-mr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"सुरू असलेले कॉल"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"सुटलेले कॉल"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"व्हॉइसमेल"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"बाह्य कॉल"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"डीफॉल्ट"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ms/strings.xml b/java/com/android/dialer/notification/res/values-ms/strings.xml
index a1961c4..ec7be04 100644
--- a/java/com/android/dialer/notification/res/values-ms/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ms/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Panggilan sedang berlangsung"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Panggilan terlepas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mel suara"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Panggilan luar"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Lalai"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-my/strings.xml b/java/com/android/dialer/notification/res/values-my/strings.xml
index 26398b4..44df847 100644
--- a/java/com/android/dialer/notification/res/values-my/strings.xml
+++ b/java/com/android/dialer/notification/res/values-my/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"လက်ရှိခေါ်ဆိုမှုများ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"လွဲသွားသော ခေါ်ဆိုမှုများ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"အသံစာပို့စနစ်များ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ပြင်ပခေါ်ဆိုမှုများ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"မူရင်း"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-nb/strings.xml b/java/com/android/dialer/notification/res/values-nb/strings.xml
index e4ccd48..8e63fd2 100644
--- a/java/com/android/dialer/notification/res/values-nb/strings.xml
+++ b/java/com/android/dialer/notification/res/values-nb/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pågående samtaler"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Tapte anrop"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Talepost"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Eksterne anrop"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ne/strings.xml b/java/com/android/dialer/notification/res/values-ne/strings.xml
index 8ccd299..e653bb3 100644
--- a/java/com/android/dialer/notification/res/values-ne/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ne/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"जारी रहेका कलहरू"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"छुटेका कलहरू"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"भ्वाइस मेलहरू"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"बाह्य कलहरू"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"पूर्वनिर्धारित मान"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-nl/strings.xml b/java/com/android/dialer/notification/res/values-nl/strings.xml
index e46dd19..094cc35 100644
--- a/java/com/android/dialer/notification/res/values-nl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-nl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Actieve oproepen"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Gemiste oproepen"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Voicemails"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externe oproepen"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standaard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-no/strings.xml b/java/com/android/dialer/notification/res/values-no/strings.xml
index e4ccd48..8e63fd2 100644
--- a/java/com/android/dialer/notification/res/values-no/strings.xml
+++ b/java/com/android/dialer/notification/res/values-no/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pågående samtaler"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Tapte anrop"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Talepost"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Eksterne anrop"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pa/strings.xml b/java/com/android/dialer/notification/res/values-pa/strings.xml
index 40709c1..c4ee97b 100644
--- a/java/com/android/dialer/notification/res/values-pa/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pa/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ਆਊਟਗੋਇੰਗ ਕਾਲਾਂ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ਖੁੰਝੀਆਂ ਕਾਲਾਂ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ਵੌਇਸਮੇਲਾਂ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ਬਾਹਰੀ ਕਾਲਾਂ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ਪੂਰਵ-ਨਿਰਧਾਰਤ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pl/strings.xml b/java/com/android/dialer/notification/res/values-pl/strings.xml
index 73b795c..4b33460 100644
--- a/java/com/android/dialer/notification/res/values-pl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Połączenia trwające"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Połączenia nieodebrane"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Wiadomości głosowe"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Połączenia zewnętrzne"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Domyślny"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pt-rBR/strings.xml b/java/com/android/dialer/notification/res/values-pt-rBR/strings.xml
index f6e41cb..4b988c3 100644
--- a/java/com/android/dialer/notification/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pt-rBR/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chamadas em andamento"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Correios de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Padrão"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pt-rPT/strings.xml b/java/com/android/dialer/notification/res/values-pt-rPT/strings.xml
index ec42a5b..45b31eb 100644
--- a/java/com/android/dialer/notification/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pt-rPT/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chamadas efetuadas"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chamadas não atendidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mensagens de correio de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predefinição"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pt/strings.xml b/java/com/android/dialer/notification/res/values-pt/strings.xml
index f6e41cb..4b988c3 100644
--- a/java/com/android/dialer/notification/res/values-pt/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pt/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chamadas em andamento"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Correios de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Padrão"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ro/strings.xml b/java/com/android/dialer/notification/res/values-ro/strings.xml
index 7deeabb..040c58a 100644
--- a/java/com/android/dialer/notification/res/values-ro/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ro/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Apeluri în desfășurare"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Apeluri nepreluate"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mesaje vocale"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Apeluri externe"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Prestabilit"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ru/strings.xml b/java/com/android/dialer/notification/res/values-ru/strings.xml
index 3a11404..a811799 100644
--- a/java/com/android/dialer/notification/res/values-ru/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ru/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Текущие вызовы"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропущенные вызовы"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Голосовые сообщения"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Внешние вызовы"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"По умолчанию"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-si/strings.xml b/java/com/android/dialer/notification/res/values-si/strings.xml
index bf0a5a7..3ad0af7 100644
--- a/java/com/android/dialer/notification/res/values-si/strings.xml
+++ b/java/com/android/dialer/notification/res/values-si/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"යන ඇමතුම්"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"මඟ හැරුණු ඇමතුම්"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"හඬ තැපැල්"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"බාහිර ඇමතුම්"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"පෙරනිමි"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sk/strings.xml b/java/com/android/dialer/notification/res/values-sk/strings.xml
index 4a67e60..30941bc 100644
--- a/java/com/android/dialer/notification/res/values-sk/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sk/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Prebiehajúce hovory"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Zmeškané hovory"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Hlasové správy"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externé hovory"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predvolené"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sl/strings.xml b/java/com/android/dialer/notification/res/values-sl/strings.xml
index e54111d..70474b8 100644
--- a/java/com/android/dialer/notification/res/values-sl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Aktivni klici"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Neodgovorjeni klici"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Sporočila v odzivniku"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Zunanji klici"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Privzeto"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sq/strings.xml b/java/com/android/dialer/notification/res/values-sq/strings.xml
index 42d4daa..03bc247 100644
--- a/java/com/android/dialer/notification/res/values-sq/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sq/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Telefonatat në vazhdim"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Telefonatat e humbura"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Postat zanore"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Telefonatat e jashtme"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"I parazgjedhur"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sr/strings.xml b/java/com/android/dialer/notification/res/values-sr/strings.xml
index 1047717..8326c04 100644
--- a/java/com/android/dialer/notification/res/values-sr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Позиви у току"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропуштени позиви"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Говорне поруке"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Спољни позиви"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Подразумевано"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sv/strings.xml b/java/com/android/dialer/notification/res/values-sv/strings.xml
index 6c9ff83..e3170d4 100644
--- a/java/com/android/dialer/notification/res/values-sv/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sv/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pågående samtal"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Missade samtal"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Röstmeddelanden"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externa samtal"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sw/strings.xml b/java/com/android/dialer/notification/res/values-sw/strings.xml
index a493f88..d0a65b0 100644
--- a/java/com/android/dialer/notification/res/values-sw/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sw/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Simu zinazoendelea"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Simu ambazo hukujibu"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Ujumbe wa sauti"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Simu za nje"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Chaguo-msingi"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ta/strings.xml b/java/com/android/dialer/notification/res/values-ta/strings.xml
index d3000cf..8a6ae89 100644
--- a/java/com/android/dialer/notification/res/values-ta/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ta/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"செயலில் உள்ள அழைப்புகள்"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"தவறிய அழைப்புகள்"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"குரலஞ்சல்கள்"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"வெளி அழைப்புகள்"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"இயல்பு"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-te/strings.xml b/java/com/android/dialer/notification/res/values-te/strings.xml
index b14b210..b1911d3 100644
--- a/java/com/android/dialer/notification/res/values-te/strings.xml
+++ b/java/com/android/dialer/notification/res/values-te/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"కొనసాగుతున్న కాల్‌లు"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"సమాధానమివ్వని కాల్‌లు"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"వాయిస్ మెయిల్‌లు"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"బాహ్య కాల్‌లు"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"డిఫాల్ట్"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-th/strings.xml b/java/com/android/dialer/notification/res/values-th/strings.xml
index 45248bb..b2949e4 100644
--- a/java/com/android/dialer/notification/res/values-th/strings.xml
+++ b/java/com/android/dialer/notification/res/values-th/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"สายที่สนทนาอยู่"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"สายที่ไม่ได้รับ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ข้อความเสียง"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"สายนอก"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ค่าเริ่มต้น"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-tl/strings.xml b/java/com/android/dialer/notification/res/values-tl/strings.xml
index 3e88a05..1219ad8 100644
--- a/java/com/android/dialer/notification/res/values-tl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-tl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Mga kasalukuyang tawag"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Mga hindi nasagot na tawag"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mga voicemail"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Mga external na tawag"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-tr/strings.xml b/java/com/android/dialer/notification/res/values-tr/strings.xml
index d4e063b..71c91c8 100644
--- a/java/com/android/dialer/notification/res/values-tr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-tr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Devam eden çağrılar"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Cevapsız çağrılar"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Sesli mesajlar"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Harici çağrılar"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Varsayılan"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-uk/strings.xml b/java/com/android/dialer/notification/res/values-uk/strings.xml
index a83a584..a002f42 100644
--- a/java/com/android/dialer/notification/res/values-uk/strings.xml
+++ b/java/com/android/dialer/notification/res/values-uk/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Поточні виклики"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропущені виклики"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Голосова пошта"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Зовнішні виклики"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"За умовчанням"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ur/strings.xml b/java/com/android/dialer/notification/res/values-ur/strings.xml
index ba6e0d1..805fe08 100644
--- a/java/com/android/dialer/notification/res/values-ur/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ur/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"جاری کالیں"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"چھوٹی ہوئی کالیں"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"صوتی میلز"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"بیرونی کالیں"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ڈیفالٹ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-uz/strings.xml b/java/com/android/dialer/notification/res/values-uz/strings.xml
index d45ff47..16075b0 100644
--- a/java/com/android/dialer/notification/res/values-uz/strings.xml
+++ b/java/com/android/dialer/notification/res/values-uz/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Davom etayotgan suhbatlar"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Javobsiz chaqiruvlar"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Ovozli xabarlar"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Tashqi chaqiruvlar"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standart"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-vi/strings.xml b/java/com/android/dialer/notification/res/values-vi/strings.xml
index 6df8872..b6ab3d2 100644
--- a/java/com/android/dialer/notification/res/values-vi/strings.xml
+++ b/java/com/android/dialer/notification/res/values-vi/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Cuộc gọi đến"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Cuộc gọi nhỡ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Thư thoại"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Cuộc gọi bên ngoài"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Mặc định"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-zh-rCN/strings.xml b/java/com/android/dialer/notification/res/values-zh-rCN/strings.xml
index fa5f0a6..1ef46c2 100644
--- a/java/com/android/dialer/notification/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/notification/res/values-zh-rCN/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"正在进行的通话"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"未接电话"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"语音邮件"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"外部来电"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"默认"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-zh-rHK/strings.xml b/java/com/android/dialer/notification/res/values-zh-rHK/strings.xml
index 307a7f9..43a6fab 100644
--- a/java/com/android/dialer/notification/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/notification/res/values-zh-rHK/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"進行中的通話"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"未接來電"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"留言信箱"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"外部通話"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"預設"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-zh-rTW/strings.xml b/java/com/android/dialer/notification/res/values-zh-rTW/strings.xml
index 054a2d7..35236be 100644
--- a/java/com/android/dialer/notification/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/notification/res/values-zh-rTW/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"進行中的通話"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"未接來電"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"語音留言"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"外部通話"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"預設"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-zu/strings.xml b/java/com/android/dialer/notification/res/values-zu/strings.xml
index 744ffc8..f3d9553 100644
--- a/java/com/android/dialer/notification/res/values-zu/strings.xml
+++ b/java/com/android/dialer/notification/res/values-zu/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Amakholi aqhubekayo"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Amakholi akuphuthile"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Amavoyisimeyili"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Amakholi angaphandle"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Okuzenzakalelayo"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values/ids.xml b/java/com/android/dialer/notification/res/values/ids.xml
deleted file mode 100644
index c965f31..0000000
--- a/java/com/android/dialer/notification/res/values/ids.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 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
-  -->
-
-<resources>
-  <item name="notification_ongoing_call" type="id"/>
-  <item name="notification_missed_call" type="id"/>
-  <item name="notification_visual_voicemail" type="id"/>
-  <item name="notification_legacy_voicemail" type="id"/>
-  <item name="notification_external_call" type="id"/>
-  <item name="notification_call_blocking_disabled_by_emergency_call" type="id"/>
-  <item name="notification_spam_call" type="id"/>
-  <item name="notification_feedback" type="id"/>
-</resources>
diff --git a/java/com/android/dialer/notification/res/values/strings.xml b/java/com/android/dialer/notification/res/values/strings.xml
index cb3119f..a3c6935 100644
--- a/java/com/android/dialer/notification/res/values/strings.xml
+++ b/java/com/android/dialer/notification/res/values/strings.xml
@@ -20,7 +20,6 @@
   <string name="notification_channel_ongoing_call">Ongoing calls</string>
   <string name="notification_channel_missed_call">Missed calls</string>
   <string name="notification_channel_voicemail">Voicemails</string>
-  <string name="notification_channel_external_call">External calls</string>
   <!-- [CHAR LIMIT=NONE] Catch-all channel for notifications that don't fit into one of the others -->
   <string name="notification_channel_misc">Default</string>
 </resources>
diff --git a/java/com/android/dialer/oem/CequintCallerIdManager.java b/java/com/android/dialer/oem/CequintCallerIdManager.java
index 095ee4e..86097c4 100644
--- a/java/com/android/dialer/oem/CequintCallerIdManager.java
+++ b/java/com/android/dialer/oem/CequintCallerIdManager.java
@@ -18,7 +18,6 @@
 import android.annotation.TargetApi;
 import android.content.Context;
 import android.content.pm.PackageManager;
-import android.database.ContentObserver;
 import android.database.Cursor;
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
@@ -29,9 +28,8 @@
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import java.util.concurrent.ConcurrentHashMap;
 
 /**
@@ -73,17 +71,12 @@
   private static final String IMAGE = "cid_pLogo";
   private static final String DISPLAY_NAME = "cid_pDisplayName";
 
-  // TODO: Revisit it and maybe remove it if it's not necessary.
-  private static final ConcurrentHashMap<String, CequintCallerIdContact> callLogCache =
-      new ConcurrentHashMap<>();
-  private static final ConcurrentHashMap<String, CequintCallerIdContact> incallIncomingCallCache =
-      new ConcurrentHashMap<>();
-  private static final ConcurrentHashMap<String, CequintCallerIdContact> incallOutgoingCallCache =
-      new ConcurrentHashMap<>();
-  private static boolean hasRegisteredContentObserver;
   private static boolean hasAlreadyCheckedCequintCallerIdPackage;
   private static boolean isCequintCallerIdEnabled;
 
+  // TODO: Revisit it and maybe remove it if it's not necessary.
+  private final ConcurrentHashMap<String, CequintCallerIdContact> callLogCache;
+
   /** Cequint caller id contact information. */
   public static class CequintCallerIdContact {
     public final String name;
@@ -117,9 +110,35 @@
     return isCequintCallerIdEnabled;
   }
 
+  public static CequintCallerIdManager createInstanceForCallLog() {
+    return new CequintCallerIdManager();
+  }
+
   @WorkerThread
   @Nullable
-  public static CequintCallerIdContact getCequintCallerIdContact(Context context, String number) {
+  public static CequintCallerIdContact getCequintCallerIdContactForInCall(
+      Context context, String number, String cnapName, boolean isIncoming) {
+    Assert.isWorkerThread();
+    LogUtil.d(
+        "CequintCallerIdManager.getCequintCallerIdContactForInCall",
+        "number: %s, cnapName: %s, isIncoming: %b",
+        LogUtil.sanitizePhoneNumber(number),
+        LogUtil.sanitizePii(cnapName),
+        isIncoming);
+    int flag = 0;
+    if (isIncoming) {
+      flag |= CALLER_ID_LOOKUP_INCOMING_CALL;
+      flag |= CALLER_ID_LOOKUP_SYSTEM_PROVIDED_CID;
+    } else {
+      flag |= CALLER_ID_LOOKUP_USER_PROVIDED_CID;
+    }
+    String[] flags = {cnapName, String.valueOf(flag)};
+    return lookup(context, CONTENT_URI_FOR_INCALL, number, flags);
+  }
+
+  @WorkerThread
+  @Nullable
+  public CequintCallerIdContact getCequintCallerIdContact(Context context, String number) {
     Assert.isWorkerThread();
     LogUtil.d(
         "CequintCallerIdManager.getCequintCallerIdContact",
@@ -142,43 +161,6 @@
 
   @WorkerThread
   @Nullable
-  public static CequintCallerIdContact getCequintCallerIdContactForInCall(
-      Context context, String number, String cnapName, boolean isIncoming) {
-    Assert.isWorkerThread();
-    LogUtil.d(
-        "CequintCallerIdManager.getCequintCallerIdContactForInCall",
-        "number: %s, cnapName: %s, isIncoming: %b",
-        LogUtil.sanitizePhoneNumber(number),
-        LogUtil.sanitizePii(cnapName),
-        isIncoming);
-    registerContentObserver(context);
-    if (isIncoming && incallIncomingCallCache.containsKey(number)) {
-      return incallIncomingCallCache.get(number);
-    } else if (!isIncoming && incallOutgoingCallCache.containsKey(number)) {
-      return incallOutgoingCallCache.get(number);
-    }
-    int flag = 0;
-    if (isIncoming) {
-      flag |= CALLER_ID_LOOKUP_INCOMING_CALL;
-      flag |= CALLER_ID_LOOKUP_SYSTEM_PROVIDED_CID;
-    } else {
-      flag |= CALLER_ID_LOOKUP_USER_PROVIDED_CID;
-    }
-    String[] flags = {cnapName, String.valueOf(flag)};
-    CequintCallerIdContact cequintCallerIdContact =
-        lookup(context, CONTENT_URI_FOR_INCALL, number, flags);
-    if (cequintCallerIdContact != null) {
-      if (isIncoming) {
-        incallIncomingCallCache.put(number, cequintCallerIdContact);
-      } else {
-        incallOutgoingCallCache.put(number, cequintCallerIdContact);
-      }
-    }
-    return cequintCallerIdContact;
-  }
-
-  @WorkerThread
-  @Nullable
   private static CequintCallerIdContact lookup(
       Context context, Uri uri, @NonNull String number, String[] flags) {
     Assert.isWorkerThread();
@@ -285,33 +267,7 @@
     return geoDescription;
   }
 
-  private static synchronized void registerContentObserver(Context context) {
-    if (!PermissionsUtil.hasCequintPermissions(context)) {
-      LogUtil.i("CequintCallerIdManager.registerContentObserver", "no cequint permissions");
-      return;
-    }
-
-    if (hasRegisteredContentObserver) {
-      return;
-    }
-    ContentObserver contentObserver =
-        new ContentObserver(null) {
-          @Override
-          public void onChange(boolean selfChange) {
-            invalidateCache();
-          }
-        };
-
-    context
-        .getContentResolver()
-        .registerContentObserver(CONTENT_URI_FOR_INCALL, true, contentObserver);
-    hasRegisteredContentObserver = true;
+  private CequintCallerIdManager() {
+    callLogCache = new ConcurrentHashMap<>();
   }
-
-  private static void invalidateCache() {
-    incallIncomingCallCache.clear();
-    incallOutgoingCallCache.clear();
-  }
-
-  private CequintCallerIdManager() {}
 }
diff --git a/java/com/android/dialer/oem/MotorolaHiddenMenuKeySequence.java b/java/com/android/dialer/oem/MotorolaHiddenMenuKeySequence.java
index 9cf145b..79abff0 100644
--- a/java/com/android/dialer/oem/MotorolaHiddenMenuKeySequence.java
+++ b/java/com/android/dialer/oem/MotorolaHiddenMenuKeySequence.java
@@ -67,9 +67,7 @@
   }
 
   private MotorolaHiddenMenuKeySequence(Context context) {
-    featureHiddenMenuEnabled =
-        MotorolaUtils.isSpnMatched(context)
-            && context.getResources().getBoolean(R.bool.motorola_feature_hidden_menu);
+    featureHiddenMenuEnabled = MotorolaUtils.isSupportingHiddenMenu(context);
     // In case we do have a SPN from resource we need to match from service; otherwise we are
     // free to go
     if (featureHiddenMenuEnabled) {
diff --git a/java/com/android/dialer/oem/MotorolaUtils.java b/java/com/android/dialer/oem/MotorolaUtils.java
index db2b890..ffab8ea 100644
--- a/java/com/android/dialer/oem/MotorolaUtils.java
+++ b/java/com/android/dialer/oem/MotorolaUtils.java
@@ -18,8 +18,11 @@
 import android.content.Context;
 import android.content.res.Resources;
 import android.telephony.TelephonyManager;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.PackageUtils;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
 
 /** Util class for Motorola OEM devices. */
 public class MotorolaUtils {
@@ -39,6 +42,8 @@
   // This is used to check if a Motorola device supports WiFi call feature, by checking if a certain
   // package is enabled.
   private static final String WIFI_CALL_PACKAGE_NAME = "com.motorola.sprintwfc";
+  // Thi is used to check if a Motorola device supports hidden menu feature.
+  private static final String HIDDEN_MENU_FEATURE = "com.motorola.software.sprint.hidden_menu";
 
   // Feature flag indicates it's a HD call, currently this is only used by Motorola system build.
   // TODO(b/35359461): Use reference to android.provider.CallLog once it's in new SDK.
@@ -64,6 +69,10 @@
     }
   }
 
+  static boolean isSupportingHiddenMenu(Context context) {
+    return context.getPackageManager().hasSystemFeature(HIDDEN_MENU_FEATURE);
+  }
+
   public static boolean shouldBlinkHdIconWhenConnectingCall(Context context) {
     return ConfigProviderBindings.get(context)
             .getBoolean(CONFIG_HD_CODEC_BLINKING_ICON_WHEN_CONNECTING_CALL_ENABLED, true)
@@ -102,6 +111,22 @@
     return MotorolaHiddenMenuKeySequence.handleCharSequence(context, input);
   }
 
+  public static boolean isWifiCallingAvailable(Context context) {
+    if (!isSupportingSprintWifiCall(context)) {
+      return false;
+    }
+    TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
+    try {
+      Method method = TelephonyManager.class.getMethod("isWifiCallingAvailable");
+      boolean isWifiCallingAvailable = (boolean) method.invoke(telephonyManager);
+      LogUtil.d("MotorolaUtils.isWifiCallingAvailable", "%b", isWifiCallingAvailable);
+      return isWifiCallingAvailable;
+    } catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException e) {
+      LogUtil.e("MotorolaUtils.isWifiCallingAvailable", "", e);
+    }
+    return false;
+  }
+
   private static boolean isSupportingSprintHdCodec(Context context) {
     return isSpnMatched(context)
         && context.getResources().getBoolean(R.bool.motorola_sprint_hd_codec)
diff --git a/java/com/android/dialer/oem/res/values-mcc310-mnc000/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc310-mnc000/motorola_config.xml
index 7f63bee..ac33975 100644
--- a/java/com/android/dialer/oem/res/values-mcc310-mnc000/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc310-mnc000/motorola_config.xml
@@ -1,6 +1,21 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
   <string name="motorola_enabled_spn">Sprint</string>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc310-mnc120/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc310-mnc120/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc310-mnc120/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc310-mnc120/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc311-mnc490/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc311-mnc490/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc311-mnc490/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc311-mnc490/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc311-mnc870/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc311-mnc870/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc311-mnc870/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc311-mnc870/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc312-mnc530/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc312-mnc530/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc312-mnc530/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc312-mnc530/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc316-mnc010/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc316-mnc010/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc316-mnc010/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc316-mnc010/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values/motorola_config.xml b/java/com/android/dialer/oem/res/values/motorola_config.xml
index f875d57..46e7a16 100644
--- a/java/com/android/dialer/oem/res/values/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values/motorola_config.xml
@@ -1,12 +1,25 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
 <resources>
   <!-- Flag to control if HD codec is supported by Sprint. -->
   <bool name="motorola_sprint_hd_codec">false</bool>
 
   <!-- Hidden menu configuration for Motorola. -->
-  <!-- Flag to control if the Hidden Menu sequence will be supported by Sprint. -->
-  <bool name="motorola_feature_hidden_menu">false</bool>
-
   <!-- This defines the specific key seuquence that will be catched in the SpecialCharSequenceMgr
        such as, ##OMADM# -->
   <string-array name="motorola_hidden_menu_key_sequence">
diff --git a/java/com/android/dialer/p13n/inference/P13nRanking.java b/java/com/android/dialer/p13n/inference/P13nRanking.java
index 0682e85..79b4d71 100644
--- a/java/com/android/dialer/p13n/inference/P13nRanking.java
+++ b/java/com/android/dialer/p13n/inference/P13nRanking.java
@@ -22,7 +22,7 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.p13n.inference.protocol.P13nRanker;
 import com.android.dialer.p13n.inference.protocol.P13nRankerFactory;
 import java.util.List;
diff --git a/java/com/android/dialer/performancereport/PerformanceReport.java b/java/com/android/dialer/performancereport/PerformanceReport.java
new file mode 100644
index 0000000..4359c01
--- /dev/null
+++ b/java/com/android/dialer/performancereport/PerformanceReport.java
@@ -0,0 +1,160 @@
+/*
+ * Copyright (C) 2017 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.dialer.performancereport;
+
+import android.os.SystemClock;
+import android.support.annotation.Nullable;
+import android.support.v7.widget.RecyclerView;
+import android.widget.AbsListView;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.UiAction;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+
+/** Tracks UI performance for a call. */
+public final class PerformanceReport {
+
+  private static final long INVALID_TIME = -1;
+  private static final long ACTIVE_DURATION = TimeUnit.MINUTES.toMillis(5);
+
+  private static final List<UiAction.Type> actions = new ArrayList<>();
+  private static final List<Long> actionTimestamps = new ArrayList<>();
+
+  private static final RecyclerView.OnScrollListener recordOnScrollListener =
+      new RecyclerView.OnScrollListener() {
+        @Override
+        public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
+          if (newState == RecyclerView.SCROLL_STATE_SETTLING) {
+            PerformanceReport.recordClick(UiAction.Type.SCROLL);
+          }
+          super.onScrollStateChanged(recyclerView, newState);
+        }
+      };
+
+  private static boolean recording = false;
+  private static long appLaunchTimeMillis = INVALID_TIME;
+  private static long firstClickTimeMillis = INVALID_TIME;
+  private static long lastActionTimeMillis = INVALID_TIME;
+
+  @Nullable private static UiAction.Type ignoreActionOnce = null;
+
+  private static int startingTabIndex = -1; // UNKNOWN
+
+  private PerformanceReport() {}
+
+  public static void startRecording() {
+    LogUtil.enterBlock("PerformanceReport.startRecording");
+
+    appLaunchTimeMillis = SystemClock.elapsedRealtime();
+    lastActionTimeMillis = appLaunchTimeMillis;
+    if (!actions.isEmpty()) {
+      actions.clear();
+      actionTimestamps.clear();
+    }
+    recording = true;
+  }
+
+  public static void stopRecording() {
+    LogUtil.enterBlock("PerformanceReport.stopRecording");
+    recording = false;
+  }
+
+  public static void recordClick(UiAction.Type action) {
+    if (!recording) {
+      return;
+    }
+
+    if (action == ignoreActionOnce) {
+      LogUtil.i("PerformanceReport.recordClick", "%s is ignored", action.toString());
+      ignoreActionOnce = null;
+      return;
+    }
+    ignoreActionOnce = null;
+
+    LogUtil.v("PerformanceReport.recordClick", action.toString());
+
+    // Timeout
+    long currentTime = SystemClock.elapsedRealtime();
+    if (currentTime - lastActionTimeMillis > ACTIVE_DURATION) {
+      startRecording();
+      recordClick(action);
+      return;
+    }
+
+    lastActionTimeMillis = currentTime;
+    if (actions.isEmpty()) {
+      firstClickTimeMillis = currentTime;
+    }
+    actions.add(action);
+    actionTimestamps.add(currentTime - appLaunchTimeMillis);
+  }
+
+  public static void recordScrollStateChange(int scrollState) {
+    if (scrollState == AbsListView.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) {
+      recordClick(UiAction.Type.SCROLL);
+    }
+  }
+
+  public static void logOnScrollStateChange(RecyclerView recyclerView) {
+    // Remove the listener in case it was added before
+    recyclerView.removeOnScrollListener(recordOnScrollListener);
+    recyclerView.addOnScrollListener(recordOnScrollListener);
+  }
+
+  public static boolean isRecording() {
+    return recording;
+  }
+
+  public static long getTimeSinceAppLaunch() {
+    if (appLaunchTimeMillis == INVALID_TIME) {
+      return INVALID_TIME;
+    }
+    return SystemClock.elapsedRealtime() - appLaunchTimeMillis;
+  }
+
+  public static long getTimeSinceFirstClick() {
+    if (firstClickTimeMillis == INVALID_TIME) {
+      return INVALID_TIME;
+    }
+    return SystemClock.elapsedRealtime() - firstClickTimeMillis;
+  }
+
+  public static List<UiAction.Type> getActions() {
+    return actions;
+  }
+
+  public static List<Long> getActionTimestamps() {
+    return actionTimestamps;
+  }
+
+  public static int getStartingTabIndex() {
+    return startingTabIndex;
+  }
+
+  public static void setStartingTabIndex(int startingTabIndex) {
+    PerformanceReport.startingTabIndex = startingTabIndex;
+  }
+
+  public static void setIgnoreActionOnce(@Nullable UiAction.Type ignoreActionOnce) {
+    PerformanceReport.ignoreActionOnce = ignoreActionOnce;
+    LogUtil.i(
+        "PerformanceReport.setIgnoreActionOnce",
+        "next action will be ignored once if it is %s",
+        ignoreActionOnce.toString());
+  }
+}
diff --git a/java/com/android/dialer/phonenumbercache/CachedNumberLookupService.java b/java/com/android/dialer/phonenumbercache/CachedNumberLookupService.java
index 2aed9e7..c398251 100644
--- a/java/com/android/dialer/phonenumbercache/CachedNumberLookupService.java
+++ b/java/com/android/dialer/phonenumbercache/CachedNumberLookupService.java
@@ -49,6 +49,8 @@
 
   boolean canReportAsInvalid(ContactSource.Type sourceType, String objectId);
 
+  boolean reportAsInvalid(Context context, CachedContactInfo cachedContactInfo);
+
   /** @return return {@link Uri} to the photo or return {@code null} when failing to add photo */
   @Nullable
   Uri addPhoto(Context context, String number, InputStream in);
diff --git a/java/com/android/dialer/phonenumbercache/ContactInfo.java b/java/com/android/dialer/phonenumbercache/ContactInfo.java
index 5546553..aef7374 100644
--- a/java/com/android/dialer/phonenumbercache/ContactInfo.java
+++ b/java/com/android/dialer/phonenumbercache/ContactInfo.java
@@ -17,7 +17,7 @@
 package com.android.dialer.phonenumbercache;
 
 import android.net.Uri;
-import android.support.annotation.Nullable;
+import android.support.annotation.NonNull;
 import android.text.TextUtils;
 import com.android.contacts.common.ContactsUtils.UserType;
 import com.android.contacts.common.util.UriUtils;
@@ -59,7 +59,7 @@
   public boolean isBadData;
   public String objectId;
   public @UserType long userType;
-  public @Nullable ContactSource.Type sourceType = ContactSource.Type.UNKNOWN_SOURCE_TYPE;
+  public @NonNull ContactSource.Type sourceType = ContactSource.Type.UNKNOWN_SOURCE_TYPE;
   /**
    * True if local contact exists. This is only used for Cequint Caller ID so it won't overwrite
    * photo if local contact exists.
diff --git a/java/com/android/dialer/phonenumbercache/ContactInfoHelper.java b/java/com/android/dialer/phonenumbercache/ContactInfoHelper.java
index bd4ba97..4fa3147 100644
--- a/java/com/android/dialer/phonenumbercache/ContactInfoHelper.java
+++ b/java/com/android/dialer/phonenumbercache/ContactInfoHelper.java
@@ -203,6 +203,7 @@
     return info;
   }
 
+  @Nullable
   public ContactInfo lookupNumber(String number, String countryIso) {
     return lookupNumber(number, countryIso, -1);
   }
@@ -223,12 +224,14 @@
   @SuppressWarnings("ReferenceEquality")
   public ContactInfo lookupNumber(String number, String countryIso, long directoryId) {
     if (TextUtils.isEmpty(number)) {
+      LogUtil.d("ContactInfoHelper.lookupNumber", "number is empty");
       return null;
     }
 
     ContactInfo info;
 
     if (PhoneNumberHelper.isUriNumber(number)) {
+      LogUtil.d("ContactInfoHelper.lookupNumber", "number is sip");
       // The number is a SIP address..
       info = lookupContactFromUri(getContactInfoLookupUri(number, directoryId));
       if (info == null || info == ContactInfo.EMPTY) {
@@ -246,6 +249,7 @@
     final ContactInfo updatedInfo;
     if (info == null) {
       // The lookup failed.
+      LogUtil.d("ContactInfoHelper.lookupNumber", "lookup failed");
       updatedInfo = null;
     } else {
       // If we did not find a matching contact, generate an empty contact info for the number.
@@ -325,9 +329,11 @@
    */
   ContactInfo lookupContactFromUri(Uri uri) {
     if (uri == null) {
+      LogUtil.d("ContactInfoHelper.lookupContactFromUri", "uri is null");
       return null;
     }
     if (!PermissionsUtil.hasContactsReadPermissions(mContext)) {
+      LogUtil.d("ContactInfoHelper.lookupContactFromUri", "no contact permission, return empty");
       return ContactInfo.EMPTY;
     }
 
@@ -336,10 +342,12 @@
       String[] projection = PhoneQuery.getPhoneLookupProjection(uri);
       phoneLookupCursor = mContext.getContentResolver().query(uri, projection, null, null, null);
     } catch (NullPointerException e) {
+      LogUtil.e("ContactInfoHelper.lookupContactFromUri", "phone lookup", e);
       // Trap NPE from pre-N CP2
       return null;
     }
     if (phoneLookupCursor == null) {
+      LogUtil.d("ContactInfoHelper.lookupContactFromUri", "phoneLookupCursor is null");
       return null;
     }
 
@@ -408,19 +416,32 @@
   private ContactInfo queryContactInfoForPhoneNumber(
       String number, String countryIso, long directoryId) {
     if (TextUtils.isEmpty(number)) {
+      LogUtil.d("ContactInfoHelper.queryContactInfoForPhoneNumber", "number is empty");
       return null;
     }
 
     ContactInfo info = lookupContactFromUri(getContactInfoLookupUri(number, directoryId));
+    if (info == null) {
+      LogUtil.d("ContactInfoHelper.queryContactInfoForPhoneNumber", "info looked up is null");
+    }
     if (info != null && info != ContactInfo.EMPTY) {
       info.formattedNumber = formatPhoneNumber(number, null, countryIso);
+      if (directoryId == -1) {
+        // Contact found in the default directory
+        info.sourceType = ContactSource.Type.SOURCE_TYPE_DIRECTORY;
+      } else {
+        // Contact found in the extended directory specified by directoryId
+        info.sourceType = ContactSource.Type.SOURCE_TYPE_EXTENDED;
+      }
     } else if (mCachedNumberLookupService != null) {
       CachedContactInfo cacheInfo =
           mCachedNumberLookupService.lookupCachedContactFromNumber(mContext, number);
       if (cacheInfo != null) {
-        info = cacheInfo.getContactInfo().isBadData ? null : cacheInfo.getContactInfo();
-      } else {
-        info = null;
+        if (!cacheInfo.getContactInfo().isBadData) {
+          info = cacheInfo.getContactInfo();
+        } else {
+          LogUtil.i("ContactInfoHelper.queryContactInfoForPhoneNumber", "info is bad data");
+        }
       }
     }
     return info;
@@ -601,13 +622,17 @@
    * will be updated if available.
    */
   @WorkerThread
-  public void updateFromCequintCallerId(ContactInfo info, String number) {
+  public void updateFromCequintCallerId(
+      @Nullable CequintCallerIdManager cequintCallerIdManager, ContactInfo info, String number) {
     Assert.isWorkerThread();
     if (!CequintCallerIdManager.isCequintCallerIdEnabled(mContext)) {
       return;
     }
+    if (cequintCallerIdManager == null) {
+      return;
+    }
     CequintCallerIdContact cequintCallerIdContact =
-        CequintCallerIdManager.getCequintCallerIdContact(mContext, number);
+        cequintCallerIdManager.getCequintCallerIdContact(mContext, number);
     if (cequintCallerIdContact == null) {
       return;
     }
diff --git a/java/com/android/dialer/phonenumberproto/Converter.java b/java/com/android/dialer/phonenumberproto/Converter.java
new file mode 100644
index 0000000..453b988
--- /dev/null
+++ b/java/com/android/dialer/phonenumberproto/Converter.java
@@ -0,0 +1,120 @@
+/*
+ * Copyright (C) 2017 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.dialer.phonenumberproto;
+
+import com.android.dialer.DialerInternalPhoneNumber;
+import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
+
+/**
+ * Methods for converting from {@link PhoneNumber} POJOs to {@link DialerInternalPhoneNumber} protos
+ * and back.
+ */
+class Converter {
+
+  static DialerInternalPhoneNumber pojoToProto(PhoneNumber pojo) {
+    DialerInternalPhoneNumber.Builder proto = DialerInternalPhoneNumber.newBuilder();
+    if (pojo.hasCountryCode()) {
+      proto.setCountryCode(pojo.getCountryCode());
+    }
+    if (pojo.hasCountryCodeSource()) {
+      switch (pojo.getCountryCodeSource()) {
+        case FROM_NUMBER_WITH_PLUS_SIGN:
+          proto.setCountryCodeSource(
+              DialerInternalPhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN);
+          break;
+        case FROM_NUMBER_WITH_IDD:
+          proto.setCountryCodeSource(
+              DialerInternalPhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD);
+          break;
+        case FROM_NUMBER_WITHOUT_PLUS_SIGN:
+          proto.setCountryCodeSource(
+              DialerInternalPhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN);
+          break;
+        case FROM_DEFAULT_COUNTRY:
+          proto.setCountryCodeSource(
+              DialerInternalPhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY);
+          break;
+        default:
+          throw new IllegalArgumentException(
+              "unsupported country code source: " + pojo.getCountryCodeSource());
+      }
+    }
+    if (pojo.hasExtension()) {
+      proto.setExtension(pojo.getExtension());
+    }
+    if (pojo.hasItalianLeadingZero()) {
+      proto.setItalianLeadingZero(pojo.isItalianLeadingZero());
+    }
+    if (pojo.hasNationalNumber()) {
+      proto.setNationalNumber(pojo.getNationalNumber());
+    }
+    if (pojo.hasNumberOfLeadingZeros()) {
+      proto.setNumberOfLeadingZeros(pojo.getNumberOfLeadingZeros());
+    }
+    if (pojo.hasPreferredDomesticCarrierCode()) {
+      proto.setPreferredDomesticCarrierCode(pojo.getPreferredDomesticCarrierCode());
+    }
+    if (pojo.hasRawInput()) {
+      proto.setRawInput(pojo.getRawInput());
+    }
+    return proto.build();
+  }
+
+  static PhoneNumber protoToPojo(DialerInternalPhoneNumber proto) {
+    PhoneNumber pojo = new PhoneNumber();
+    if (proto.hasCountryCode()) {
+      pojo.setCountryCode(proto.getCountryCode());
+    }
+    if (proto.hasCountryCodeSource()) {
+      switch (proto.getCountryCodeSource()) {
+        case FROM_NUMBER_WITH_PLUS_SIGN:
+          pojo.setCountryCodeSource(PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN);
+          break;
+        case FROM_NUMBER_WITH_IDD:
+          pojo.setCountryCodeSource(PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD);
+          break;
+        case FROM_NUMBER_WITHOUT_PLUS_SIGN:
+          pojo.setCountryCodeSource(PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN);
+          break;
+        case FROM_DEFAULT_COUNTRY:
+          pojo.setCountryCodeSource(PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY);
+          break;
+        default:
+          throw new IllegalArgumentException(
+              "unsupported country code source: " + proto.getCountryCodeSource());
+      }
+    }
+    if (proto.hasExtension()) {
+      pojo.setExtension(proto.getExtension());
+    }
+    if (proto.hasItalianLeadingZero()) {
+      pojo.setItalianLeadingZero(proto.getItalianLeadingZero());
+    }
+    if (proto.hasNationalNumber()) {
+      pojo.setNationalNumber(proto.getNationalNumber());
+    }
+    if (proto.hasNumberOfLeadingZeros()) {
+      pojo.setNumberOfLeadingZeros(proto.getNumberOfLeadingZeros());
+    }
+    if (proto.hasPreferredDomesticCarrierCode()) {
+      pojo.setPreferredDomesticCarrierCode(proto.getPreferredDomesticCarrierCode());
+    }
+    if (proto.hasRawInput()) {
+      pojo.setRawInput(proto.getRawInput());
+    }
+    return pojo;
+  }
+}
diff --git a/java/com/android/dialer/phonenumberproto/DialerPhoneNumberUtil.java b/java/com/android/dialer/phonenumberproto/DialerPhoneNumberUtil.java
new file mode 100644
index 0000000..cc509f4
--- /dev/null
+++ b/java/com/android/dialer/phonenumberproto/DialerPhoneNumberUtil.java
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2017 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.dialer.phonenumberproto;
+
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.annotation.WorkerThread;
+import com.android.dialer.DialerInternalPhoneNumber;
+import com.android.dialer.DialerPhoneNumber;
+import com.android.dialer.DialerPhoneNumber.RawInput;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.google.i18n.phonenumbers.NumberParseException;
+import com.google.i18n.phonenumbers.PhoneNumberUtil;
+import com.google.i18n.phonenumbers.PhoneNumberUtil.MatchType;
+
+/**
+ * Wrapper for selected methods in {@link PhoneNumberUtil} which uses the {@link DialerPhoneNumber}
+ * lite proto instead of the {@link com.google.i18n.phonenumbers.Phonenumber.PhoneNumber} POJO.
+ *
+ * <p>All methods should be called on a worker thread.
+ */
+public class DialerPhoneNumberUtil {
+  private final PhoneNumberUtil phoneNumberUtil;
+
+  @WorkerThread
+  public DialerPhoneNumberUtil(@NonNull PhoneNumberUtil phoneNumberUtil) {
+    Assert.isWorkerThread();
+    this.phoneNumberUtil = Assert.isNotNull(phoneNumberUtil);
+  }
+
+  /**
+   * Parses the provided raw phone number into a {@link DialerPhoneNumber}.
+   *
+   * @see PhoneNumberUtil#parse(String, String)
+   */
+  @WorkerThread
+  public DialerPhoneNumber parse(@Nullable String numberToParse, @Nullable String defaultRegion) {
+    Assert.isWorkerThread();
+
+    DialerPhoneNumber.Builder dialerPhoneNumber = DialerPhoneNumber.newBuilder();
+    RawInput.Builder rawInput = RawInput.newBuilder();
+    // Numbers can be null or empty for incoming "unknown" calls.
+    if (numberToParse != null) {
+      rawInput.setNumber(numberToParse);
+    }
+    if (defaultRegion != null) {
+      rawInput.setCountryIso(defaultRegion);
+    }
+    dialerPhoneNumber.setRawInput(rawInput.build());
+
+    try {
+      dialerPhoneNumber.setDialerInternalPhoneNumber(
+          Converter.pojoToProto(phoneNumberUtil.parse(numberToParse, defaultRegion)));
+    } catch (NumberParseException e) {
+      LogUtil.w("DialerPhoneNumberUtil.parse", "couldn't parse phone number", e);
+    }
+    return dialerPhoneNumber.build();
+  }
+
+  /**
+   * Returns true if the two numbers were parseable by libphonenumber and are an {@link
+   * MatchType#EXACT_MATCH} or if they have the same raw input.
+   */
+  @WorkerThread
+  public boolean isExactMatch(
+      @NonNull DialerPhoneNumber firstNumberIn, @NonNull DialerPhoneNumber secondNumberIn) {
+    Assert.isWorkerThread();
+    if (!Assert.isNotNull(firstNumberIn).hasDialerInternalPhoneNumber()
+        || !Assert.isNotNull(secondNumberIn).hasDialerInternalPhoneNumber()) {
+      return firstNumberIn.getRawInput().equals(secondNumberIn.getRawInput());
+    }
+    return isNumberMatch(
+            firstNumberIn.getDialerInternalPhoneNumber(),
+            secondNumberIn.getDialerInternalPhoneNumber())
+        == MatchType.EXACT_MATCH;
+  }
+
+  /**
+   * Compares the provided phone numbers.
+   *
+   * @see PhoneNumberUtil#isNumberMatch(com.google.i18n.phonenumbers.Phonenumber.PhoneNumber,
+   *     com.google.i18n.phonenumbers.Phonenumber.PhoneNumber)
+   */
+  @WorkerThread
+  private MatchType isNumberMatch(
+      @NonNull DialerInternalPhoneNumber firstNumberIn,
+      @NonNull DialerInternalPhoneNumber secondNumberIn) {
+    Assert.isWorkerThread();
+    return phoneNumberUtil.isNumberMatch(
+        Converter.protoToPojo(Assert.isNotNull(firstNumberIn)),
+        Converter.protoToPojo(Assert.isNotNull(secondNumberIn)));
+  }
+}
diff --git a/java/com/android/dialer/phonenumberproto/dialer_phone_number.proto b/java/com/android/dialer/phonenumberproto/dialer_phone_number.proto
new file mode 100644
index 0000000..97b7519
--- /dev/null
+++ b/java/com/android/dialer/phonenumberproto/dialer_phone_number.proto
@@ -0,0 +1,173 @@
+// Copyright (C) 2017 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
+
+syntax = "proto2";
+
+option java_package = "com.android.dialer";
+option java_multiple_files = true;
+option optimize_for = LITE_RUNTIME;
+
+
+package com.android.dialer;
+
+// A phone number for use in the dialer application. It consists of a
+// DialerInternalPhoneNumber, which is a copy of libphonenumber's PhoneNumber
+// proto, and the raw input used to create it.
+message DialerPhoneNumber {
+  // libphonenumber representation of the phone number. May be empty if the raw
+  // input failed to parse, in which case raw_input should be used.
+  optional DialerInternalPhoneNumber dialer_internal_phone_number = 1;
+
+  // The raw input which was used to create a DialerPhoneNumber.
+  message RawInput {
+    // The phone number as it was entered or received.
+    optional string number = 1;
+    // The ISO 3166-1 two letter country code of the country where the user made
+    // or received the call.
+    optional string country_iso = 2;
+  }
+  // Prefer to use dialer_internal_phone_number if present.
+  optional RawInput raw_input = 2;
+}
+
+// This is a copy of libphonenumber proto file for use in the dialer codebase.
+// We cannot depend on the real libphonenumber proto because it is not exposed
+// in any open source library. As such, this file could fall out of sync with
+// that proto over time.
+//
+// The only difference between this proto and the libphonenumber proto (as of
+// when this file was created) is the package name and proto name.
+//
+// If the libphonenumber proto becomes accessible some day, it may be possible
+// to remove this proto and use the real libphonenumber proto assuming this
+// proto is kept wire-compatible with it.
+message DialerInternalPhoneNumber {
+  // The country calling code for this number, as defined by the International
+  // Telecommunication Union (ITU). For example, this would be 1 for NANPA
+  // countries, and 33 for France.
+  required int32 country_code = 1;
+
+  // The National (significant) Number, as defined in International
+  // Telecommunication Union (ITU) Recommendation E.164, without any leading
+  // zero. The leading-zero is stored separately if required, since this is an
+  // uint64 and hence cannot store such information. Do not use this field
+  // directly: if you want the national significant number, call the
+  // getNationalSignificantNumber method of PhoneNumberUtil.
+  //
+  // For countries which have the concept of an "area code" or "national
+  // destination code", this is included in the National (significant) Number.
+  // Although the ITU says the maximum length should be 15, we have found longer
+  // numbers in some countries e.g. Germany.
+  // Note that the National (significant) Number does not contain the National
+  // (trunk) prefix. Obviously, as a uint64, it will never contain any
+  // formatting (hyphens, spaces, parentheses), nor any alphanumeric spellings.
+  required uint64 national_number = 2 [jstype = JS_NUMBER];
+
+  // Extension is not standardized in ITU recommendations, except for being
+  // defined as a series of numbers with a maximum length of 40 digits. It is
+  // defined as a string here to accommodate for the possible use of a leading
+  // zero in the extension (organizations have complete freedom to do so, as
+  // there is no standard defined). Other than digits, some other dialling
+  // characters such as "," (indicating a wait) may be stored here.
+  optional string extension = 3;
+
+  // In some countries, the national (significant) number starts with one or
+  // more "0"s without this being a national prefix or trunk code of some kind.
+  // For example, the leading zero in the national (significant) number of an
+  // Italian phone number indicates the number is a fixed-line number.  There
+  // have been plans to migrate fixed-line numbers to start with the digit two
+  // since December 2000, but it has not happened yet. See
+  // http://en.wikipedia.org/wiki/%2B39 for more details.
+  //
+  // These fields can be safely ignored (there is no need to set them) for most
+  // countries. Some limited number of countries behave like Italy - for these
+  // cases, if the leading zero(s) of a number would be retained even when
+  // dialling internationally, set this flag to true, and also set the number of
+  // leading zeros.
+  //
+  // Clients who use the parsing or conversion functionality of the i18n phone
+  // number libraries (go/phonenumbers) will have these fields set if necessary
+  // automatically.
+  optional bool italian_leading_zero = 4;
+  optional int32 number_of_leading_zeros = 8 [default = 1];
+
+  // The next few fields are non-essential fields for a phone number. They
+  // retain extra information about the form the phone number was in when it was
+  // provided to us to parse. They can be safely ignored by most clients. To
+  // populate them, call parseAndKeepRawInput on PhoneNumberUtil.
+
+  // This field is used to store the raw input string containing phone numbers
+  // before it was canonicalized by the library. For example, it could be used
+  // to store alphanumerical numbers such as "1-800-GOOG-411".
+  optional string raw_input = 5;
+
+  // The source from which the country_code is derived. This is not set in the
+  // general parsing method, but in the method that parses and keeps raw_input.
+  // New fields could be added upon request.
+  enum CountryCodeSource {
+    // The country_code is derived based on a phone number with a leading "+",
+    // e.g. the French number "+33 1 42 68 53 00".
+    FROM_NUMBER_WITH_PLUS_SIGN = 1;
+
+    // The country_code is derived based on a phone number with a leading IDD,
+    // e.g. the French number "011 33 1 42 68 53 00", as it is dialled from US.
+    FROM_NUMBER_WITH_IDD = 5;
+
+    // The country_code is derived based on a phone number without a leading
+    // "+", e.g. the French number "33 1 42 68 53 00" when defaultCountry is
+    // supplied as France.
+    FROM_NUMBER_WITHOUT_PLUS_SIGN = 10;
+
+    // The country_code is derived NOT based on the phone number itself, but
+    // from the defaultCountry parameter provided in the parsing function by the
+    // clients. This happens mostly for numbers written in the national format
+    // (without country code). For example, this would be set when parsing the
+    // French number "01 42 68 53 00", when defaultCountry is supplied as
+    // France.
+    FROM_DEFAULT_COUNTRY = 20;
+  }
+
+  // The source from which the country_code is derived.
+  optional CountryCodeSource country_code_source = 6;
+
+  // The carrier selection code that is preferred when calling this phone number
+  // domestically. This also includes codes that need to be dialed in some
+  // countries when calling from landlines to mobiles or vice versa. For
+  // example, in Columbia, a "3" needs to be dialed before the phone number
+  // itself when calling from a mobile phone to a domestic landline phone and
+  // vice versa.
+  //
+  // Note this is the "preferred" code, which means other codes may work as
+  // well.
+  optional string preferred_domestic_carrier_code = 7;
+}
+
+// Examples:
+//
+// Google MTV, +1 650-253-0000, (650) 253-0000
+// country_code: 1
+// national_number: 6502530000
+//
+// Google Paris, +33 (0)1 42 68 53 00, 01 42 68 53 00
+// country_code: 33
+// national_number: 142685300
+//
+// Google Beijing, +86-10-62503000, (010) 62503000
+// country_code: 86
+// national_number: 1062503000
+//
+// Google Italy, +39 02-36618 300, 02-36618 300
+// country_code: 39
+// national_number: 236618300
+// italian_leading_zero: true
diff --git a/java/com/android/dialer/postcall/AndroidManifest.xml b/java/com/android/dialer/postcall/AndroidManifest.xml
index 79ca5d5..22c77dd 100644
--- a/java/com/android/dialer/postcall/AndroidManifest.xml
+++ b/java/com/android/dialer/postcall/AndroidManifest.xml
@@ -21,7 +21,7 @@
     <activity
       android:name="com.android.dialer.postcall.PostCallActivity"
       android:exported="false"
-      android:theme="@style/Theme.AppCompat.NoActionBar"
+      android:theme="@style/DialerThemeBase.NoActionBar"
       android:windowSoftInputMode="adjustResize"
       android:screenOrientation="portrait"/>
   </application>
diff --git a/java/com/android/dialer/postcall/PostCall.java b/java/com/android/dialer/postcall/PostCall.java
index 586b473..b17a9b6 100644
--- a/java/com/android/dialer/postcall/PostCall.java
+++ b/java/com/android/dialer/postcall/PostCall.java
@@ -26,24 +26,23 @@
 import android.telephony.TelephonyManager;
 import android.view.View;
 import android.view.View.OnClickListener;
-import com.android.dialer.buildtype.BuildType;
-import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProvider;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProvider;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.enrichedcall.EnrichedCallCapabilities;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
 
 /** Helper class to handle all post call actions. */
 public class PostCall {
 
-  private static final String KEY_POST_CALL_CALL_CONNECT_TIME = "post_call_call_connect_time";
   private static final String KEY_POST_CALL_CALL_DISCONNECT_TIME = "post_call_call_disconnect_time";
+  private static final String KEY_POST_CALL_CALL_CONNECT_TIME = "post_call_call_connect_time";
   private static final String KEY_POST_CALL_CALL_NUMBER = "post_call_call_number";
   private static final String KEY_POST_CALL_MESSAGE_SENT = "post_call_message_sent";
 
@@ -55,6 +54,8 @@
         promptUserToViewSentMessage(activity, rootView);
       } else if (shouldPromptUserToSendMessage(activity)) {
         promptUserToSendMessage(activity, rootView);
+      } else {
+        clear(activity);
       }
     }
   }
@@ -160,6 +161,19 @@
         .apply();
   }
 
+  /**
+   * Restart performance recording if there is a recent call (disconnect time to now is under
+   * threshold)
+   */
+  public static void restartPerformanceRecordingIfARecentCallExist(Context context) {
+    long disconnectTimeMillis =
+        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context)
+            .getLong(PostCall.KEY_POST_CALL_CALL_DISCONNECT_TIME, -1);
+    if (disconnectTimeMillis != -1 && PerformanceReport.isRecording()) {
+      PerformanceReport.startRecording();
+    }
+  }
+
   private static void clear(Context context) {
     activeSnackbar = null;
 
@@ -203,19 +217,7 @@
   }
 
   private static boolean isEnabled(Context context) {
-    @BuildType.Type int type = BuildType.get();
-    switch (type) {
-      case BuildType.BUGFOOD:
-      case BuildType.DOGFOOD:
-      case BuildType.FISHFOOD:
-      case BuildType.TEST:
-        return ConfigProviderBindings.get(context).getBoolean("enable_post_call", true);
-      case BuildType.RELEASE:
-        return ConfigProviderBindings.get(context).getBoolean("enable_post_call_prod", true);
-      default:
-        Assert.fail();
-        return false;
-    }
+    return ConfigProviderBindings.get(context).getBoolean("enable_post_call_prod", true);
   }
 
   private static boolean isSimReady(Context context) {
diff --git a/java/com/android/dialer/protos/ProtoParsers.java b/java/com/android/dialer/protos/ProtoParsers.java
index b77c069..5a60799 100644
--- a/java/com/android/dialer/protos/ProtoParsers.java
+++ b/java/com/android/dialer/protos/ProtoParsers.java
@@ -18,13 +18,10 @@
 
 import android.content.Intent;
 import android.os.Bundle;
-import android.os.Parcel;
-import android.os.Parcelable;
+import android.support.annotation.NonNull;
 import com.android.dialer.common.Assert;
-import com.google.protobuf.CodedOutputStream;
 import com.google.protobuf.InvalidProtocolBufferException;
 import com.google.protobuf.MessageLite;
-import java.io.IOException;
 
 /** Useful methods for using Protocol Buffers with Android. */
 public final class ProtoParsers {
@@ -35,11 +32,8 @@
   @SuppressWarnings("unchecked") // We want to eventually optimize away parser classes, so cast
   public static <T extends MessageLite> T get(Bundle bundle, String key, T defaultInstance)
       throws InvalidProtocolBufferException {
-    // Class loaders are unique to each Class instance, so we need to specify how to decode
-    // the information again, even though we set the class loaders when serializing the data.
-    bundle.setClassLoader(ProtoParsers.class.getClassLoader());
-    InternalDontUse parcelable = bundle.getParcelable(key);
-    return (T) parcelable.getMessageUnsafe(defaultInstance.getDefaultInstanceForType());
+    byte[] bytes = bundle.getByteArray(key);
+    return (T) mergeFrom(bytes, defaultInstance.getDefaultInstanceForType());
   }
 
   /**
@@ -51,7 +45,7 @@
     try {
       return get(bundle, key, defaultInstance);
     } catch (InvalidProtocolBufferException e) {
-      throw new RuntimeException(e);
+      throw Assert.createIllegalStateFailException(e.toString());
     }
   }
 
@@ -68,121 +62,28 @@
    * Stores a proto in a Bundle, for later retrieval by {@link #get(Bundle, String, MessageLite)} or
    * {@link #getFromInstanceState(Bundle, String, MessageLite)}.
    */
-  public static void put(Bundle bundle, String key, MessageLite message) {
-    bundle.putParcelable(key, new InternalDontUse<>(null, message));
+  public static void put(
+      @NonNull Bundle bundle, @NonNull String key, @NonNull MessageLite message) {
+    Assert.checkState(message != null);
+    bundle.putByteArray(key, message.toByteArray());
   }
 
   /**
    * Stores a proto in an Intent, for later retrieval by {@link #get(Bundle, String, MessageLite)}.
    * Needs separate method because Intent has similar to but different API than Bundle.
    */
-  public static void put(Intent intent, String key, MessageLite message) {
-    intent.putExtra(key, new InternalDontUse<>(null, message));
-  }
-
-  /** Returns a {@linkplain Parcelable} representation of this protobuf message. */
-  public static <T extends MessageLite> ParcelableProto<T> asParcelable(T message) {
-    return new InternalDontUse<>(null, message);
-  }
-
-  /**
-   * A protobuf message that can be stored in a {@link Parcel}.
-   *
-   * <p><b>Note:</b> This <code>Parcelable</code> can only be used in single app. Attempting to send
-   * it to another app through an <code>Intent</code> will result in an exception due to Proguard
-   * obfusation when the target application attempts to load the <code>ParcelableProto</code> class.
-   */
-  public interface ParcelableProto<T extends MessageLite> extends Parcelable {
-    /**
-     * @throws IllegalStateException if the parceled data does not correspond to the defaultInstance
-     *     type.
-     */
-    T getMessage(T defaultInstance);
-  }
-
-  /** Public because of Parcelable requirements. Do not use. */
-  public static final class InternalDontUse<T extends MessageLite> implements ParcelableProto<T> {
-    /* One of these two fields is always populated - since the bytes field never escapes this
-     * object, there is no risk of concurrent modification by multiple threads, and volatile
-     * is sufficient to be thread-safe. */
-    private volatile byte[] bytes;
-    private volatile T message;
-
-    /**
-     * Ideally, we would have type safety here. However, a static field {@link Creator} is required
-     * by {@link Parcelable}. Static fields are inherently not type safe, since only 1 exists per
-     * class (rather than 1 per type).
-     */
-    public static final Parcelable.Creator<InternalDontUse<?>> CREATOR =
-        new Creator<InternalDontUse<?>>() {
-          @Override
-          public InternalDontUse<?> createFromParcel(Parcel parcel) {
-            int serializedSize = parcel.readInt();
-            byte[] array = new byte[serializedSize];
-            parcel.readByteArray(array);
-            return new InternalDontUse<>(array, null);
-          }
-
-          @Override
-          public InternalDontUse<?>[] newArray(int i) {
-            return new InternalDontUse[i];
-          }
-        };
-
-    private InternalDontUse(byte[] bytes, T message) {
-      Assert.checkArgument(bytes != null || message != null, "Must have a message or bytes");
-      this.bytes = bytes;
-      this.message = message;
-    }
-
-    @Override
-    public int describeContents() {
-      return 0;
-    }
-
-    @Override
-    public void writeToParcel(Parcel parcel, int i) {
-      if (bytes == null) {
-        final byte[] flatArray = new byte[message.getSerializedSize()];
-        try {
-          message.writeTo(CodedOutputStream.newInstance(flatArray));
-          bytes = flatArray;
-        } catch (IOException impossible) {
-          throw new AssertionError(impossible);
-        }
-      }
-      parcel.writeInt(bytes.length);
-      parcel.writeByteArray(bytes);
-    }
-
-    @Override
-    public T getMessage(T defaultInstance) {
-      try {
-        // The proto should never be invalid if it came from our application, so if it is, throw.
-        return getMessageUnsafe(defaultInstance);
-      } catch (InvalidProtocolBufferException e) {
-        throw new IllegalStateException(e);
-      }
-    }
-
-    @SuppressWarnings("unchecked") // We're being deserialized, so there's no real type safety
-    T getMessageUnsafe(T defaultInstance) throws InvalidProtocolBufferException {
-      // There's a risk that we'll double-parse the bytes, but that's OK, because it'll end up
-      // as the same immutable object anyway.
-      if (message == null) {
-        message = (T) defaultInstance.toBuilder().mergeFrom(bytes).build();
-      }
-      return message;
-    }
+  public static void put(@NonNull Intent intent, @NonNull String key, MessageLite message) {
+    Assert.checkState(message != null);
+    intent.putExtra(key, message.toByteArray());
   }
 
   /** Parses a proto, throwing parser errors as runtime exceptions. */
   @SuppressWarnings("unchecked") // We want to eventually optimize away parser classes
-  public static <T extends MessageLite> T mergeFrom(byte[] bytes, T defaultInstance) {
+  private static <T extends MessageLite> T mergeFrom(byte[] bytes, T defaultInstance) {
     try {
       return (T) defaultInstance.toBuilder().mergeFrom(bytes).build();
     } catch (InvalidProtocolBufferException e) {
-      throw new RuntimeException(e);
+      throw Assert.createIllegalStateFailException(e.toString());
     }
   }
 }
diff --git a/java/com/android/dialer/searchfragment/README.md b/java/com/android/dialer/searchfragment/README.md
new file mode 100644
index 0000000..b3b9135
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/README.md
@@ -0,0 +1,62 @@
+# Dialer Search Ui
+
+searchfragment/ contains all code relevant to loading, rendering and filtering
+search results in both dialpad search and regular search.
+
+## Loading
+
+### On Device Contacts
+
+On device contacts loading happens in SearchContactsCursorLoader. It is used in
+conjunction with NewSearchFragment and Loader Callbacks to return a cursor from
+cp2 containing all of the relevant info needed to rendering.
+
+### Business Search
+
+// TODO(calderwoodra)
+
+### Google Directory Search
+
+// TODO(calderwoodra)
+
+## Rendering
+
+NewSearchFragment, SearchAdapter, SearchContactViewHolder and
+SearchCursorManager are used to render contact information. The fragment's
+recyclerview, adapter and viewholder work as expected like a normal recyclerview
+paradigm.
+
+The are three things to note about rendering:
+
+*   There are three data sources rendered: On device contacts, business search
+    results and google directory results.
+*   SearchContactsCursorLoader returns its cursor from cp2 and we filter/wrap it
+    with SearchContactCursor to render useful results (see below).
+*   SearchCursorManager is used to coalesce all three data sources to help with
+    determining row count, row type and returning the correct data source for
+    each position.
+
+## Filtering
+
+On device contacts are filtered using SearchContactCursor. We wrap the cursor
+returned from SearchContactsCursorLoader in NewSearchFragment#onLoadFinished in
+order to abstract away the filtering logic from the recyclerview adapter and
+viewholders.
+
+SearchContactCursor applies filtering in SearchContactCursor#filter to remove
+duplicate phone numbers returned from cp2 and phone numbers that do not match
+the given search query.
+
+Filtering methods used are:
+
+*   T9/dialpad search methods
+    *   Initial match (957 matches [W]illiam [J]ohn [S]mith)
+    *   Number + name match (1800946 matches [1800-Win]-A-Prize)
+*   Numeric/dialpad search methods
+    *   Simple number match (510333 matches [510-333]-7596)
+    *   Country-code agnostic matching for E164 normalized numbers (9177 matches
+        +65[9177]6930)
+    *   Country-code agnostic matching (510333 matches 1-[510-333]-7596)
+    *   Area-code agnostic matching (333 matches 510-[333]-7596)
+*   Name/keyboard search methods:
+    *   Simple name match (564 matches [Joh]n)
diff --git a/java/com/android/dialer/searchfragment/common/AndroidManifest.xml b/java/com/android/dialer/searchfragment/common/AndroidManifest.xml
new file mode 100644
index 0000000..178cd83
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<manifest  package="com.android.dialer.searchfragment.common"/>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/common/Projections.java b/java/com/android/dialer/searchfragment/common/Projections.java
new file mode 100644
index 0000000..37e20d1
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/Projections.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.common;
+
+import android.provider.ContactsContract.CommonDataKinds.Phone;
+
+/** Class containing relevant projections for searching contacts. */
+public class Projections {
+
+  public static final int PHONE_ID = 0;
+  public static final int PHONE_TYPE = 1;
+  public static final int PHONE_LABEL = 2;
+  public static final int PHONE_NUMBER = 3;
+  public static final int PHONE_DISPLAY_NAME = 4;
+  public static final int PHONE_PHOTO_ID = 5;
+  public static final int PHONE_PHOTO_URI = 6;
+  public static final int PHONE_LOOKUP_KEY = 7;
+  public static final int PHONE_CARRIER_PRESENCE = 8;
+
+  @SuppressWarnings("unused")
+  public static final int PHONE_SORT_KEY = 9;
+
+  public static final String[] PHONE_PROJECTION =
+      new String[] {
+        Phone._ID, // 0
+        Phone.TYPE, // 1
+        Phone.LABEL, // 2
+        Phone.NUMBER, // 3
+        Phone.DISPLAY_NAME_PRIMARY, // 4
+        Phone.PHOTO_ID, // 5
+        Phone.PHOTO_THUMBNAIL_URI, // 6
+        Phone.LOOKUP_KEY, // 7
+        Phone.CARRIER_PRESENCE, // 8
+        Phone.SORT_KEY_PRIMARY // 9
+      };
+}
diff --git a/java/com/android/dialer/searchfragment/common/QueryBoldingUtil.java b/java/com/android/dialer/searchfragment/common/QueryBoldingUtil.java
new file mode 100644
index 0000000..7bdd695
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/QueryBoldingUtil.java
@@ -0,0 +1,154 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.common;
+
+import android.graphics.Typeface;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.text.SpannableString;
+import android.text.Spanned;
+import android.text.TextUtils;
+import android.text.style.StyleSpan;
+
+/** Utility class for handling bolding queries contained in string. */
+public class QueryBoldingUtil {
+
+  /**
+   * Compares a name and query and returns a {@link CharSequence} with bolded characters.
+   *
+   * <p>Some example:
+   *
+   * <ul>
+   *   <li>"query" would bold "John [query] Smith"
+   *   <li>"222" would bold "[AAA] Mom"
+   *   <li>"222" would bold "[A]llen [A]lex [A]aron"
+   * </ul>
+   *
+   * @param query containing any characters
+   * @param name of a contact/string that query will compare to
+   * @return name with query bolded if query can be found in the name.
+   */
+  public static CharSequence getNameWithQueryBolded(@Nullable String query, @NonNull String name) {
+    if (TextUtils.isEmpty(query)) {
+      return name;
+    }
+
+    int index = -1;
+    int numberOfBoldedCharacters = 0;
+
+    if (QueryFilteringUtil.nameMatchesT9Query(query, name)) {
+      // Bold the characters that match the t9 query
+      String t9 = QueryFilteringUtil.getT9Representation(name);
+      index = QueryFilteringUtil.indexOfQueryNonDigitsIgnored(query, t9);
+      if (index == -1) {
+        return getNameWithInitialsBolded(query, name);
+      }
+      numberOfBoldedCharacters = query.length();
+
+      for (int i = 0; i < query.length(); i++) {
+        char c = query.charAt(i);
+        if (!Character.isDigit(c)) {
+          numberOfBoldedCharacters--;
+        }
+      }
+
+      for (int i = 0; i < index + numberOfBoldedCharacters; i++) {
+        if (!Character.isLetterOrDigit(name.charAt(i))) {
+          if (i < index) {
+            index++;
+          } else {
+            numberOfBoldedCharacters++;
+          }
+        }
+      }
+    }
+
+    if (index == -1) {
+      // Bold the query as an exact match in the name
+      index = name.toLowerCase().indexOf(query);
+      numberOfBoldedCharacters = query.length();
+    }
+
+    return index == -1 ? name : getBoldedString(name, index, numberOfBoldedCharacters);
+  }
+
+  private static CharSequence getNameWithInitialsBolded(String query, String name) {
+    SpannableString boldedInitials = new SpannableString(name);
+    name = name.toLowerCase();
+    int initialsBolded = 0;
+    int nameIndex = -1;
+
+    while (++nameIndex < name.length() && initialsBolded < query.length()) {
+      if ((nameIndex == 0 || name.charAt(nameIndex - 1) == ' ')
+          && QueryFilteringUtil.getDigit(name.charAt(nameIndex)) == query.charAt(initialsBolded)) {
+        boldedInitials.setSpan(
+            new StyleSpan(Typeface.BOLD),
+            nameIndex,
+            nameIndex + 1,
+            Spanned.SPAN_INCLUSIVE_INCLUSIVE);
+        initialsBolded++;
+      }
+    }
+    return boldedInitials;
+  }
+
+  /**
+   * Compares a number and a query and returns a {@link CharSequence} with bolded characters.
+   *
+   * <ul>
+   *   <li>"123" would bold "(650)34[1-23]24"
+   *   <li>"123" would bold "+1([123])111-2222
+   * </ul>
+   *
+   * @param query containing only numbers and phone number related characters "(", ")", "-", "+"
+   * @param number phone number of a contact that the query will compare to.
+   * @return number with query bolded if query can be found in the number.
+   */
+  public static CharSequence getNumberWithQueryBolded(
+      @Nullable String query, @NonNull String number) {
+    if (TextUtils.isEmpty(query) || !QueryFilteringUtil.numberMatchesNumberQuery(query, number)) {
+      return number;
+    }
+
+    int index = QueryFilteringUtil.indexOfQueryNonDigitsIgnored(query, number);
+    int boldedCharacters = query.length();
+
+    for (char c : query.toCharArray()) {
+      if (!Character.isDigit(c)) {
+        boldedCharacters--;
+      }
+    }
+
+    for (int i = 0; i < index + boldedCharacters; i++) {
+      if (!Character.isDigit(number.charAt(i))) {
+        if (i <= index) {
+          index++;
+        } else {
+          boldedCharacters++;
+        }
+      }
+    }
+    return getBoldedString(number, index, boldedCharacters);
+  }
+
+  private static SpannableString getBoldedString(String s, int index, int numBolded) {
+    SpannableString span = new SpannableString(s);
+    span.setSpan(
+        new StyleSpan(Typeface.BOLD), index, index + numBolded, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
+    return span;
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java b/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
new file mode 100644
index 0000000..b23315b
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
@@ -0,0 +1,141 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.common;
+
+import android.support.annotation.NonNull;
+import android.telephony.PhoneNumberUtils;
+import android.text.TextUtils;
+import java.util.regex.Pattern;
+
+/** Utility class for filtering, comparing and handling strings and queries. */
+public class QueryFilteringUtil {
+
+  /** Matches strings with "-", "(", ")", 2-9 of at least length one. */
+  static final Pattern T9_PATTERN = Pattern.compile("[\\-()2-9]+");
+
+  /**
+   * @return true if the query is of T9 format and the name's T9 representation belongs to the
+   *     query; false otherwise.
+   */
+  public static boolean nameMatchesT9Query(String query, String name) {
+    if (!T9_PATTERN.matcher(query).matches()) {
+      return false;
+    }
+
+    // Substring
+    if (indexOfQueryNonDigitsIgnored(query, getT9Representation(name)) != -1) {
+      return true;
+    }
+
+    // Check matches initials
+    // TODO investigate faster implementation
+    query = digitsOnly(query);
+    int queryIndex = 0;
+
+    String[] names = name.toLowerCase().split("\\s");
+    for (int i = 0; i < names.length && queryIndex < query.length(); i++) {
+      if (TextUtils.isEmpty(names[i])) {
+        continue;
+      }
+
+      if (getDigit(names[i].charAt(0)) == query.charAt(queryIndex)) {
+        queryIndex++;
+      }
+    }
+
+    return queryIndex == query.length();
+  }
+
+  /** @return true if the number belongs to the query. */
+  public static boolean numberMatchesNumberQuery(String query, String number) {
+    return PhoneNumberUtils.isGlobalPhoneNumber(query)
+        && indexOfQueryNonDigitsIgnored(query, number) != -1;
+  }
+
+  /**
+   * Checks if query is contained in number while ignoring all characters in both that are not
+   * digits (i.e. {@link Character#isDigit(char)} returns false).
+   *
+   * @return index where query is found with all non-digits removed, -1 if it's not found.
+   */
+  static int indexOfQueryNonDigitsIgnored(@NonNull String query, @NonNull String number) {
+    return digitsOnly(number).indexOf(digitsOnly(query));
+  }
+
+  // Returns string with letters replaced with their T9 representation.
+  static String getT9Representation(String s) {
+    StringBuilder builder = new StringBuilder(s.length());
+    for (char c : s.toLowerCase().toCharArray()) {
+      builder.append(getDigit(c));
+    }
+    return builder.toString();
+  }
+
+  /** @return String s with only digits recognized by Character#isDigit() remaining */
+  public static String digitsOnly(String s) {
+    StringBuilder sb = new StringBuilder();
+    for (int i = 0; i < s.length(); i++) {
+      char c = s.charAt(i);
+      if (Character.isDigit(c)) {
+        sb.append(c);
+      }
+    }
+    return sb.toString();
+  }
+
+  // Returns the T9 representation of a lower case character, otherwise returns the character.
+  static char getDigit(char c) {
+    switch (c) {
+      case 'a':
+      case 'b':
+      case 'c':
+        return '2';
+      case 'd':
+      case 'e':
+      case 'f':
+        return '3';
+      case 'g':
+      case 'h':
+      case 'i':
+        return '4';
+      case 'j':
+      case 'k':
+      case 'l':
+        return '5';
+      case 'm':
+      case 'n':
+      case 'o':
+        return '6';
+      case 'p':
+      case 'q':
+      case 'r':
+      case 's':
+        return '7';
+      case 't':
+      case 'u':
+      case 'v':
+        return '8';
+      case 'w':
+      case 'x':
+      case 'y':
+      case 'z':
+        return '9';
+      default:
+        return c;
+    }
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/common/res/layout/search_contact_row.xml b/java/com/android/dialer/searchfragment/common/res/layout/search_contact_row.xml
new file mode 100644
index 0000000..dd871af
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/res/layout/search_contact_row.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="@dimen/search_row_height"
+    android:paddingStart="8dp"
+    android:paddingEnd="8dp"
+    android:background="?android:attr/selectableItemBackground">
+
+  <QuickContactBadge
+      android:id="@+id/photo"
+      android:layout_width="@dimen/search_row_height"
+      android:layout_height="@dimen/search_row_height"
+      android:padding="@dimen/search_photo_padding"
+      android:clickable="false"/>
+
+  <LinearLayout
+      android:orientation="vertical"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_toEndOf="@+id/photo"
+      android:layout_toStartOf="@+id/call_to_action"
+      android:layout_centerVertical="true">
+
+    <TextView
+        android:id="@+id/primary"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingStart="@dimen/search_text_padding_start"
+        android:gravity="center_vertical|start"
+        android:fontFamily="sans-serif"
+        style="@style/PrimaryText"/>
+
+    <TextView
+        android:id="@+id/secondary"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingStart="@dimen/search_text_padding_start"
+        android:gravity="center_vertical|start"
+        android:fontFamily="sans-serif"
+        style="@style/SecondaryText"/>
+  </LinearLayout>
+
+  <ImageView
+      android:id="@+id/call_to_action"
+      android:layout_width="@dimen/search_row_height"
+      android:layout_height="@dimen/search_row_height"
+      android:layout_alignParentEnd="true"
+      android:padding="@dimen/call_to_action_padding"
+      android:tint="@color/dialer_secondary_text_color"
+      android:visibility="gone"
+      android:scaleType="center"/>
+</RelativeLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/common/res/values/dimens.xml b/java/com/android/dialer/searchfragment/common/res/values/dimens.xml
new file mode 100644
index 0000000..d5459dd
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/res/values/dimens.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<resources>
+  <dimen name="search_row_height">56dp</dimen>
+  <dimen name="search_photo_padding">8dp</dimen>
+  <dimen name="call_to_action_padding">8dp</dimen>
+  <dimen name="search_text_padding_start">16dp</dimen>
+  <dimen name="new_search_text_size">16sp</dimen>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactCursor.java b/java/com/android/dialer/searchfragment/cp2/SearchContactCursor.java
new file mode 100644
index 0000000..a2ef58c
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/cp2/SearchContactCursor.java
@@ -0,0 +1,392 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.cp2;
+
+import android.content.ContentResolver;
+import android.database.CharArrayBuffer;
+import android.database.ContentObserver;
+import android.database.Cursor;
+import android.database.DataSetObserver;
+import android.net.Uri;
+import android.os.Bundle;
+import android.support.annotation.IntDef;
+import android.support.annotation.Nullable;
+import android.text.TextUtils;
+import com.android.dialer.searchfragment.common.Projections;
+import com.android.dialer.searchfragment.common.QueryFilteringUtil;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Wrapper for a cursor returned by {@link SearchContactsCursorLoader}.
+ *
+ * <p>This cursor removes duplicate phone numbers associated with the same contact and can filter
+ * contacts based on a query by calling {@link #filter(String)}.
+ */
+public final class SearchContactCursor implements Cursor {
+
+  private final Cursor cursor;
+  // List of cursor ids that are valid for displaying after filtering.
+  private final List<Integer> queryFilteredPositions = new ArrayList<>();
+
+  private int currentPosition = 0;
+
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({
+    Qualification.NUMBERS_ARE_NOT_DUPLICATES,
+    Qualification.NEW_NUMBER_IS_MORE_QUALIFIED,
+    Qualification.CURRENT_MORE_QUALIFIED
+  })
+  private @interface Qualification {
+    /** Numbers are not duplicates (i.e. neither is more qualified than the other). */
+    int NUMBERS_ARE_NOT_DUPLICATES = 0;
+    /** Number are duplicates and new number is more qualified than the existing number. */
+    int NEW_NUMBER_IS_MORE_QUALIFIED = 1;
+    /** Numbers are duplicates but current/existing number is more qualified than new number. */
+    int CURRENT_MORE_QUALIFIED = 2;
+  }
+
+  /**
+   * @param cursor with projection {@link Projections#PHONE_PROJECTION}.
+   * @param query to filter cursor results.
+   */
+  public SearchContactCursor(Cursor cursor, @Nullable String query) {
+    // TODO investigate copying this into a MatrixCursor and holding in memory
+    this.cursor = cursor;
+    filter(query);
+  }
+
+  /**
+   * Filters out contacts that do not match the query.
+   *
+   * <p>The query can have at least 1 of 3 forms:
+   *
+   * <ul>
+   *   <li>A phone number
+   *   <li>A T9 representation of a name (matches {@link QueryFilteringUtil#T9_PATTERN}).
+   *   <li>A name
+   * </ul>
+   *
+   * <p>A contact is considered a match if:
+   *
+   * <ul>
+   *   <li>Its phone number contains the phone number query
+   *   <li>Its name represented in T9 contains the T9 query
+   *   <li>Its name contains the query
+   * </ul>
+   */
+  public void filter(@Nullable String query) {
+    if (query == null) {
+      query = "";
+    }
+    queryFilteredPositions.clear();
+
+    // On some devices, contacts have multiple rows with identical phone numbers. These numbers are
+    // considered duplicates. Since the order might not be guaranteed, we compare all of the numbers
+    // and hold onto the most qualified one as the one we want to display to the user.
+    // See #getQualification for details on how qualification is determined.
+    int previousMostQualifiedPosition = 0;
+    String previousName = "";
+    String previousMostQualifiedNumber = "";
+
+    query = query.toLowerCase();
+    cursor.moveToPosition(-1);
+
+    while (cursor.moveToNext()) {
+      int position = cursor.getPosition();
+      String currentNumber = cursor.getString(Projections.PHONE_NUMBER);
+      String currentName = cursor.getString(Projections.PHONE_DISPLAY_NAME);
+
+      if (!previousName.equals(currentName)) {
+        previousName = currentName;
+        previousMostQualifiedNumber = currentNumber;
+        previousMostQualifiedPosition = position;
+      } else {
+        // Since the contact name is the same, check if this number is a duplicate
+        switch (getQualification(currentNumber, previousMostQualifiedNumber)) {
+          case Qualification.CURRENT_MORE_QUALIFIED:
+            // Number is a less qualified duplicate, ignore it.
+            continue;
+          case Qualification.NEW_NUMBER_IS_MORE_QUALIFIED:
+            // If number wasn't filtered out before, remove it and add it's more qualified version.
+            if (queryFilteredPositions.contains(previousMostQualifiedPosition)) {
+              queryFilteredPositions.remove(previousMostQualifiedPosition);
+              queryFilteredPositions.add(position);
+            }
+            previousMostQualifiedNumber = currentNumber;
+            previousMostQualifiedPosition = position;
+            continue;
+          case Qualification.NUMBERS_ARE_NOT_DUPLICATES:
+          default:
+            previousMostQualifiedNumber = currentNumber;
+            previousMostQualifiedPosition = position;
+        }
+      }
+
+      if (TextUtils.isEmpty(query)
+          || QueryFilteringUtil.nameMatchesT9Query(query, previousName)
+          || QueryFilteringUtil.numberMatchesNumberQuery(query, previousMostQualifiedNumber)
+          || previousName.contains(query)) {
+        queryFilteredPositions.add(previousMostQualifiedPosition);
+      }
+    }
+    currentPosition = 0;
+    cursor.moveToFirst();
+  }
+
+  /**
+   * @param number that may or may not be more qualified than the existing most qualified number
+   * @param mostQualifiedNumber currently most qualified number associated with same contact
+   * @return {@link Qualification} where the more qualified number is the number with the most
+   *     digits. If the digits are the same, the number with the most formatting is more qualified.
+   */
+  private @Qualification int getQualification(String number, String mostQualifiedNumber) {
+    // Ignore formatting
+    String numberDigits = QueryFilteringUtil.digitsOnly(number);
+    String qualifiedNumberDigits = QueryFilteringUtil.digitsOnly(mostQualifiedNumber);
+
+    // If the numbers are identical, return version with more formatting
+    if (qualifiedNumberDigits.equals(numberDigits)) {
+      if (mostQualifiedNumber.length() >= number.length()) {
+        return Qualification.CURRENT_MORE_QUALIFIED;
+      } else {
+        return Qualification.NEW_NUMBER_IS_MORE_QUALIFIED;
+      }
+    }
+
+    // If one number is a suffix of another, then return the longer one.
+    // If they are equal, then return the current most qualified number.
+    if (qualifiedNumberDigits.endsWith(numberDigits)) {
+      return Qualification.CURRENT_MORE_QUALIFIED;
+    }
+    if (numberDigits.endsWith(qualifiedNumberDigits)) {
+      return Qualification.NEW_NUMBER_IS_MORE_QUALIFIED;
+    }
+    return Qualification.NUMBERS_ARE_NOT_DUPLICATES;
+  }
+
+  @Override
+  public boolean moveToPosition(int position) {
+    currentPosition = position;
+    return currentPosition < getCount()
+        && cursor.moveToPosition(queryFilteredPositions.get(currentPosition));
+  }
+
+  @Override
+  public boolean move(int offset) {
+    currentPosition += offset;
+    return moveToPosition(currentPosition);
+  }
+
+  @Override
+  public int getCount() {
+    return queryFilteredPositions.size();
+  }
+
+  @Override
+  public boolean isFirst() {
+    return currentPosition == 0;
+  }
+
+  @Override
+  public boolean isLast() {
+    return currentPosition == getCount() - 1;
+  }
+
+  @Override
+  public int getPosition() {
+    return currentPosition;
+  }
+
+  @Override
+  public boolean moveToFirst() {
+    return moveToPosition(0);
+  }
+
+  @Override
+  public boolean moveToLast() {
+    return moveToPosition(getCount() - 1);
+  }
+
+  @Override
+  public boolean moveToNext() {
+    return moveToPosition(++currentPosition);
+  }
+
+  @Override
+  public boolean moveToPrevious() {
+    return moveToPosition(--currentPosition);
+  }
+
+  // Methods below simply call the corresponding method in cursor.
+  @Override
+  public boolean isBeforeFirst() {
+    return cursor.isBeforeFirst();
+  }
+
+  @Override
+  public boolean isAfterLast() {
+    return cursor.isAfterLast();
+  }
+
+  @Override
+  public int getColumnIndex(String columnName) {
+    return cursor.getColumnIndex(columnName);
+  }
+
+  @Override
+  public int getColumnIndexOrThrow(String columnName) {
+    return cursor.getColumnIndexOrThrow(columnName);
+  }
+
+  @Override
+  public String getColumnName(int columnIndex) {
+    return cursor.getColumnName(columnIndex);
+  }
+
+  @Override
+  public String[] getColumnNames() {
+    return cursor.getColumnNames();
+  }
+
+  @Override
+  public int getColumnCount() {
+    return cursor.getColumnCount();
+  }
+
+  @Override
+  public byte[] getBlob(int columnIndex) {
+    return cursor.getBlob(columnIndex);
+  }
+
+  @Override
+  public String getString(int columnIndex) {
+    return cursor.getString(columnIndex);
+  }
+
+  @Override
+  public void copyStringToBuffer(int columnIndex, CharArrayBuffer buffer) {
+    cursor.copyStringToBuffer(columnIndex, buffer);
+  }
+
+  @Override
+  public short getShort(int columnIndex) {
+    return cursor.getShort(columnIndex);
+  }
+
+  @Override
+  public int getInt(int columnIndex) {
+    return cursor.getInt(columnIndex);
+  }
+
+  @Override
+  public long getLong(int columnIndex) {
+    return cursor.getLong(columnIndex);
+  }
+
+  @Override
+  public float getFloat(int columnIndex) {
+    return cursor.getFloat(columnIndex);
+  }
+
+  @Override
+  public double getDouble(int columnIndex) {
+    return cursor.getDouble(columnIndex);
+  }
+
+  @Override
+  public int getType(int columnIndex) {
+    return cursor.getType(columnIndex);
+  }
+
+  @Override
+  public boolean isNull(int columnIndex) {
+    return cursor.isNull(columnIndex);
+  }
+
+  @Override
+  public void deactivate() {
+    cursor.deactivate();
+  }
+
+  @Override
+  public boolean requery() {
+    return cursor.requery();
+  }
+
+  @Override
+  public void close() {
+    cursor.close();
+  }
+
+  @Override
+  public boolean isClosed() {
+    return cursor.isClosed();
+  }
+
+  @Override
+  public void registerContentObserver(ContentObserver observer) {
+    cursor.registerContentObserver(observer);
+  }
+
+  @Override
+  public void unregisterContentObserver(ContentObserver observer) {
+    cursor.unregisterContentObserver(observer);
+  }
+
+  @Override
+  public void registerDataSetObserver(DataSetObserver observer) {
+    cursor.registerDataSetObserver(observer);
+  }
+
+  @Override
+  public void unregisterDataSetObserver(DataSetObserver observer) {
+    cursor.unregisterDataSetObserver(observer);
+  }
+
+  @Override
+  public void setNotificationUri(ContentResolver cr, Uri uri) {
+    cursor.setNotificationUri(cr, uri);
+  }
+
+  @Override
+  public Uri getNotificationUri() {
+    return cursor.getNotificationUri();
+  }
+
+  @Override
+  public boolean getWantsAllOnMoveCalls() {
+    return cursor.getWantsAllOnMoveCalls();
+  }
+
+  @Override
+  public void setExtras(Bundle extras) {
+    cursor.setExtras(extras);
+  }
+
+  @Override
+  public Bundle getExtras() {
+    return cursor.getExtras();
+  }
+
+  @Override
+  public Bundle respond(Bundle extras) {
+    return cursor.respond(extras);
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java b/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java
new file mode 100644
index 0000000..5f06b59
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java
@@ -0,0 +1,204 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.cp2;
+
+import android.content.Context;
+import android.content.res.Resources;
+import android.database.Cursor;
+import android.net.Uri;
+import android.provider.ContactsContract.CommonDataKinds.Phone;
+import android.provider.ContactsContract.Contacts;
+import android.support.annotation.IntDef;
+import android.support.v7.widget.RecyclerView.ViewHolder;
+import android.text.TextUtils;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.widget.ImageView;
+import android.widget.QuickContactBadge;
+import android.widget.TextView;
+import com.android.contacts.common.ContactPhotoManager;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
+import com.android.dialer.callintent.CallInitiationType.Type;
+import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.common.Assert;
+import com.android.dialer.searchfragment.common.Projections;
+import com.android.dialer.searchfragment.common.QueryBoldingUtil;
+import com.android.dialer.searchfragment.common.R;
+import com.android.dialer.telecom.TelecomUtil;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** ViewHolder for a contact row. */
+public final class SearchContactViewHolder extends ViewHolder implements OnClickListener {
+
+  /** IntDef for the different types of actions that can be shown. */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({CallToAction.NONE, CallToAction.VIDEO_CALL, CallToAction.SHARE_AND_CALL})
+  @interface CallToAction {
+    int NONE = 0;
+    int VIDEO_CALL = 1;
+    int SHARE_AND_CALL = 2;
+  }
+
+  private final QuickContactBadge photo;
+  private final TextView nameOrNumberView;
+  private final TextView numberView;
+  private final ImageView callToActionView;
+  private final Context context;
+
+  private String number;
+  private @CallToAction int currentAction;
+
+  public SearchContactViewHolder(View view) {
+    super(view);
+    view.setOnClickListener(this);
+    photo = view.findViewById(R.id.photo);
+    nameOrNumberView = view.findViewById(R.id.primary);
+    numberView = view.findViewById(R.id.secondary);
+    callToActionView = view.findViewById(R.id.call_to_action);
+    context = view.getContext();
+  }
+
+  /**
+   * Binds the ViewHolder with a cursor from {@link SearchContactsCursorLoader} with the data found
+   * at the cursors set position.
+   */
+  public void bind(Cursor cursor, String query) {
+    number = cursor.getString(Projections.PHONE_NUMBER);
+    String name = cursor.getString(Projections.PHONE_DISPLAY_NAME);
+    String label = getLabel(context.getResources(), cursor);
+    String secondaryInfo =
+        TextUtils.isEmpty(label)
+            ? number
+            : context.getString(
+                com.android.contacts.common.R.string.call_subject_type_and_number, label, number);
+
+    nameOrNumberView.setText(QueryBoldingUtil.getNameWithQueryBolded(query, name));
+    numberView.setText(QueryBoldingUtil.getNumberWithQueryBolded(query, secondaryInfo));
+    setCallToAction(cursor);
+
+    if (shouldShowPhoto(cursor, name)) {
+      nameOrNumberView.setVisibility(View.VISIBLE);
+      photo.setVisibility(View.VISIBLE);
+      String photoUri = cursor.getString(Projections.PHONE_PHOTO_URI);
+      ContactPhotoManager.getInstance(context)
+          .loadDialerThumbnailOrPhoto(
+              photo,
+              getContactUri(cursor),
+              cursor.getLong(Projections.PHONE_PHOTO_ID),
+              photoUri == null ? null : Uri.parse(photoUri),
+              name,
+              LetterTileDrawable.TYPE_DEFAULT);
+    } else {
+      nameOrNumberView.setVisibility(View.GONE);
+      photo.setVisibility(View.INVISIBLE);
+    }
+  }
+
+  private boolean shouldShowPhoto(Cursor cursor, String currentName) {
+    int currentPosition = cursor.getPosition();
+    if (currentPosition == 0) {
+      return true;
+    } else {
+      cursor.moveToPosition(currentPosition - 1);
+      String previousName = cursor.getString(Projections.PHONE_DISPLAY_NAME);
+      cursor.moveToPosition(currentPosition);
+      return !currentName.equals(previousName);
+    }
+  }
+
+  private static Uri getContactUri(Cursor cursor) {
+    long contactId = cursor.getLong(Projections.PHONE_ID);
+    String lookupKey = cursor.getString(Projections.PHONE_LOOKUP_KEY);
+    return Contacts.getLookupUri(contactId, lookupKey);
+  }
+
+  // TODO: handle CNAP and cequint types.
+  // TODO: unify this into a utility method with CallLogAdapter#getNumberType
+  private static String getLabel(Resources resources, Cursor cursor) {
+    int numberType = cursor.getInt(Projections.PHONE_TYPE);
+    String numberLabel = cursor.getString(Projections.PHONE_LABEL);
+
+    // Returns empty label instead of "custom" if the custom label is empty.
+    if (numberType == Phone.TYPE_CUSTOM && TextUtils.isEmpty(numberLabel)) {
+      return "";
+    }
+    return (String) Phone.getTypeLabel(resources, numberType, numberLabel);
+  }
+
+  private void setCallToAction(Cursor cursor) {
+    currentAction = getCallToAction(cursor);
+    switch (currentAction) {
+      case CallToAction.NONE:
+        callToActionView.setVisibility(View.GONE);
+        callToActionView.setOnClickListener(null);
+        break;
+      case CallToAction.SHARE_AND_CALL:
+        callToActionView.setVisibility(View.VISIBLE);
+        callToActionView.setImageDrawable(
+            context.getDrawable(com.android.contacts.common.R.drawable.ic_phone_attach));
+        callToActionView.setOnClickListener(this);
+        break;
+      case CallToAction.VIDEO_CALL:
+        callToActionView.setVisibility(View.VISIBLE);
+        callToActionView.setImageDrawable(
+            context.getDrawable(R.drawable.quantum_ic_videocam_white_24));
+        callToActionView.setOnClickListener(this);
+        break;
+      default:
+        throw Assert.createIllegalStateFailException(
+            "Invalid Call to action type: " + currentAction);
+    }
+  }
+
+  private static @CallToAction int getCallToAction(Cursor cursor) {
+    int carrierPresence = cursor.getInt(Projections.PHONE_CARRIER_PRESENCE);
+    if ((carrierPresence & Phone.CARRIER_PRESENCE_VT_CAPABLE) == 1) {
+      return CallToAction.VIDEO_CALL;
+    }
+
+    // TODO: enriched calling
+    return CallToAction.NONE;
+  }
+
+  @Override
+  public void onClick(View view) {
+    if (view == callToActionView) {
+      switch (currentAction) {
+        case CallToAction.SHARE_AND_CALL:
+          callToActionView.setVisibility(View.VISIBLE);
+          callToActionView.setImageDrawable(
+              context.getDrawable(com.android.contacts.common.R.drawable.ic_phone_attach));
+          // TODO: open call composer.
+          break;
+        case CallToAction.VIDEO_CALL:
+          callToActionView.setVisibility(View.VISIBLE);
+          callToActionView.setImageDrawable(
+              context.getDrawable(R.drawable.quantum_ic_videocam_white_24));
+          // TODO: place a video call
+          break;
+        case CallToAction.NONE:
+        default:
+          throw Assert.createIllegalStateFailException(
+              "Invalid Call to action type: " + currentAction);
+      }
+    } else {
+      // TODO: set the correct call initiation type.
+      TelecomUtil.placeCall(context, new CallIntentBuilder(number, Type.REGULAR_SEARCH).build());
+    }
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java b/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java
new file mode 100644
index 0000000..c72f28b
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.cp2;
+
+import android.content.Context;
+import android.content.CursorLoader;
+import android.database.Cursor;
+import android.provider.ContactsContract.CommonDataKinds.Phone;
+import com.android.dialer.searchfragment.common.Projections;
+
+/** Cursor Loader for CP2 contacts. */
+public final class SearchContactsCursorLoader extends CursorLoader {
+
+  public SearchContactsCursorLoader(Context context) {
+    super(
+        context,
+        Phone.CONTENT_URI,
+        Projections.PHONE_PROJECTION,
+        null,
+        null,
+        Phone.SORT_KEY_PRIMARY + " ASC");
+  }
+
+  @Override
+  public Cursor loadInBackground() {
+    return new SearchContactCursor(super.loadInBackground(), null);
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/AndroidManifest.xml b/java/com/android/dialer/searchfragment/list/AndroidManifest.xml
new file mode 100644
index 0000000..e0890cc
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<manifest  package="com.android.dialer.searchfragment.list"/>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/list/HeaderViewHolder.java b/java/com/android/dialer/searchfragment/list/HeaderViewHolder.java
new file mode 100644
index 0000000..dd35b13
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/HeaderViewHolder.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.list;
+
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.TextView;
+
+/** ViewHolder for header rows in {@link NewSearchFragment}. */
+final class HeaderViewHolder extends RecyclerView.ViewHolder {
+
+  private final TextView header;
+
+  HeaderViewHolder(View view) {
+    super(view);
+    header = view.findViewById(R.id.header);
+  }
+
+  public void setHeader(String header) {
+    this.header.setText(header);
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/NewSearchFragment.java b/java/com/android/dialer/searchfragment/list/NewSearchFragment.java
new file mode 100644
index 0000000..fcc87c3
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/NewSearchFragment.java
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.list;
+
+import android.app.Fragment;
+import android.app.LoaderManager.LoaderCallbacks;
+import android.content.Loader;
+import android.database.Cursor;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import com.android.contacts.common.extensions.PhoneDirectoryExtenderAccessor;
+import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.dialer.searchfragment.cp2.SearchContactsCursorLoader;
+import com.android.dialer.searchfragment.nearbyplaces.NearbyPlacesCursorLoader;
+
+/** Fragment used for searching contacts. */
+public final class NewSearchFragment extends Fragment implements LoaderCallbacks<Cursor> {
+
+  // Since some of our queries can generate network requests, we should delay them until the user
+  // stops typing to prevent generating too much network traffic.
+  private static final int NETWORK_SEARCH_DELAY_MILLIS = 300;
+
+  private static final int CONTACTS_LOADER_ID = 0;
+  private static final int NEARBY_PLACES_ID = 1;
+
+  private RecyclerView recyclerView;
+  private SearchAdapter adapter;
+  private String query;
+
+  private final Runnable loadNearbyPlacesRunnable =
+      () -> getLoaderManager().restartLoader(NEARBY_PLACES_ID, null, this);
+
+  @Nullable
+  @Override
+  public View onCreateView(
+      LayoutInflater inflater, @Nullable ViewGroup parent, @Nullable Bundle bundle) {
+    getLoaderManager().initLoader(0, null, this);
+    View view = inflater.inflate(R.layout.fragment_search, parent, false);
+    adapter = new SearchAdapter(getContext());
+    recyclerView = view.findViewById(R.id.recycler_view);
+    recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
+    recyclerView.setAdapter(adapter);
+
+    getLoaderManager().initLoader(CONTACTS_LOADER_ID, null, this);
+    loadNearbyPlacesCursor();
+    return view;
+  }
+
+  @Override
+  public Loader<Cursor> onCreateLoader(int id, Bundle bundle) {
+    // TODO add enterprise loader
+    if (id == CONTACTS_LOADER_ID) {
+      return new SearchContactsCursorLoader(getContext());
+    } else if (id == NEARBY_PLACES_ID) {
+      return new NearbyPlacesCursorLoader(getContext(), query);
+    } else {
+      throw new IllegalStateException("Invalid loader id: " + id);
+    }
+  }
+
+  @Override
+  public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
+    if (loader instanceof SearchContactsCursorLoader) {
+      adapter.setContactsCursor(cursor);
+    } else if (loader instanceof NearbyPlacesCursorLoader) {
+      adapter.setNearbyPlacesCursor(cursor);
+    } else {
+      throw new IllegalStateException("Invalid loader: " + loader);
+    }
+  }
+
+  @Override
+  public void onLoaderReset(Loader<Cursor> loader) {
+    adapter.clear();
+    recyclerView.setAdapter(null);
+  }
+
+  public void setQuery(String query) {
+    this.query = query;
+    if (adapter != null) {
+      adapter.setQuery(query);
+      loadNearbyPlacesCursor();
+    }
+  }
+
+  @Override
+  public void onDestroy() {
+    super.onDestroy();
+    // close adapters
+    adapter.setNearbyPlacesCursor(null);
+    adapter.setContactsCursor(null);
+    ThreadUtil.getUiThreadHandler().removeCallbacks(loadNearbyPlacesRunnable);
+  }
+
+  private void loadNearbyPlacesCursor() {
+    // Cancel existing load if one exists.
+    ThreadUtil.getUiThreadHandler().removeCallbacks(loadNearbyPlacesRunnable);
+
+    // If nearby places is not enabled, do not try to load them.
+    if (!PhoneDirectoryExtenderAccessor.get(getContext()).isEnabled(getContext())) {
+      return;
+    }
+    ThreadUtil.getUiThreadHandler()
+        .postDelayed(loadNearbyPlacesRunnable, NETWORK_SEARCH_DELAY_MILLIS);
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/SearchAdapter.java b/java/com/android/dialer/searchfragment/list/SearchAdapter.java
new file mode 100644
index 0000000..023513e
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/SearchAdapter.java
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.list;
+
+import android.content.Context;
+import android.database.Cursor;
+import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.RecyclerView.ViewHolder;
+import android.view.LayoutInflater;
+import android.view.ViewGroup;
+import com.android.dialer.common.Assert;
+import com.android.dialer.searchfragment.cp2.SearchContactViewHolder;
+import com.android.dialer.searchfragment.list.SearchCursorManager.RowType;
+import com.android.dialer.searchfragment.nearbyplaces.NearbyPlaceViewHolder;
+
+/** RecyclerView adapter for {@link NewSearchFragment}. */
+class SearchAdapter extends RecyclerView.Adapter<ViewHolder> {
+
+  private final SearchCursorManager searchCursorManager;
+  private final Context context;
+
+  private String query;
+
+  SearchAdapter(Context context) {
+    searchCursorManager = new SearchCursorManager();
+    this.context = context;
+  }
+
+  @Override
+  public ViewHolder onCreateViewHolder(ViewGroup root, @RowType int rowType) {
+    switch (rowType) {
+      case RowType.CONTACT_ROW:
+        return new SearchContactViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.search_contact_row, root, false));
+      case RowType.NEARBY_PLACES_ROW:
+        return new NearbyPlaceViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.search_contact_row, root, false));
+      case RowType.DIRECTORY_HEADER:
+      case RowType.NEARBY_PLACES_HEADER:
+        return new HeaderViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.header_layout, root, false));
+      case RowType.DIRECTORY_ROW: // TODO: add directory rows to search
+      case RowType.INVALID:
+      default:
+        throw Assert.createIllegalStateFailException("Invalid RowType: " + rowType);
+    }
+  }
+
+  @Override
+  public @RowType int getItemViewType(int position) {
+    return searchCursorManager.getRowType(position);
+  }
+
+  @Override
+  public void onBindViewHolder(ViewHolder holder, int position) {
+    if (holder instanceof SearchContactViewHolder) {
+      Cursor cursor = searchCursorManager.getCursor(position);
+      ((SearchContactViewHolder) holder).bind(cursor, query);
+    } else if (holder instanceof NearbyPlaceViewHolder) {
+      Cursor cursor = searchCursorManager.getCursor(position);
+      ((NearbyPlaceViewHolder) holder).bind(cursor, query);
+    } else if (holder instanceof HeaderViewHolder) {
+      String header = context.getString(searchCursorManager.getHeaderText(position));
+      ((HeaderViewHolder) holder).setHeader(header);
+    } else {
+      throw Assert.createIllegalStateFailException("Invalid ViewHolder: " + holder);
+    }
+  }
+
+  void setContactsCursor(Cursor cursor) {
+    searchCursorManager.setContactsCursor(cursor);
+    notifyDataSetChanged();
+  }
+
+  void clear() {
+    searchCursorManager.clear();
+  }
+
+  @Override
+  public int getItemCount() {
+    return searchCursorManager.getCount();
+  }
+
+  public void setQuery(String query) {
+    this.query = query;
+    searchCursorManager.setQuery(query);
+    notifyDataSetChanged();
+  }
+
+  public void setNearbyPlacesCursor(Cursor nearbyPlacesCursor) {
+    searchCursorManager.setNearbyPlacesCursor(nearbyPlacesCursor);
+    notifyDataSetChanged();
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/SearchCursorManager.java b/java/com/android/dialer/searchfragment/list/SearchCursorManager.java
new file mode 100644
index 0000000..216a9ad
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/SearchCursorManager.java
@@ -0,0 +1,273 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.list;
+
+import android.database.Cursor;
+import android.support.annotation.IntDef;
+import android.support.annotation.StringRes;
+import com.android.dialer.common.Assert;
+import com.android.dialer.searchfragment.cp2.SearchContactCursor;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/**
+ * Manages all of the cursors needed for {@link SearchAdapter}.
+ *
+ * <p>This class accepts three cursors:
+ *
+ * <ul>
+ *   <li>A contacts cursor {@link #setContactsCursor(Cursor)}
+ *   <li>A google search results cursor {@link #setNearbyPlacesCursor(Cursor)}
+ *   <li>A work directory cursor {@link #setCorpDirectoryCursor(Cursor)}
+ * </ul>
+ *
+ * <p>The key purpose of this class is to compose three aforementioned cursors together to function
+ * as one cursor. The key methods needed to utilize this class as a cursor are:
+ *
+ * <ul>
+ *   <li>{@link #getCursor(int)}
+ *   <li>{@link #getCount()}
+ *   <li>{@link #getRowType(int)}
+ * </ul>
+ */
+final class SearchCursorManager {
+
+  /** IntDef for the different types of rows that can be shown when searching. */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({
+    SearchCursorManager.RowType.INVALID,
+    SearchCursorManager.RowType.CONTACT_ROW,
+    SearchCursorManager.RowType.NEARBY_PLACES_HEADER,
+    SearchCursorManager.RowType.NEARBY_PLACES_ROW,
+    SearchCursorManager.RowType.DIRECTORY_HEADER,
+    SearchCursorManager.RowType.DIRECTORY_ROW
+  })
+  @interface RowType {
+    int INVALID = 0;
+    /** A row containing contact information for contacts stored locally on device. */
+    int CONTACT_ROW = 1;
+    /** Header to mark the end of contact rows and start of nearby places rows. */
+    int NEARBY_PLACES_HEADER = 2;
+    /** A row containing nearby places information/search results. */
+    int NEARBY_PLACES_ROW = 3;
+    /** Header to mark the end of the previous row set and start of directory rows. */
+    int DIRECTORY_HEADER = 4;
+    /** A row containing contact information for contacts stored externally in corp directories. */
+    int DIRECTORY_ROW = 5;
+  }
+
+  private Cursor contactsCursor = null;
+  private Cursor nearbyPlacesCursor = null;
+  private Cursor corpDirectoryCursor = null;
+
+  void setContactsCursor(Cursor cursor) {
+    if (cursor == contactsCursor) {
+      return;
+    }
+
+    if (contactsCursor != null && !contactsCursor.isClosed()) {
+      contactsCursor.close();
+    }
+
+    if (cursor != null && cursor.getCount() > 0) {
+      contactsCursor = cursor;
+    } else {
+      contactsCursor = null;
+    }
+  }
+
+  void setNearbyPlacesCursor(Cursor cursor) {
+    if (cursor == nearbyPlacesCursor) {
+      return;
+    }
+
+    if (nearbyPlacesCursor != null && !nearbyPlacesCursor.isClosed()) {
+      nearbyPlacesCursor.close();
+    }
+
+    if (cursor != null && cursor.getCount() > 0) {
+      nearbyPlacesCursor = cursor;
+    } else {
+      nearbyPlacesCursor = null;
+    }
+  }
+
+  void setCorpDirectoryCursor(Cursor cursor) {
+    if (cursor == corpDirectoryCursor) {
+      return;
+    }
+
+    if (corpDirectoryCursor != null && !corpDirectoryCursor.isClosed()) {
+      corpDirectoryCursor.close();
+    }
+
+    if (cursor != null && cursor.getCount() > 0) {
+      corpDirectoryCursor = cursor;
+    } else {
+      corpDirectoryCursor = null;
+    }
+  }
+
+  void setQuery(String query) {
+    if (contactsCursor != null) {
+      // TODO: abstract this
+      ((SearchContactCursor) contactsCursor).filter(query);
+    }
+  }
+
+  /** @return the sum of counts of all cursors, including headers. */
+  int getCount() {
+    int count = 0;
+    if (contactsCursor != null) {
+      count += contactsCursor.getCount();
+    }
+
+    if (nearbyPlacesCursor != null) {
+      count++; // header
+      count += nearbyPlacesCursor.getCount();
+    }
+
+    if (corpDirectoryCursor != null) {
+      count++; // header
+      count += corpDirectoryCursor.getCount();
+    }
+
+    return count;
+  }
+
+  @RowType
+  int getRowType(int position) {
+    if (contactsCursor != null) {
+      position -= contactsCursor.getCount();
+
+      if (position < 0) {
+        return SearchCursorManager.RowType.CONTACT_ROW;
+      }
+    }
+
+    if (nearbyPlacesCursor != null) {
+      if (position == 0) {
+        return SearchCursorManager.RowType.NEARBY_PLACES_HEADER;
+      } else {
+        position--; // header
+      }
+
+      position -= nearbyPlacesCursor.getCount();
+
+      if (position < 0) {
+        return SearchCursorManager.RowType.NEARBY_PLACES_ROW;
+      }
+    }
+
+    if (corpDirectoryCursor != null) {
+      if (position == 0) {
+        return SearchCursorManager.RowType.DIRECTORY_HEADER;
+      } else {
+        position--; // header
+      }
+
+      position -= corpDirectoryCursor.getCount();
+
+      if (position < 0) {
+        return SearchCursorManager.RowType.DIRECTORY_ROW;
+      }
+    }
+
+    throw Assert.createIllegalStateFailException("No valid row type.");
+  }
+
+  /**
+   * Gets cursor corresponding to position in coelesced list of search cursors. Callers should
+   * ensure that {@link #getRowType(int)} doesn't correspond to header position, otherwise an
+   * exception will be thrown.
+   *
+   * @param position in coalecsed list of search cursors
+   * @return Cursor moved to position specific to passed in position.
+   */
+  Cursor getCursor(int position) {
+    if (contactsCursor != null) {
+      int count = contactsCursor.getCount();
+
+      if (position - count < 0) {
+        contactsCursor.moveToPosition(position);
+        return contactsCursor;
+      }
+      position -= count;
+    }
+
+    if (nearbyPlacesCursor != null) {
+      Assert.checkArgument(position != 0, "No valid cursor, position is nearby places header.");
+      position--; // header
+      int count = nearbyPlacesCursor.getCount();
+
+      if (position - count < 0) {
+        nearbyPlacesCursor.moveToPosition(position);
+        return nearbyPlacesCursor;
+      }
+      position -= count;
+    }
+
+    if (corpDirectoryCursor != null) {
+      Assert.checkArgument(position != 0, "No valid cursor, position is directory search header.");
+      position--; // header
+      int count = corpDirectoryCursor.getCount();
+
+      if (position - count < 0) {
+        corpDirectoryCursor.moveToPosition(position);
+        return corpDirectoryCursor;
+      }
+      position -= count;
+    }
+
+    throw Assert.createIllegalStateFailException("No valid cursor.");
+  }
+
+  @StringRes
+  int getHeaderText(int position) {
+    @RowType int rowType = getRowType(position);
+    switch (rowType) {
+      case RowType.NEARBY_PLACES_HEADER:
+        return R.string.nearby_places;
+      case RowType.DIRECTORY_HEADER: // TODO
+      case RowType.DIRECTORY_ROW:
+      case RowType.CONTACT_ROW:
+      case RowType.NEARBY_PLACES_ROW:
+      case RowType.INVALID:
+      default:
+        throw Assert.createIllegalStateFailException(
+            "Invalid row type, position " + position + " is rowtype " + rowType);
+    }
+  }
+
+  /** removes all cursors. */
+  void clear() {
+    if (contactsCursor != null) {
+      contactsCursor.close();
+      contactsCursor = null;
+    }
+
+    if (nearbyPlacesCursor != null) {
+      nearbyPlacesCursor.close();
+      nearbyPlacesCursor = null;
+    }
+
+    if (corpDirectoryCursor != null) {
+      corpDirectoryCursor.close();
+      corpDirectoryCursor = null;
+    }
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/res/layout/fragment_search.xml b/java/com/android/dialer/searchfragment/list/res/layout/fragment_search.xml
new file mode 100644
index 0000000..06f2348
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/res/layout/fragment_search.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<android.support.v7.widget.RecyclerView
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/recycler_view"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
diff --git a/java/com/android/dialer/searchfragment/list/res/layout/header_layout.xml b/java/com/android/dialer/searchfragment/list/res/layout/header_layout.xml
new file mode 100644
index 0000000..36af42e
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/res/layout/header_layout.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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"
+    android:id="@+id/header"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:paddingStart="16dp"
+    style="@style/SecondaryText"/>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/AndroidManifest.xml b/java/com/android/dialer/searchfragment/nearbyplaces/AndroidManifest.xml
new file mode 100644
index 0000000..178cd83
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2017 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
+ -->
+<manifest  package="com.android.dialer.searchfragment.common"/>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlaceViewHolder.java b/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlaceViewHolder.java
new file mode 100644
index 0000000..b6e5a90
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlaceViewHolder.java
@@ -0,0 +1,90 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.nearbyplaces;
+
+import android.content.Context;
+import android.database.Cursor;
+import android.net.Uri;
+import android.provider.ContactsContract;
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.QuickContactBadge;
+import android.widget.TextView;
+import com.android.contacts.common.ContactPhotoManager;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
+import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.searchfragment.common.Projections;
+import com.android.dialer.searchfragment.common.QueryBoldingUtil;
+import com.android.dialer.searchfragment.common.R;
+import com.android.dialer.telecom.TelecomUtil;
+
+/** ViewHolder for a nearby place row. */
+public final class NearbyPlaceViewHolder extends RecyclerView.ViewHolder
+    implements View.OnClickListener {
+
+  private final Context context;
+  private final TextView placeName;
+  private final TextView placeAddress;
+  private final QuickContactBadge photo;
+
+  private String number;
+
+  public NearbyPlaceViewHolder(View view) {
+    super(view);
+    view.setOnClickListener(this);
+    photo = view.findViewById(R.id.photo);
+    placeName = view.findViewById(R.id.primary);
+    placeAddress = view.findViewById(R.id.secondary);
+    context = view.getContext();
+  }
+
+  /**
+   * Binds the ViewHolder with a cursor from {@link NearbyPlacesCursorLoader} with the data found at
+   * the cursors set position.
+   */
+  public void bind(Cursor cursor, String query) {
+    number = cursor.getString(Projections.PHONE_NUMBER);
+    String name = cursor.getString(Projections.PHONE_DISPLAY_NAME);
+    String address = cursor.getString(Projections.PHONE_LABEL);
+
+    placeName.setText(QueryBoldingUtil.getNameWithQueryBolded(query, name));
+    placeAddress.setText(QueryBoldingUtil.getNameWithQueryBolded(query, address));
+
+    String photoUri = cursor.getString(Projections.PHONE_PHOTO_URI);
+    ContactPhotoManager.getInstance(context)
+        .loadDialerThumbnailOrPhoto(
+            photo,
+            getContactUri(cursor),
+            cursor.getLong(Projections.PHONE_PHOTO_ID),
+            photoUri == null ? null : Uri.parse(photoUri),
+            name,
+            LetterTileDrawable.TYPE_DEFAULT);
+  }
+
+  private static Uri getContactUri(Cursor cursor) {
+    long contactId = cursor.getLong(Projections.PHONE_ID);
+    String lookupKey = cursor.getString(Projections.PHONE_LOOKUP_KEY);
+    return ContactsContract.Contacts.getLookupUri(contactId, lookupKey);
+  }
+
+  @Override
+  public void onClick(View v) {
+    TelecomUtil.placeCall(
+        context, new CallIntentBuilder(number, CallInitiationType.Type.REGULAR_SEARCH).build());
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlacesCursorLoader.java b/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlacesCursorLoader.java
new file mode 100644
index 0000000..9f3193e
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlacesCursorLoader.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2017 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.dialer.searchfragment.nearbyplaces;
+
+import android.content.Context;
+import android.content.CursorLoader;
+import android.net.Uri;
+import android.provider.ContactsContract;
+import com.android.contacts.common.extensions.PhoneDirectoryExtenderAccessor;
+import com.android.dialer.searchfragment.common.Projections;
+
+/** Cursor loader for nearby places search results. */
+public final class NearbyPlacesCursorLoader extends CursorLoader {
+
+  private static final String MAX_RESULTS = "3";
+
+  public NearbyPlacesCursorLoader(Context context, String query) {
+    super(context, getContentUri(context, query), Projections.PHONE_PROJECTION, null, null, null);
+  }
+
+  private static Uri getContentUri(Context context, String query) {
+    return PhoneDirectoryExtenderAccessor.get(context)
+        .getContentUri()
+        .buildUpon()
+        .appendPath(query)
+        .appendQueryParameter(ContactsContract.LIMIT_PARAM_KEY, MAX_RESULTS)
+        .build();
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-af/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-af/strings.xml
new file mode 100644
index 0000000..21eb4b1
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-af/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Nabygeleë plekke"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-am/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-am/strings.xml
new file mode 100644
index 0000000..5eaff6b
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-am/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"በአቅራቢያ ያሉ ቦታዎች"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ar/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ar/strings.xml
new file mode 100644
index 0000000..d68b4d1
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ar/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"الأماكن المجاورة"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-az/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-az/strings.xml
new file mode 100644
index 0000000..d085bf7
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-az/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Yaxınlıqdakı yerlər"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-b+sr+Latn/strings.xml
new file mode 100644
index 0000000..bb9f06f
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-b+sr+Latn/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Obližnja mesta"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-be/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-be/strings.xml
new file mode 100644
index 0000000..643a583
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-be/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Месцы паблізу"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bg/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bg/strings.xml
new file mode 100644
index 0000000..e883953
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bg/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Места в района"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bn/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bn/strings.xml
new file mode 100644
index 0000000..4bc3fed
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bn/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"আশপাশের জায়গাগুলি"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bs/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bs/strings.xml
new file mode 100644
index 0000000..f3fb921
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bs/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Mjesta u blizini"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ca/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ca/strings.xml
new file mode 100644
index 0000000..f73bfba
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ca/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Llocs propers"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-cs/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-cs/strings.xml
new file mode 100644
index 0000000..6ccb90f
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-cs/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Místa v okolí"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-da/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-da/strings.xml
new file mode 100644
index 0000000..eb5f690
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-da/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Steder i nærheden"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-de/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-de/strings.xml
new file mode 100644
index 0000000..9e2db4a
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-de/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Orte in der Nähe"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-el/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-el/strings.xml
new file mode 100644
index 0000000..94769eb
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-el/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Κοντινά μέρη"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rAU/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rAU/strings.xml
new file mode 100644
index 0000000..0778273
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rAU/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Places nearby"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rGB/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rGB/strings.xml
new file mode 100644
index 0000000..0778273
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rGB/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Places nearby"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rIN/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rIN/strings.xml
new file mode 100644
index 0000000..0778273
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rIN/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Places nearby"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es-rUS/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es-rUS/strings.xml
new file mode 100644
index 0000000..3f3f712
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es-rUS/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Lugares cercanos"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es/strings.xml
new file mode 100644
index 0000000..fada6bc
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Sitios cercanos"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-et/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-et/strings.xml
new file mode 100644
index 0000000..65f220d
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-et/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Lähedalasuvad kohad"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-eu/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-eu/strings.xml
new file mode 100644
index 0000000..cb9c52f
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-eu/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Inguruko tokiak"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fa/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fa/strings.xml
new file mode 100644
index 0000000..3665411
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fa/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"مکان‌های اطراف"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fi/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fi/strings.xml
new file mode 100644
index 0000000..9d2b1ef
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fi/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Lähellä olevat paikat"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr-rCA/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr-rCA/strings.xml
new file mode 100644
index 0000000..d65e7bd
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr-rCA/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Adresses à proximité"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr/strings.xml
new file mode 100644
index 0000000..d65e7bd
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Adresses à proximité"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gl/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gl/strings.xml
new file mode 100644
index 0000000..5a4cce7
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gl/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Lugares próximos"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gu/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gu/strings.xml
new file mode 100644
index 0000000..ee32e46
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gu/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"નજીકના સ્થળો"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hi/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hi/strings.xml
new file mode 100644
index 0000000..079c03e
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hi/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"आस-पास के स्थल"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hr/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hr/strings.xml
new file mode 100644
index 0000000..f3fb921
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hr/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Mjesta u blizini"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hu/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hu/strings.xml
new file mode 100644
index 0000000..5b99c01
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hu/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Közeli helyek"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hy/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hy/strings.xml
new file mode 100644
index 0000000..3a2ba39
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hy/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Մոտակա վայրեր"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-in/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-in/strings.xml
new file mode 100644
index 0000000..4cda3c4
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-in/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Tempat terdekat"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-is/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-is/strings.xml
new file mode 100644
index 0000000..26d68e8
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-is/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Staðir í nágrenninu"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-it/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-it/strings.xml
new file mode 100644
index 0000000..d55f058
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-it/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Luoghi nelle vicinanze"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-iw/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-iw/strings.xml
new file mode 100644
index 0000000..0f07995
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-iw/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"מקומות קרובים"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ja/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ja/strings.xml
new file mode 100644
index 0000000..ce32053
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ja/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"周辺のスポット"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ka/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ka/strings.xml
new file mode 100644
index 0000000..6eb3b8f
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ka/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"ახლომდებარე ადგილები"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kk/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kk/strings.xml
new file mode 100644
index 0000000..b478b53
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kk/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Маңайдағы орындар"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-km/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-km/strings.xml
new file mode 100644
index 0000000..08a4609
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-km/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"កន្លែងនៅក្បែរ"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kn/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kn/strings.xml
new file mode 100644
index 0000000..0282752
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kn/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"ಹತ್ತಿರದ ಸ್ಥಳಗಳು"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ko/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ko/strings.xml
new file mode 100644
index 0000000..f05a332
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ko/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"주변 장소"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ky/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ky/strings.xml
new file mode 100644
index 0000000..0838bb3
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ky/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Жакын арадагы жерлер"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lo/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lo/strings.xml
new file mode 100644
index 0000000..2ff0e85
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lo/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"ສະຖານທີ່ໃກ້ຄຽງ"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lt/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lt/strings.xml
new file mode 100644
index 0000000..9baf540
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lt/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Netoliese esančios vietos"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lv/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lv/strings.xml
new file mode 100644
index 0000000..2b67e5a
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lv/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Vietas blakus"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mk/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mk/strings.xml
new file mode 100644
index 0000000..27c00d5
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mk/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Места во близина"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ml/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ml/strings.xml
new file mode 100644
index 0000000..bb89cb2
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ml/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"സമീപത്തുള്ള സ്ഥലങ്ങൾ"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mn/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mn/strings.xml
new file mode 100644
index 0000000..707a6c9
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mn/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Ойролцоох газрууд"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mr/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mr/strings.xml
new file mode 100644
index 0000000..862cd04
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mr/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"जवळपासची ठिकाणे"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ms/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ms/strings.xml
new file mode 100644
index 0000000..aed0bbb
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ms/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Tempat berdekatan"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-my/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-my/strings.xml
new file mode 100644
index 0000000..74e60a0
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-my/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"အနီးတဝိုက်ရှိ နေရာများ"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nb/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nb/strings.xml
new file mode 100644
index 0000000..af6cd3d
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nb/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Steder i nærheten"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ne/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ne/strings.xml
new file mode 100644
index 0000000..29b6854
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ne/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"नजिकका स्थानहरू"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nl/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nl/strings.xml
new file mode 100644
index 0000000..4a8b11a
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nl/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Plaatsen in de buurt"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-no/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-no/strings.xml
new file mode 100644
index 0000000..af6cd3d
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-no/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Steder i nærheten"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pa/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pa/strings.xml
new file mode 100644
index 0000000..1d4d472
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pa/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"ਨਜ਼ਦੀਕੀ ਸਥਾਨ"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pl/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pl/strings.xml
new file mode 100644
index 0000000..c00b608
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pl/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Miejsca w pobliżu"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rBR/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rBR/strings.xml
new file mode 100644
index 0000000..5a4cce7
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rBR/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Lugares próximos"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rPT/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rPT/strings.xml
new file mode 100644
index 0000000..20429ba
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rPT/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Locais próximos"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt/strings.xml
new file mode 100644
index 0000000..5a4cce7
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Lugares próximos"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ro/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ro/strings.xml
new file mode 100644
index 0000000..c24e0a9
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ro/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Locații din apropiere"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ru/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ru/strings.xml
new file mode 100644
index 0000000..dd76f5f
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ru/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Места рядом"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-si/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-si/strings.xml
new file mode 100644
index 0000000..2c13bc5
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-si/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"අවට ස්ථාන"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sk/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sk/strings.xml
new file mode 100644
index 0000000..5e25cd8
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sk/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Miesta v okolí"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sl/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sl/strings.xml
new file mode 100644
index 0000000..6f78bdc
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sl/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Mesta v bližini"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sq/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sq/strings.xml
new file mode 100644
index 0000000..6d25a6b
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sq/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Vendet në afërsi"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sr/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sr/strings.xml
new file mode 100644
index 0000000..21af043
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sr/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Оближња места"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sv/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sv/strings.xml
new file mode 100644
index 0000000..c309b8d
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sv/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Platser i närheten"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sw/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sw/strings.xml
new file mode 100644
index 0000000..6cea2f1
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sw/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Maeneo ya karibu"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ta/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ta/strings.xml
new file mode 100644
index 0000000..ce7496e
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ta/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"அருகிலுள்ள இடங்கள்"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-te/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-te/strings.xml
new file mode 100644
index 0000000..c8229fb
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-te/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"సమీప స్థలాలు"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-th/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-th/strings.xml
new file mode 100644
index 0000000..1167d2f
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-th/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"สถานที่ใกล้เคียง"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tl/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tl/strings.xml
new file mode 100644
index 0000000..49b949b
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tl/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Mga kalapit na lugar"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tr/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tr/strings.xml
new file mode 100644
index 0000000..0a16119
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tr/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Yakındaki yerler"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uk/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uk/strings.xml
new file mode 100644
index 0000000..a3936be
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uk/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Місця поблизу"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ur/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ur/strings.xml
new file mode 100644
index 0000000..1a220b3
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ur/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"قریبی مقامات"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uz/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uz/strings.xml
new file mode 100644
index 0000000..f104483
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uz/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Yaqin-atrofdagi joylar"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-vi/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-vi/strings.xml
new file mode 100644
index 0000000..90cea76
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-vi/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Địa điểm lân cận"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rCN/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000..e060cb5
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rCN/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"附近的地点"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rHK/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rHK/strings.xml
new file mode 100644
index 0000000..5cdf5b9
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rHK/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"附近地點"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rTW/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000..5cdf5b9
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rTW/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"附近地點"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zu/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zu/strings.xml
new file mode 100644
index 0000000..e4290f9
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zu/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Izindawo eziseduze"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml
new file mode 100644
index 0000000..ed80680
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<resources>
+  <!-- Label for a list of local search results [CHAR LIMIT=30]-->
+  <string name="nearby_places">Nearby places</string>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/shortcuts/AndroidManifest.xml b/java/com/android/dialer/shortcuts/AndroidManifest.xml
index 7132051..15f7794 100644
--- a/java/com/android/dialer/shortcuts/AndroidManifest.xml
+++ b/java/com/android/dialer/shortcuts/AndroidManifest.xml
@@ -20,7 +20,7 @@
     android:minSdkVersion="23"
     android:targetSdkVersion="26"/>
 
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
 
     <service
       android:exported="false"
diff --git a/java/com/android/dialer/shortcuts/IconFactory.java b/java/com/android/dialer/shortcuts/IconFactory.java
index a8c4ada..4ec964c 100644
--- a/java/com/android/dialer/shortcuts/IconFactory.java
+++ b/java/com/android/dialer/shortcuts/IconFactory.java
@@ -20,11 +20,16 @@
 import android.content.pm.ShortcutInfo;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
+import android.graphics.drawable.AdaptiveIconDrawable;
 import android.graphics.drawable.Drawable;
 import android.graphics.drawable.Icon;
 import android.net.Uri;
+import android.os.Build.VERSION;
+import android.os.Build.VERSION_CODES;
 import android.provider.ContactsContract;
 import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.annotation.RequiresApi;
 import android.support.annotation.WorkerThread;
 import android.support.v4.graphics.drawable.RoundedBitmapDrawable;
 import android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory;
@@ -83,6 +88,38 @@
         ContactsContract.Contacts.openContactPhotoInputStream(
             context.getContentResolver(), lookupUri, false /* preferHighres */);
 
+    return VERSION.SDK_INT >= VERSION_CODES.O
+        ? createAdaptiveIcon(displayName, lookupKey, inputStream)
+        : createFlatIcon(displayName, lookupKey, inputStream);
+  }
+
+  @RequiresApi(VERSION_CODES.O)
+  private Icon createAdaptiveIcon(
+      @NonNull String displayName, @NonNull String lookupKey, @Nullable InputStream inputStream) {
+    if (inputStream == null) {
+      LetterTileDrawable letterTileDrawable = new LetterTileDrawable(context.getResources());
+      // The adaptive icons clip the drawable to a safe area inside the drawable. Scale the letter
+      // so it fits inside the safe area.
+      letterTileDrawable.setScale(1f / (1f + AdaptiveIconDrawable.getExtraInsetFraction()));
+      letterTileDrawable.setCanonicalDialerLetterTileDetails(
+          displayName,
+          lookupKey,
+          LetterTileDrawable.SHAPE_RECTANGLE,
+          LetterTileDrawable.TYPE_DEFAULT);
+
+      int iconSize =
+          context
+              .getResources()
+              .getDimensionPixelSize(R.dimen.launcher_shortcut_adaptive_icon_size);
+      return Icon.createWithAdaptiveBitmap(
+          DrawableConverter.drawableToBitmap(letterTileDrawable, iconSize, iconSize));
+    }
+    Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
+    return Icon.createWithAdaptiveBitmap(bitmap);
+  }
+
+  private Icon createFlatIcon(
+      @NonNull String displayName, @NonNull String lookupKey, @Nullable InputStream inputStream) {
     Drawable drawable;
     if (inputStream == null) {
       // No photo for contact; use a letter tile.
diff --git a/java/com/android/dialer/shortcuts/Shortcuts.java b/java/com/android/dialer/shortcuts/Shortcuts.java
index b6a7fa8..c2bbb4d 100644
--- a/java/com/android/dialer/shortcuts/Shortcuts.java
+++ b/java/com/android/dialer/shortcuts/Shortcuts.java
@@ -18,7 +18,7 @@
 
 import android.content.Context;
 import android.support.annotation.NonNull;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 
 /** Checks if dynamic shortcuts should be enabled. */
 public class Shortcuts {
diff --git a/java/com/android/dialer/shortcuts/res/drawable-anydpi-v26/ic_shortcut_add_contact.xml b/java/com/android/dialer/shortcuts/res/drawable-anydpi-v26/ic_shortcut_add_contact.xml
new file mode 100644
index 0000000..07ed172
--- /dev/null
+++ b/java/com/android/dialer/shortcuts/res/drawable-anydpi-v26/ic_shortcut_add_contact.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
+  <background android:drawable="@color/shortcut_add_contact_background_color"/>
+
+  <foreground android:drawable="@drawable/ic_add_contact_foreground"/>
+</adaptive-icon>
diff --git a/java/com/android/dialer/shortcuts/res/drawable/ic_add_contact_foreground.xml b/java/com/android/dialer/shortcuts/res/drawable/ic_add_contact_foreground.xml
new file mode 100644
index 0000000..6bc1727
--- /dev/null
+++ b/java/com/android/dialer/shortcuts/res/drawable/ic_add_contact_foreground.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
+    android:gravity="center"
+    android:src="@drawable/quantum_ic_person_add_white_24"
+    android:tint="@color/shortcut_add_contact_foreground_color">
+
+</bitmap>
diff --git a/java/com/android/dialer/shortcuts/res/values/dimens.xml b/java/com/android/dialer/shortcuts/res/values/dimens.xml
index 2321256..369d38c 100644
--- a/java/com/android/dialer/shortcuts/res/values/dimens.xml
+++ b/java/com/android/dialer/shortcuts/res/values/dimens.xml
@@ -16,4 +16,5 @@
   -->
 <resources>
   <dimen name="launcher_shortcut_icon_size">48dp</dimen>
+  <dimen name="launcher_shortcut_adaptive_icon_size">108dp</dimen>
 </resources>
diff --git a/java/com/android/dialer/simulator/impl/SimulatorActionProvider.java b/java/com/android/dialer/simulator/impl/SimulatorActionProvider.java
index 8257d98..f2749b2 100644
--- a/java/com/android/dialer/simulator/impl/SimulatorActionProvider.java
+++ b/java/com/android/dialer/simulator/impl/SimulatorActionProvider.java
@@ -30,6 +30,7 @@
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
 import com.android.dialer.common.concurrent.DialerExecutors;
+import com.android.dialer.enrichedcall.simulator.EnrichedCallSimulatorActivity;
 import com.android.dialer.persistentlog.PersistentLogger;
 
 /** Implements the simulator submenu. */
@@ -114,6 +115,13 @@
                   .executeSerial(null);
               return true;
             });
+    subMenu
+        .add("Enriched call simulator")
+        .setOnMenuItemClickListener(
+            (item) -> {
+              context.startActivity(EnrichedCallSimulatorActivity.newIntent(context));
+              return true;
+            });
   }
 
   private void populateDatabase() {
diff --git a/java/com/android/dialer/simulator/impl/SimulatorContacts.java b/java/com/android/dialer/simulator/impl/SimulatorContacts.java
index c5e25b3..5bd2898 100644
--- a/java/com/android/dialer/simulator/impl/SimulatorContacts.java
+++ b/java/com/android/dialer/simulator/impl/SimulatorContacts.java
@@ -37,7 +37,7 @@
 import java.util.List;
 
 /** Populates the device database with contacts. */
-final class SimulatorContacts {
+public final class SimulatorContacts {
   // Phone numbers from https://www.google.com/about/company/facts/locations/
   private static final Contact[] SIMPLE_CONTACTS = {
     // US, contact with e164 number.
@@ -114,7 +114,7 @@
   };
 
   @WorkerThread
-  static void populateContacts(@NonNull Context context) {
+  public static void populateContacts(@NonNull Context context) {
     Assert.isWorkerThread();
     ArrayList<ContentProviderOperation> operations = new ArrayList<>();
     for (Contact contact : SIMPLE_CONTACTS) {
@@ -134,7 +134,7 @@
         ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
             .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, contact.getAccountType())
             .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, contact.getAccountName())
-            .withValue(ContactsContract.RawContacts.STARRED, contact.getIsStarred())
+            .withValue(ContactsContract.RawContacts.STARRED, contact.getIsStarred() ? 1 : 0)
             .withYieldAllowed(true)
             .build());
 
diff --git a/java/com/android/dialer/telecom/TelecomUtil.java b/java/com/android/dialer/telecom/TelecomUtil.java
index 87ddda5..573bfe2 100644
--- a/java/com/android/dialer/telecom/TelecomUtil.java
+++ b/java/com/android/dialer/telecom/TelecomUtil.java
@@ -29,21 +29,37 @@
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
 import android.text.TextUtils;
+import android.util.Pair;
 import com.android.dialer.common.LogUtil;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * Performs permission checks before calling into TelecomManager. Each method is self-explanatory -
  * perform the required check and return the fallback default if the permission is missing,
  * otherwise return the value from TelecomManager.
  */
-public class TelecomUtil {
+public abstract class TelecomUtil {
 
   private static final String TAG = "TelecomUtil";
   private static boolean sWarningLogged = false;
-  private static Boolean isDefaultDialerForTesting;
-  private static Boolean hasPermissionForTesting;
+
+  private static TelecomUtilImpl instance = new TelecomUtilImpl();
+
+  /**
+   * Cache for {@link #isVoicemailNumber(Context, PhoneAccountHandle, String)}. Both
+   * PhoneAccountHandle and number are cached because multiple numbers might be mapped to true, and
+   * comparing with {@link #getVoicemailNumber(Context, PhoneAccountHandle)} will not suffice.
+   */
+  private static final Map<Pair<PhoneAccountHandle, String>, Boolean> isVoicemailNumberCache =
+      new ConcurrentHashMap<>();
+
+  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+  public static void setInstanceForTesting(TelecomUtilImpl instanceForTesting) {
+    instance = instanceForTesting;
+  }
 
   public static void showInCallScreen(Context context, boolean showDialpad) {
     if (hasReadPhoneStatePermission(context)) {
@@ -125,18 +141,30 @@
   }
 
   public static boolean isInCall(Context context) {
-    if (hasReadPhoneStatePermission(context)) {
-      return getTelecomManager(context).isInCall();
-    }
-    return false;
+    return instance.isInCall(context);
   }
 
+  /**
+   * {@link TelecomManager#isVoiceMailNumber(PhoneAccountHandle, String)} takes about 10ms, which is
+   * way too slow for regular purposes. This method will cache the result for the life time of the
+   * process. The cache will not be invalidated, for example, if the voicemail number is changed by
+   * setting up apps like Google Voicemail, the result will be wrong. These events are rare.
+   */
   public static boolean isVoicemailNumber(
       Context context, PhoneAccountHandle accountHandle, String number) {
-    if (hasReadPhoneStatePermission(context)) {
-      return getTelecomManager(context).isVoiceMailNumber(accountHandle, number);
+    if (TextUtils.isEmpty(number)) {
+      return false;
     }
-    return false;
+    Pair<PhoneAccountHandle, String> cacheKey = new Pair<>(accountHandle, number);
+    if (isVoicemailNumberCache.containsKey(cacheKey)) {
+      return isVoicemailNumberCache.get(cacheKey);
+    }
+    boolean result = false;
+    if (hasReadPhoneStatePermission(context)) {
+      result = getTelecomManager(context).isVoiceMailNumber(accountHandle, number);
+    }
+    isVoicemailNumberCache.put(cacheKey, result);
+    return result;
   }
 
   @Nullable
@@ -189,43 +217,47 @@
   }
 
   private static boolean hasPermission(Context context, String permission) {
-    if (hasPermissionForTesting != null) {
-      return hasPermissionForTesting;
-    }
-    return ContextCompat.checkSelfPermission(context, permission)
-        == PackageManager.PERMISSION_GRANTED;
-  }
-
-  public static boolean isDefaultDialer(Context context) {
-    if (isDefaultDialerForTesting != null) {
-      return isDefaultDialerForTesting;
-    }
-    final boolean result =
-        TextUtils.equals(
-            context.getPackageName(), getTelecomManager(context).getDefaultDialerPackage());
-    if (result) {
-      sWarningLogged = false;
-    } else {
-      if (!sWarningLogged) {
-        // Log only once to prevent spam.
-        LogUtil.w(TAG, "Dialer is not currently set to be default dialer");
-        sWarningLogged = true;
-      }
-    }
-    return result;
+    return instance.hasPermission(context, permission);
   }
 
   private static TelecomManager getTelecomManager(Context context) {
     return (TelecomManager) context.getSystemService(Context.TELECOM_SERVICE);
   }
 
-  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
-  public static void setIsDefaultDialerForTesting(Boolean defaultDialer) {
-    isDefaultDialerForTesting = defaultDialer;
+  public static boolean isDefaultDialer(Context context) {
+    return instance.isDefaultDialer(context);
   }
 
-  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
-  public static void setHasPermissionForTesting(Boolean hasPermission) {
-    hasPermissionForTesting = hasPermission;
+  /** Contains an implementation for {@link TelecomUtil} methods */
+  @VisibleForTesting()
+  public static class TelecomUtilImpl {
+
+    public boolean isInCall(Context context) {
+      if (hasReadPhoneStatePermission(context)) {
+        return getTelecomManager(context).isInCall();
+      }
+      return false;
+    }
+
+    public boolean hasPermission(Context context, String permission) {
+      return ContextCompat.checkSelfPermission(context, permission)
+          == PackageManager.PERMISSION_GRANTED;
+    }
+
+    public boolean isDefaultDialer(Context context) {
+      final boolean result =
+          TextUtils.equals(
+              context.getPackageName(), getTelecomManager(context).getDefaultDialerPackage());
+      if (result) {
+        sWarningLogged = false;
+      } else {
+        if (!sWarningLogged) {
+          // Log only once to prevent spam.
+          LogUtil.w(TAG, "Dialer is not currently set to be default dialer");
+          sWarningLogged = true;
+        }
+      }
+      return result;
+    }
   }
 }
diff --git a/java/com/android/dialer/theme/res/values-af/strings.xml b/java/com/android/dialer/theme/res/values-af/strings.xml
index f263a81..17e6cea 100644
--- a/java/com/android/dialer/theme/res/values-af/strings.xml
+++ b/java/com/android/dialer/theme/res/values-af/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefoonhokkie"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Foon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameratoestemming is geaktiveer"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video-oproep"</string>
     <string name="call" msgid="3699617769606114168">"Bel"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-am/strings.xml b/java/com/android/dialer/theme/res/values-am/strings.xml
index 4f36244..5b0b2fd 100644
--- a/java/com/android/dialer/theme/res/values-am/strings.xml
+++ b/java/com/android/dialer/theme/res/values-am/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"የሕዝብ ስልክ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ስልክ"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"የካሜራ ፈቃድ ነቅቷል"</string>
+    <string name="video_call" msgid="8914878391104612532">"የቪዲዮ ጥሪ"</string>
     <string name="call" msgid="3699617769606114168">"ደውል"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ar/strings.xml b/java/com/android/dialer/theme/res/values-ar/strings.xml
index 951bde2..ea3468e 100644
--- a/java/com/android/dialer/theme/res/values-ar/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ar/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"هاتف يعمل بالعملة"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"الهاتف"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"تم تمكين إذن الكاميرا"</string>
+    <string name="video_call" msgid="8914878391104612532">"مكالمة فيديو"</string>
     <string name="call" msgid="3699617769606114168">"اتصال"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-az/strings.xml b/java/com/android/dialer/theme/res/values-az/strings.xml
index 08eaf33..91ead1b 100644
--- a/java/com/android/dialer/theme/res/values-az/strings.xml
+++ b/java/com/android/dialer/theme/res/values-az/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Taksofon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kamera icazəsi aktiv edildi"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video zəng"</string>
     <string name="call" msgid="3699617769606114168">"Zəng edin"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/theme/res/values-b+sr+Latn/strings.xml
index 01cdb47..a1e5965 100644
--- a/java/com/android/dialer/theme/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/theme/res/values-b+sr+Latn/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonska govornica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Omogućena je dozvola za kameru"</string>
+    <string name="video_call" msgid="8914878391104612532">"Uputi video poziv"</string>
     <string name="call" msgid="3699617769606114168">"Pozovi"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-be/strings.xml b/java/com/android/dialer/theme/res/values-be/strings.xml
index 49be019..881aa7f 100644
--- a/java/com/android/dialer/theme/res/values-be/strings.xml
+++ b/java/com/android/dialer/theme/res/values-be/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Таксафон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Тэлефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Уключаны дазвол на выкарыстанне камеры"</string>
+    <string name="video_call" msgid="8914878391104612532">"Відэавыклік"</string>
     <string name="call" msgid="3699617769606114168">"Выклікаць"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-bg/strings.xml b/java/com/android/dialer/theme/res/values-bg/strings.xml
index 87af9f0..debc238 100644
--- a/java/com/android/dialer/theme/res/values-bg/strings.xml
+++ b/java/com/android/dialer/theme/res/values-bg/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Обществен телефон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Активирано бе разрешението за камерата"</string>
+    <string name="video_call" msgid="8914878391104612532">"Видеообаждане"</string>
     <string name="call" msgid="3699617769606114168">"Обаждане"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-bn/strings.xml b/java/com/android/dialer/theme/res/values-bn/strings.xml
index ab1c65b..806ee8e 100644
--- a/java/com/android/dialer/theme/res/values-bn/strings.xml
+++ b/java/com/android/dialer/theme/res/values-bn/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"পে ফোন"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ফোন"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ক্যামেরার অনুমতি সক্ষম করা হয়েছে"</string>
+    <string name="video_call" msgid="8914878391104612532">"ভিডিও কল"</string>
     <string name="call" msgid="3699617769606114168">"কল করুন"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-bs/strings.xml b/java/com/android/dialer/theme/res/values-bs/strings.xml
index 01cdb47..bed71a2 100644
--- a/java/com/android/dialer/theme/res/values-bs/strings.xml
+++ b/java/com/android/dialer/theme/res/values-bs/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonska govornica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Dozvola za kameru je omogućena"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videopoziv"</string>
     <string name="call" msgid="3699617769606114168">"Pozovi"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ca/strings.xml b/java/com/android/dialer/theme/res/values-ca/strings.xml
index 1e21a1f..5140ca5 100644
--- a/java/com/android/dialer/theme/res/values-ca/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ca/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telèfon públic"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telèfon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"S\'ha activat el permís d\'accés a la càmera"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videotrucada"</string>
     <string name="call" msgid="3699617769606114168">"Truca"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-cs/strings.xml b/java/com/android/dialer/theme/res/values-cs/strings.xml
index ca7bad9..a951fe7 100644
--- a/java/com/android/dialer/theme/res/values-cs/strings.xml
+++ b/java/com/android/dialer/theme/res/values-cs/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonní automat"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Byl povolen přístup k fotoaparátu"</string>
+    <string name="video_call" msgid="8914878391104612532">"Zahájit videohovor"</string>
     <string name="call" msgid="3699617769606114168">"Volat"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-da/strings.xml b/java/com/android/dialer/theme/res/values-da/strings.xml
index c606b28..54f1850 100644
--- a/java/com/android/dialer/theme/res/values-da/strings.xml
+++ b/java/com/android/dialer/theme/res/values-da/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Mønttelefon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Opkald"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameratilladelse er aktiveret"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videoopkald"</string>
     <string name="call" msgid="3699617769606114168">"Ring op"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-de/strings.xml b/java/com/android/dialer/theme/res/values-de/strings.xml
index d214287..0c97581 100644
--- a/java/com/android/dialer/theme/res/values-de/strings.xml
+++ b/java/com/android/dialer/theme/res/values-de/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Münztelefon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Berechtigung für Kamera aktiviert"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videoanruf"</string>
     <string name="call" msgid="3699617769606114168">"Anrufen"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-el/strings.xml b/java/com/android/dialer/theme/res/values-el/strings.xml
index abe1d3f..1c34a69 100644
--- a/java/com/android/dialer/theme/res/values-el/strings.xml
+++ b/java/com/android/dialer/theme/res/values-el/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Τηλέφωνο με χρέωση"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Τηλέφωνο"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Το δικαίωμα χρήσης της κάμερας έχει ενεργοποιηθεί"</string>
+    <string name="video_call" msgid="8914878391104612532">"Βιντεοκλήση"</string>
     <string name="call" msgid="3699617769606114168">"Κλήση"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-en-rAU/strings.xml b/java/com/android/dialer/theme/res/values-en-rAU/strings.xml
index b086b4c..136d7df 100644
--- a/java/com/android/dialer/theme/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/theme/res/values-en-rAU/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Phone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Camera permission enabled"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video call"</string>
     <string name="call" msgid="3699617769606114168">"Call"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-en-rGB/strings.xml b/java/com/android/dialer/theme/res/values-en-rGB/strings.xml
index b086b4c..136d7df 100644
--- a/java/com/android/dialer/theme/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/theme/res/values-en-rGB/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Phone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Camera permission enabled"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video call"</string>
     <string name="call" msgid="3699617769606114168">"Call"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-en-rIN/strings.xml b/java/com/android/dialer/theme/res/values-en-rIN/strings.xml
index b086b4c..136d7df 100644
--- a/java/com/android/dialer/theme/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/theme/res/values-en-rIN/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Phone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Camera permission enabled"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video call"</string>
     <string name="call" msgid="3699617769606114168">"Call"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-es-rUS/strings.xml b/java/com/android/dialer/theme/res/values-es-rUS/strings.xml
index aee2d0a..90837b7 100644
--- a/java/com/android/dialer/theme/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/theme/res/values-es-rUS/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Teléfono público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Teléfono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Se activó el permiso de la cámara"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videollamada"</string>
     <string name="call" msgid="3699617769606114168">"Llamar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-es/strings.xml b/java/com/android/dialer/theme/res/values-es/strings.xml
index 343ac21..c2d3ee3 100644
--- a/java/com/android/dialer/theme/res/values-es/strings.xml
+++ b/java/com/android/dialer/theme/res/values-es/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Teléfono público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Teléfono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Se ha habilitado el acceso a la cámara"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videollamada"</string>
     <string name="call" msgid="3699617769606114168">"Llamar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-et/strings.xml b/java/com/android/dialer/theme/res/values-et/strings.xml
index 5b1e6c0..269fa64 100644
--- a/java/com/android/dialer/theme/res/values-et/strings.xml
+++ b/java/com/android/dialer/theme/res/values-et/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefoniautomaat"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kaameraluba on antud"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videokõne"</string>
     <string name="call" msgid="3699617769606114168">"Helista"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-eu/strings.xml b/java/com/android/dialer/theme/res/values-eu/strings.xml
index dbb4f70..14345f0 100644
--- a/java/com/android/dialer/theme/res/values-eu/strings.xml
+++ b/java/com/android/dialer/theme/res/values-eu/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefono publikoa"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefonoa"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kamera atzitzeko baimena eman da"</string>
+    <string name="video_call" msgid="8914878391104612532">"Bideo-deia"</string>
     <string name="call" msgid="3699617769606114168">"Deitu"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-fa/strings.xml b/java/com/android/dialer/theme/res/values-fa/strings.xml
index 99bed5f..f751f34 100644
--- a/java/com/android/dialer/theme/res/values-fa/strings.xml
+++ b/java/com/android/dialer/theme/res/values-fa/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="ID">%d</xliff:g> <xliff:g id="UNKNOWN">%s</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"تلفن عمومی"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"تلفن"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"مجوز دوربین فعال شد"</string>
+    <string name="video_call" msgid="8914878391104612532">"تماس ویدیویی"</string>
     <string name="call" msgid="3699617769606114168">"تماس"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-fi/strings.xml b/java/com/android/dialer/theme/res/values-fi/strings.xml
index a180be5..0c09d7f 100644
--- a/java/com/android/dialer/theme/res/values-fi/strings.xml
+++ b/java/com/android/dialer/theme/res/values-fi/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Maksupuhelin"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Puhelin"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameran käyttöoikeus myönnettiin"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videopuhelu"</string>
     <string name="call" msgid="3699617769606114168">"Soita"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-fr-rCA/strings.xml b/java/com/android/dialer/theme/res/values-fr-rCA/strings.xml
index 18a70bb..7d901ca 100644
--- a/java/com/android/dialer/theme/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/theme/res/values-fr-rCA/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Cabine téléphonique"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Téléphone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Autorisation d\'accès à l\'appareil photo activée"</string>
+    <string name="video_call" msgid="8914878391104612532">"Appel vidéo"</string>
     <string name="call" msgid="3699617769606114168">"Appeler"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-fr/strings.xml b/java/com/android/dialer/theme/res/values-fr/strings.xml
index 18a70bb..1c30ef1 100644
--- a/java/com/android/dialer/theme/res/values-fr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-fr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Cabine téléphonique"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Téléphone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Autorisation d\'accès à l\'appareil photo accordée"</string>
+    <string name="video_call" msgid="8914878391104612532">"Appel vidéo"</string>
     <string name="call" msgid="3699617769606114168">"Appeler"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-gl/strings.xml b/java/com/android/dialer/theme/res/values-gl/strings.xml
index fbbad6c..083d395 100644
--- a/java/com/android/dialer/theme/res/values-gl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-gl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Teléfono público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Teléfono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Activouse o permiso de acceso á cámara"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochamada"</string>
     <string name="call" msgid="3699617769606114168">"Chamar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-gu/strings.xml b/java/com/android/dialer/theme/res/values-gu/strings.xml
index 9b38dcd..4baba69 100644
--- a/java/com/android/dialer/theme/res/values-gu/strings.xml
+++ b/java/com/android/dialer/theme/res/values-gu/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"પેફોન"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ફોન"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"કૅમેરાની પરવાનગી સક્ષમ કરી"</string>
+    <string name="video_call" msgid="8914878391104612532">"વિડિઓ કૉલ"</string>
     <string name="call" msgid="3699617769606114168">"કૉલ કરો"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-hi/strings.xml b/java/com/android/dialer/theme/res/values-hi/strings.xml
index ee360b4..758be5d 100644
--- a/java/com/android/dialer/theme/res/values-hi/strings.xml
+++ b/java/com/android/dialer/theme/res/values-hi/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"पे-फ़ोन"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"फ़ोन"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"कैमरे की अनुमति सक्षम की गई"</string>
+    <string name="video_call" msgid="8914878391104612532">"वीडियो कॉल"</string>
     <string name="call" msgid="3699617769606114168">"कॉल करें"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-hr/strings.xml b/java/com/android/dialer/theme/res/values-hr/strings.xml
index 92e1956..89a5aee 100644
--- a/java/com/android/dialer/theme/res/values-hr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-hr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Javna telefonska govornica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Omogućen je pristup kameri"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videopoziv"</string>
     <string name="call" msgid="3699617769606114168">"Pozovi"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-hu/strings.xml b/java/com/android/dialer/theme/res/values-hu/strings.xml
index dfcc876..30051d4 100644
--- a/java/com/android/dialer/theme/res/values-hu/strings.xml
+++ b/java/com/android/dialer/theme/res/values-hu/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Nyilvános telefon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameraengedély megadva"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videohívás"</string>
     <string name="call" msgid="3699617769606114168">"Hívás"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-hy/strings.xml b/java/com/android/dialer/theme/res/values-hy/strings.xml
index 3b4e862..6577dab 100644
--- a/java/com/android/dialer/theme/res/values-hy/strings.xml
+++ b/java/com/android/dialer/theme/res/values-hy/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Բջջային տերմինալ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Հեռախոս"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Տեսախցիկից օգտվելու թույլտվությունը տրամադրված է"</string>
+    <string name="video_call" msgid="8914878391104612532">"Տեսազանգ"</string>
     <string name="call" msgid="3699617769606114168">"Զանգել"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-in/strings.xml b/java/com/android/dialer/theme/res/values-in/strings.xml
index eda15a2..d2d72b8 100644
--- a/java/com/android/dialer/theme/res/values-in/strings.xml
+++ b/java/com/android/dialer/theme/res/values-in/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telepon Umum"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telepon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Izin kamera diaktifkan"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video call"</string>
     <string name="call" msgid="3699617769606114168">"Telepon"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-is/strings.xml b/java/com/android/dialer/theme/res/values-is/strings.xml
index cda7fc8..ff3faf8 100644
--- a/java/com/android/dialer/theme/res/values-is/strings.xml
+++ b/java/com/android/dialer/theme/res/values-is/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Símasjálfsali"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Sími"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Myndavélarheimild virk"</string>
+    <string name="video_call" msgid="8914878391104612532">"Hringja myndsímtal"</string>
     <string name="call" msgid="3699617769606114168">"Hringja"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-it/strings.xml b/java/com/android/dialer/theme/res/values-it/strings.xml
index fa2caa6..4b26288 100644
--- a/java/com/android/dialer/theme/res/values-it/strings.xml
+++ b/java/com/android/dialer/theme/res/values-it/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Cabina telefonica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Autorizzazioni della fotocamera attivate"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochiamata"</string>
     <string name="call" msgid="3699617769606114168">"Chiama"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-iw/strings.xml b/java/com/android/dialer/theme/res/values-iw/strings.xml
index 18d87ea..09abf2e 100644
--- a/java/com/android/dialer/theme/res/values-iw/strings.xml
+++ b/java/com/android/dialer/theme/res/values-iw/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"טלפון ציבורי"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"טלפון"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"הרשאת הגישה למצלמה הופעלה"</string>
+    <string name="video_call" msgid="8914878391104612532">"שיחת וידאו"</string>
     <string name="call" msgid="3699617769606114168">"התקשר"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ja/strings.xml b/java/com/android/dialer/theme/res/values-ja/strings.xml
index 3921559..551d679 100644
--- a/java/com/android/dialer/theme/res/values-ja/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ja/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g>（<xliff:g id="ID">%d</xliff:g>）"</string>
     <string name="payphone" msgid="7106361320283710387">"公衆電話"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"電話"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"カメラへのアクセスを自動で許可しました"</string>
+    <string name="video_call" msgid="8914878391104612532">"ビデオハングアウト"</string>
     <string name="call" msgid="3699617769606114168">"発信"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ka/strings.xml b/java/com/android/dialer/theme/res/values-ka/strings.xml
index 18e7cb3..ab22595 100644
--- a/java/com/android/dialer/theme/res/values-ka/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ka/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"გადახდის ტელეფონი"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ტელეფონი"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"კამერაზე წვდომის ნებართვა ჩართულია"</string>
+    <string name="video_call" msgid="8914878391104612532">"ვიდეოზარი"</string>
     <string name="call" msgid="3699617769606114168">"დარეკვა"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-kk/strings.xml b/java/com/android/dialer/theme/res/values-kk/strings.xml
index f9c62d3..d3a1b7b 100644
--- a/java/com/android/dialer/theme/res/values-kk/strings.xml
+++ b/java/com/android/dialer/theme/res/values-kk/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Автомат-телефон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Камера рұқсаты қосылды"</string>
+    <string name="video_call" msgid="8914878391104612532">"Бейне қоңырау"</string>
     <string name="call" msgid="3699617769606114168">"Қоңырау шалу"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-km/strings.xml b/java/com/android/dialer/theme/res/values-km/strings.xml
index 7e375cf..900f1d6 100644
--- a/java/com/android/dialer/theme/res/values-km/strings.xml
+++ b/java/com/android/dialer/theme/res/values-km/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ទូរស័ព្ទសាធារណៈ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ទូរស័ព្ទ"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"បានបើក​ការអនុញ្ញាត​កាមេរ៉ា"</string>
+    <string name="video_call" msgid="8914878391104612532">"ការ​ហៅវីដេអូ"</string>
     <string name="call" msgid="3699617769606114168">"ហៅ​ទូរសព្ទ"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-kn/strings.xml b/java/com/android/dialer/theme/res/values-kn/strings.xml
index 718fea0..ab9f816 100644
--- a/java/com/android/dialer/theme/res/values-kn/strings.xml
+++ b/java/com/android/dialer/theme/res/values-kn/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ಪೇಫೋನ್"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ಫೋನ್"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ಕ್ಯಾಮರಾ ಅನುಮತಿಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
+    <string name="video_call" msgid="8914878391104612532">"ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="call" msgid="3699617769606114168">"ಕರೆಮಾಡಿ"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ko/strings.xml b/java/com/android/dialer/theme/res/values-ko/strings.xml
index 29f608c..b5ac556 100644
--- a/java/com/android/dialer/theme/res/values-ko/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ko/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"공중전화"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"휴대전화"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"카메라 권한 사용 가능"</string>
+    <string name="video_call" msgid="8914878391104612532">"화상 통화"</string>
     <string name="call" msgid="3699617769606114168">"전화"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ky/strings.xml b/java/com/android/dialer/theme/res/values-ky/strings.xml
index 905b8c5..0a9bec2 100644
--- a/java/com/android/dialer/theme/res/values-ky/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ky/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Таксофон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Камеранын уруксаты иштетилди"</string>
+    <string name="video_call" msgid="8914878391104612532">"Видео чалуу"</string>
     <string name="call" msgid="3699617769606114168">"Чалуу"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-lo/strings.xml b/java/com/android/dialer/theme/res/values-lo/strings.xml
index 6826a75..d33d43e 100644
--- a/java/com/android/dialer/theme/res/values-lo/strings.xml
+++ b/java/com/android/dialer/theme/res/values-lo/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ຕູ້​ໂທ​ລະ​ສັບ​ສາ​ທາ​ລະ​ນະ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ໂທລະສັບ"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ເປີດໃຊ້ສິດອະນຸຍາດກ້ອງຖ່າຍຮູບແລ້ວ"</string>
+    <string name="video_call" msgid="8914878391104612532">"ໂທວິດີໂອ"</string>
     <string name="call" msgid="3699617769606114168">"ໂທ"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-lt/strings.xml b/java/com/android/dialer/theme/res/values-lt/strings.xml
index 43469a1..fdf31e2 100644
--- a/java/com/android/dialer/theme/res/values-lt/strings.xml
+++ b/java/com/android/dialer/theme/res/values-lt/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="ID">%d</xliff:g> <xliff:g id="UNKNOWN">%s</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Taksofonas"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefonas"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Fotoaparato leidimas įgalintas"</string>
+    <string name="video_call" msgid="8914878391104612532">"Vaizdo skambutis"</string>
     <string name="call" msgid="3699617769606114168">"Skambinti"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-lv/strings.xml b/java/com/android/dialer/theme/res/values-lv/strings.xml
index f9a6dec..031c5bd 100644
--- a/java/com/android/dialer/theme/res/values-lv/strings.xml
+++ b/java/com/android/dialer/theme/res/values-lv/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Maksas tālrunis"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Tālrunis"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameras atļauja iespējota"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videozvans"</string>
     <string name="call" msgid="3699617769606114168">"Zvanīt"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-mk/strings.xml b/java/com/android/dialer/theme/res/values-mk/strings.xml
index 1328edb..d89d12e 100644
--- a/java/com/android/dialer/theme/res/values-mk/strings.xml
+++ b/java/com/android/dialer/theme/res/values-mk/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Говорница"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Дозволата за камера е овозможена"</string>
+    <string name="video_call" msgid="8914878391104612532">"Воспоставете видеоповик"</string>
     <string name="call" msgid="3699617769606114168">"Повикајте"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ml/strings.xml b/java/com/android/dialer/theme/res/values-ml/strings.xml
index 03f9533..f02ceeb 100644
--- a/java/com/android/dialer/theme/res/values-ml/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ml/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"പണം നൽകി ഉപയോഗിക്കുന്ന ഫോൺ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ഫോണ്‍"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ക്യാമറ അനുമതി നൽകി"</string>
+    <string name="video_call" msgid="8914878391104612532">"വീഡിയോ കോള്‍"</string>
     <string name="call" msgid="3699617769606114168">"വിളിക്കുക"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-mn/strings.xml b/java/com/android/dialer/theme/res/values-mn/strings.xml
index c47f083..7a07e5d 100644
--- a/java/com/android/dialer/theme/res/values-mn/strings.xml
+++ b/java/com/android/dialer/theme/res/values-mn/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Утас"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Камерын зөвшөөрөл идэвхжсэн"</string>
+    <string name="video_call" msgid="8914878391104612532">"Видео дуудлага"</string>
     <string name="call" msgid="3699617769606114168">"Залгах"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-mr/strings.xml b/java/com/android/dialer/theme/res/values-mr/strings.xml
index 41a9c96..eeb9afa 100644
--- a/java/com/android/dialer/theme/res/values-mr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-mr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"सार्वजनिक फोन"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"फोन"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"कॅमेरा परवानगी सक्षम केली"</string>
+    <string name="video_call" msgid="8914878391104612532">"व्हिडिओ कॉल"</string>
     <string name="call" msgid="3699617769606114168">"कॉल करा"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ms/strings.xml b/java/com/android/dialer/theme/res/values-ms/strings.xml
index b28fe26..2e424fd 100644
--- a/java/com/android/dialer/theme/res/values-ms/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ms/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefon Awam"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kebenaran kamera didayakan"</string>
+    <string name="video_call" msgid="8914878391104612532">"Panggilan video"</string>
     <string name="call" msgid="3699617769606114168">"Panggil"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-my/strings.xml b/java/com/android/dialer/theme/res/values-my/strings.xml
index eb21b6e..97b871b 100644
--- a/java/com/android/dialer/theme/res/values-my/strings.xml
+++ b/java/com/android/dialer/theme/res/values-my/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ငွေပေးရသည့်ဖုန်း"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ဖုန်း"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ကင်မရာအသုံးပြုခွင့် ဖွင့်ထားပါသည်"</string>
+    <string name="video_call" msgid="8914878391104612532">"ဗီဒီယိုခေါ်ဆိုမှု"</string>
     <string name="call" msgid="3699617769606114168">"ခေါ်ဆိုရန်"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-nb/strings.xml b/java/com/android/dialer/theme/res/values-nb/strings.xml
index dcd9b17..7587b7e 100644
--- a/java/com/android/dialer/theme/res/values-nb/strings.xml
+++ b/java/com/android/dialer/theme/res/values-nb/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonkiosk"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameratillatelsen er aktivert"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videosamtale"</string>
     <string name="call" msgid="3699617769606114168">"Ring"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ne/strings.xml b/java/com/android/dialer/theme/res/values-ne/strings.xml
index 383ac2c..af1ad5e 100644
--- a/java/com/android/dialer/theme/res/values-ne/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ne/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"पेफोन"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"फोन"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"क्यामेरा सम्बन्धी अनुमतिहरूलाई सक्षम पारियो"</string>
+    <string name="video_call" msgid="8914878391104612532">"भिडियो कल"</string>
     <string name="call" msgid="3699617769606114168">"कल गर्नुहोस्"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-nl/strings.xml b/java/com/android/dialer/theme/res/values-nl/strings.xml
index 9635708..ab51c97 100644
--- a/java/com/android/dialer/theme/res/values-nl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-nl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefooncel"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefoon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Camerarechten ingeschakeld"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videogesprek"</string>
     <string name="call" msgid="3699617769606114168">"Bellen"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-no/strings.xml b/java/com/android/dialer/theme/res/values-no/strings.xml
index dcd9b17..7587b7e 100644
--- a/java/com/android/dialer/theme/res/values-no/strings.xml
+++ b/java/com/android/dialer/theme/res/values-no/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonkiosk"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameratillatelsen er aktivert"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videosamtale"</string>
     <string name="call" msgid="3699617769606114168">"Ring"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pa/strings.xml b/java/com/android/dialer/theme/res/values-pa/strings.xml
index dc23b7a..8784bca 100644
--- a/java/com/android/dialer/theme/res/values-pa/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pa/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ਪੇਫੋਨ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ਫੋਨ"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ਕੈਮਰਾ ਇਜਾਜ਼ਤ ਨੂੰ ਯੋਗ ਬਣਾਇਆ ਗਿਆ ਹੈ"</string>
+    <string name="video_call" msgid="8914878391104612532">"ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="call" msgid="3699617769606114168">"ਕਾਲ ਕਰੋ"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pl/strings.xml b/java/com/android/dialer/theme/res/values-pl/strings.xml
index 1ebaad2..246261e 100644
--- a/java/com/android/dialer/theme/res/values-pl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Automat telefoniczny"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Uprawnienia do korzystania z aparatu zostały włączone"</string>
+    <string name="video_call" msgid="8914878391104612532">"Rozmowa wideo"</string>
     <string name="call" msgid="3699617769606114168">"Zadzwoń"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pt-rBR/strings.xml b/java/com/android/dialer/theme/res/values-pt-rBR/strings.xml
index 6caf87c..c1356d9 100644
--- a/java/com/android/dialer/theme/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pt-rBR/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefone público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Permissão de câmera ativada"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochamada"</string>
     <string name="call" msgid="3699617769606114168">"Ligar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pt-rPT/strings.xml b/java/com/android/dialer/theme/res/values-pt-rPT/strings.xml
index ef7c7d6..2b46e44 100644
--- a/java/com/android/dialer/theme/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pt-rPT/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefone público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Autorização da câmara ativada"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochamada"</string>
     <string name="call" msgid="3699617769606114168">"Telefonar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pt/strings.xml b/java/com/android/dialer/theme/res/values-pt/strings.xml
index 6caf87c..c1356d9 100644
--- a/java/com/android/dialer/theme/res/values-pt/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pt/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefone público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Permissão de câmera ativada"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochamada"</string>
     <string name="call" msgid="3699617769606114168">"Ligar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ro/strings.xml b/java/com/android/dialer/theme/res/values-ro/strings.xml
index 4d0c09b..8978e92 100644
--- a/java/com/android/dialer/theme/res/values-ro/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ro/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefon public"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Permisiunea pentru cameră a fost activată."</string>
+    <string name="video_call" msgid="8914878391104612532">"Apel video"</string>
     <string name="call" msgid="3699617769606114168">"Apelați"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ru/strings.xml b/java/com/android/dialer/theme/res/values-ru/strings.xml
index aeab136..a155052 100644
--- a/java/com/android/dialer/theme/res/values-ru/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ru/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Телефон-автомат"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Доступ к камере разрешен"</string>
+    <string name="video_call" msgid="8914878391104612532">"Видеовызов"</string>
     <string name="call" msgid="3699617769606114168">"Позвонить"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-si/strings.xml b/java/com/android/dialer/theme/res/values-si/strings.xml
index ba3bb05..424a112 100644
--- a/java/com/android/dialer/theme/res/values-si/strings.xml
+++ b/java/com/android/dialer/theme/res/values-si/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"පේෆෝනය"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"දුරකථනය"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"කැමරා අවසර සබල කර ඇත"</string>
+    <string name="video_call" msgid="8914878391104612532">"වීඩියෝ ඇමතුම"</string>
     <string name="call" msgid="3699617769606114168">"ඇමතුම"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sk/strings.xml b/java/com/android/dialer/theme/res/values-sk/strings.xml
index 6863463..411b85e 100644
--- a/java/com/android/dialer/theme/res/values-sk/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sk/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefónny automat"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefón"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Povolenie pre fotoaparát je aktivované"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videohovor"</string>
     <string name="call" msgid="3699617769606114168">"Volať"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sl/strings.xml b/java/com/android/dialer/theme/res/values-sl/strings.xml
index 1b1776a..85a3e2b 100644
--- a/java/com/android/dialer/theme/res/values-sl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonska govorilnica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Dovoljenje za dostop do fotoaparata je omogočeno"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videoklic"</string>
     <string name="call" msgid="3699617769606114168">"Pokliči"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sq/strings.xml b/java/com/android/dialer/theme/res/values-sq/strings.xml
index 0d7084a..5cbd587 100644
--- a/java/com/android/dialer/theme/res/values-sq/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sq/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefon me pagesë"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefoni"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Leja e kamerës është aktivizuar"</string>
+    <string name="video_call" msgid="8914878391104612532">"Telefonatë me video"</string>
     <string name="call" msgid="3699617769606114168">"Telefono"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sr/strings.xml b/java/com/android/dialer/theme/res/values-sr/strings.xml
index a744e95..310da73 100644
--- a/java/com/android/dialer/theme/res/values-sr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Телефонска говорница"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Омогућена је дозвола за камеру"</string>
+    <string name="video_call" msgid="8914878391104612532">"Упути видео позив"</string>
     <string name="call" msgid="3699617769606114168">"Позови"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sv/strings.xml b/java/com/android/dialer/theme/res/values-sv/strings.xml
index f409807..af8e5f7 100644
--- a/java/com/android/dialer/theme/res/values-sv/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sv/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonautomat"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kamerabehörighet har aktiverats"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videosamtal"</string>
     <string name="call" msgid="3699617769606114168">"Ring"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sw/strings.xml b/java/com/android/dialer/theme/res/values-sw/strings.xml
index a2f9888..31615fe 100644
--- a/java/com/android/dialer/theme/res/values-sw/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sw/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Simu ya kulipia"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Simu"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Imewasha ruhusa ya kamera"</string>
+    <string name="video_call" msgid="8914878391104612532">"Simu ya video"</string>
     <string name="call" msgid="3699617769606114168">"Piga simu"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ta/strings.xml b/java/com/android/dialer/theme/res/values-ta/strings.xml
index a4f55f5..ab15f0b 100644
--- a/java/com/android/dialer/theme/res/values-ta/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ta/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"கட்டணத் தொலைபேசி"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"மொபைல்"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"கேமராவிற்கான அனுமதி இயக்கப்பட்டது"</string>
+    <string name="video_call" msgid="8914878391104612532">"வீடியோ அழைப்பு"</string>
     <string name="call" msgid="3699617769606114168">"அழை"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-te/strings.xml b/java/com/android/dialer/theme/res/values-te/strings.xml
index 59f00ca..4a6fca1 100644
--- a/java/com/android/dialer/theme/res/values-te/strings.xml
+++ b/java/com/android/dialer/theme/res/values-te/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"పే ఫోన్"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ఫోన్"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"కెమెరా అనుమతిని ప్రారంభించాము"</string>
+    <string name="video_call" msgid="8914878391104612532">"వీడియో కాల్"</string>
     <string name="call" msgid="3699617769606114168">"కాల్ చేయి"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-th/strings.xml b/java/com/android/dialer/theme/res/values-th/strings.xml
index 3870b4d..51db053 100644
--- a/java/com/android/dialer/theme/res/values-th/strings.xml
+++ b/java/com/android/dialer/theme/res/values-th/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"โทรศัพท์สาธารณะ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"โทรศัพท์"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ให้สิทธิ์เข้าถึงกล้องถ่ายรูปแล้ว"</string>
+    <string name="video_call" msgid="8914878391104612532">"แฮงเอาท์วิดีโอ"</string>
     <string name="call" msgid="3699617769606114168">"โทร"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-tl/strings.xml b/java/com/android/dialer/theme/res/values-tl/strings.xml
index 8169278..97f69ec 100644
--- a/java/com/android/dialer/theme/res/values-tl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-tl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telepono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Na-enable ang pahintulot sa camera"</string>
+    <string name="video_call" msgid="8914878391104612532">"Mag-video call"</string>
     <string name="call" msgid="3699617769606114168">"Tawag"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-tr/strings.xml b/java/com/android/dialer/theme/res/values-tr/strings.xml
index c11cd13..b38f067 100644
--- a/java/com/android/dialer/theme/res/values-tr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-tr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Ankesörlü telefon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kamera izni etkinleştirildi"</string>
+    <string name="video_call" msgid="8914878391104612532">"Görüntülü görüşme"</string>
     <string name="call" msgid="3699617769606114168">"Telefon et"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-uk/strings.xml b/java/com/android/dialer/theme/res/values-uk/strings.xml
index c87fe89..f070277 100644
--- a/java/com/android/dialer/theme/res/values-uk/strings.xml
+++ b/java/com/android/dialer/theme/res/values-uk/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Таксофон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Камері надано дозвіл"</string>
+    <string name="video_call" msgid="8914878391104612532">"Відеодзвінок"</string>
     <string name="call" msgid="3699617769606114168">"Виклик"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ur/strings.xml b/java/com/android/dialer/theme/res/values-ur/strings.xml
index abc0d6d..e9a4b44 100644
--- a/java/com/android/dialer/theme/res/values-ur/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ur/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"پے فون"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"فون"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"کیمرا کی اجازت فعال ہے"</string>
+    <string name="video_call" msgid="8914878391104612532">"ویڈیو کال"</string>
     <string name="call" msgid="3699617769606114168">"کال کریں"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-uz/strings.xml b/java/com/android/dialer/theme/res/values-uz/strings.xml
index 2889f3f..2bbaf20 100644
--- a/java/com/android/dialer/theme/res/values-uz/strings.xml
+++ b/java/com/android/dialer/theme/res/values-uz/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Taksofon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameraga kirishga ruxsat berildi"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video suhbat"</string>
     <string name="call" msgid="3699617769606114168">"Chaqirish"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-vi/strings.xml b/java/com/android/dialer/theme/res/values-vi/strings.xml
index b014516..fae3180 100644
--- a/java/com/android/dialer/theme/res/values-vi/strings.xml
+++ b/java/com/android/dialer/theme/res/values-vi/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Điện thoại công cộng"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Điện thoại"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Đã bật quyền sử dụng máy ảnh"</string>
+    <string name="video_call" msgid="8914878391104612532">"Gọi điện video"</string>
     <string name="call" msgid="3699617769606114168">"Gọi"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-zh-rCN/strings.xml b/java/com/android/dialer/theme/res/values-zh-rCN/strings.xml
index baff752..2e60962 100644
--- a/java/com/android/dialer/theme/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/theme/res/values-zh-rCN/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"公用电话"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"电话"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"已启用相机使用权限"</string>
+    <string name="video_call" msgid="8914878391104612532">"视频通话"</string>
     <string name="call" msgid="3699617769606114168">"拨打电话"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-zh-rHK/strings.xml b/java/com/android/dialer/theme/res/values-zh-rHK/strings.xml
index 8b26663..7b08024 100644
--- a/java/com/android/dialer/theme/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/theme/res/values-zh-rHK/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"公共電話"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"電話"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"已啟用相機權限"</string>
+    <string name="video_call" msgid="8914878391104612532">"視像通話"</string>
     <string name="call" msgid="3699617769606114168">"通話"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-zh-rTW/strings.xml b/java/com/android/dialer/theme/res/values-zh-rTW/strings.xml
index 24a5c10..57d7fe2 100644
--- a/java/com/android/dialer/theme/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/theme/res/values-zh-rTW/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"公用電話"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"電話"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"已啟用相機權限"</string>
+    <string name="video_call" msgid="8914878391104612532">"視訊通話"</string>
     <string name="call" msgid="3699617769606114168">"撥號"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-zu/strings.xml b/java/com/android/dialer/theme/res/values-zu/strings.xml
index 96cd798..d0dd728 100644
--- a/java/com/android/dialer/theme/res/values-zu/strings.xml
+++ b/java/com/android/dialer/theme/res/values-zu/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Ucingo olufakwa imali"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Ifoni"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Imvume yekhamera inikwe amandla"</string>
+    <string name="video_call" msgid="8914878391104612532">"Ikholi yevidiyo"</string>
     <string name="call" msgid="3699617769606114168">"Shaya"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values/strings.xml b/java/com/android/dialer/theme/res/values/strings.xml
index a14693f..af61d35 100644
--- a/java/com/android/dialer/theme/res/values/strings.xml
+++ b/java/com/android/dialer/theme/res/values/strings.xml
@@ -30,6 +30,12 @@
        used in the Launcher icon. -->
   <string name="launcherActivityLabel">Phone</string>
 
+  <!-- Text presented to the user explaining that we have enabled the camera permission automatically -->
+  <string name="camera_privacy_text">Camera permission enabled</string>
+
+  <!-- text on a button, Video call, as in to place a video call. -->
+  <string name="video_call">Video call</string>
+
   <!-- Label shown on the 'positive' button for the dialog. Indicates that the call will proceed -->
   <string name="call">Call</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values/themes.xml b/java/com/android/dialer/theme/res/values/themes.xml
index 0d0c45f..1246826 100644
--- a/java/com/android/dialer/theme/res/values/themes.xml
+++ b/java/com/android/dialer/theme/res/values/themes.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
 <resources>
 
   <style name="DialerThemeBase" parent="@style/Theme.AppCompat.Light.DarkActionBar">
@@ -19,6 +34,20 @@
     <item name="actionBarSize">@dimen/action_bar_height</item>
   </style>
 
+  <!-- Should be kept in sync with the theme above (minus anything related to actionbars -->
+  <style name="DialerThemeBase.NoActionBar" parent="@style/Theme.AppCompat.Light.NoActionBar">
+    <item name="android:textColorPrimary">@color/dialer_primary_text_color</item>
+    <item name="android:textColorSecondary">@color/dialer_secondary_text_color</item>
+    <!-- This is used for title bar color in recents -->
+    <item name="android:colorPrimary">@color/titlebar_in_recents_background_color</item>
+    <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item>
+    <item name="android:colorControlActivated">@color/dialer_theme_color</item>
+    <item name="android:colorButtonNormal">@color/dialer_theme_color</item>
+    <item name="android:colorAccent">@color/dialtacts_theme_color</item>
+    <item name="android:alertDialogTheme">@style/AlertDialogTheme</item>
+    <item name="android:textAppearanceButton">@style/DialerButtonTextStyle</item>
+  </style>
+
   <style name="Theme.AppCompat.Translucent" parent="Theme.AppCompat.NoActionBar">
     <item name="android:windowNoTitle">true</item>
     <item name="android:windowBackground">@android:color/transparent</item>
@@ -26,4 +55,18 @@
     <item name="android:windowIsTranslucent">true</item>
     <item name="android:windowAnimationStyle">@android:style/Animation</item>
   </style>
+
+  <style name="PrimaryText">
+    <item name="android:textColor">#DE000000</item>
+    <item name="android:textSize">16sp</item>
+    <item name="android:ellipsize">end</item>
+    <item name="android:maxLines">1</item>
+  </style>
+
+  <style name="SecondaryText">
+    <item name="android:textColor">#8A000000</item>
+    <item name="android:textSize">14sp</item>
+    <item name="android:ellipsize">end</item>
+    <item name="android:maxLines">1</item>
+  </style>
 </resources>
diff --git a/java/com/android/dialer/util/CallUtil.java b/java/com/android/dialer/util/CallUtil.java
index 81a4bb2..0afe930 100644
--- a/java/com/android/dialer/util/CallUtil.java
+++ b/java/com/android/dialer/util/CallUtil.java
@@ -21,6 +21,7 @@
 import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
 import java.util.List;
@@ -40,6 +41,9 @@
    */
   public static final int VIDEO_CALLING_PRESENCE = 2;
 
+  private static boolean hasInitializedIsVideoEnabledState;
+  private static boolean cachedIsVideoEnabledState;
+
   /** Return Uri with an appropriate scheme, accepting both SIP and usual phone call numbers. */
   public static Uri getCallUri(String number) {
     if (PhoneNumberHelper.isUriNumber(number)) {
@@ -102,7 +106,23 @@
    *     false} otherwise.
    */
   public static boolean isVideoEnabled(Context context) {
-    return (getVideoCallingAvailability(context) & VIDEO_CALLING_ENABLED) != 0;
+    boolean isVideoEnabled = (getVideoCallingAvailability(context) & VIDEO_CALLING_ENABLED) != 0;
+
+    // Log everytime the video enabled state changes.
+    if (!hasInitializedIsVideoEnabledState) {
+      LogUtil.i("CallUtil.isVideoEnabled", "isVideoEnabled: " + isVideoEnabled);
+      hasInitializedIsVideoEnabledState = true;
+      cachedIsVideoEnabledState = isVideoEnabled;
+    } else if (cachedIsVideoEnabledState != isVideoEnabled) {
+      LogUtil.i(
+          "CallUtil.isVideoEnabled",
+          "isVideoEnabled changed from %b to %b",
+          cachedIsVideoEnabledState,
+          isVideoEnabled);
+      cachedIsVideoEnabledState = isVideoEnabled;
+    }
+
+    return isVideoEnabled;
   }
 
   /**
diff --git a/java/com/android/dialer/util/PermissionsUtil.java b/java/com/android/dialer/util/PermissionsUtil.java
index 466e862..3482831 100644
--- a/java/com/android/dialer/util/PermissionsUtil.java
+++ b/java/com/android/dialer/util/PermissionsUtil.java
@@ -16,15 +16,33 @@
 
 package com.android.dialer.util;
 
+import static android.Manifest.permission.ACCESS_COARSE_LOCATION;
+import static android.Manifest.permission.ACCESS_FINE_LOCATION;
+import static android.Manifest.permission.ADD_VOICEMAIL;
+import static android.Manifest.permission.CALL_PHONE;
+import static android.Manifest.permission.MODIFY_PHONE_STATE;
+import static android.Manifest.permission.READ_CALL_LOG;
+import static android.Manifest.permission.READ_CONTACTS;
+import static android.Manifest.permission.READ_PHONE_STATE;
+import static android.Manifest.permission.READ_VOICEMAIL;
+import static android.Manifest.permission.WRITE_CALL_LOG;
+import static android.Manifest.permission.WRITE_CONTACTS;
+import static android.Manifest.permission.WRITE_VOICEMAIL;
+
 import android.Manifest.permission;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.pm.PackageManager;
+import android.support.annotation.NonNull;
 import android.support.v4.content.ContextCompat;
 import android.support.v4.content.LocalBroadcastManager;
 import com.android.dialer.common.LogUtil;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
 
 /** Utility class to help with runtime permissions. */
 public class PermissionsUtil {
@@ -32,6 +50,27 @@
   private static final String PERMISSION_PREFERENCE = "dialer_permissions";
   private static final String CEQUINT_PERMISSION = "com.cequint.ecid.CALLER_ID_LOOKUP";
 
+  // Permissions list retrieved from application manifest.
+  // Starting in Android O Permissions must be explicitly enumerated:
+  // https://developer.android.com/preview/behavior-changes.html#rmp
+  public static final List<String> allPhoneGroupPermissionsUsedInDialer =
+      Collections.unmodifiableList(
+          Arrays.asList(
+              READ_CALL_LOG,
+              WRITE_CALL_LOG,
+              READ_PHONE_STATE,
+              MODIFY_PHONE_STATE,
+              CALL_PHONE,
+              ADD_VOICEMAIL,
+              WRITE_VOICEMAIL,
+              READ_VOICEMAIL));
+
+  public static final List<String> allContactsGroupPermissionsUsedInDialer =
+      Collections.unmodifiableList(Arrays.asList(READ_CONTACTS, WRITE_CONTACTS));
+
+  public static final List<String> allLocationGroupPermissionsUsedInDialer =
+      Collections.unmodifiableList(Arrays.asList(ACCESS_FINE_LOCATION, ACCESS_COARSE_LOCATION));
+
   public static boolean hasPhonePermissions(Context context) {
     return hasPermission(context, permission.CALL_PHONE);
   }
@@ -147,4 +186,25 @@
     final Intent intent = new Intent(permission);
     LocalBroadcastManager.getInstance(context).sendBroadcast(intent);
   }
+
+  /**
+   * Returns a list of permissions currently not granted to the application from the supplied list.
+   *
+   * @param context - The Application context.
+   * @param permissionsList - A list of permissions to check if the current application has been
+   *     granted.
+   * @return An array of permissions that are currently DENIED to the application; a subset of
+   *     permissionsList.
+   */
+  @NonNull
+  public static String[] getPermissionsCurrentlyDenied(
+      @NonNull Context context, @NonNull List<String> permissionsList) {
+    List<String> permissionsCurrentlyDenied = new ArrayList<>();
+    for (String permission : permissionsList) {
+      if (!hasPermission(context, permission)) {
+        permissionsCurrentlyDenied.add(permission);
+      }
+    }
+    return permissionsCurrentlyDenied.toArray(new String[permissionsCurrentlyDenied.size()]);
+  }
 }
diff --git a/java/com/android/dialer/widget/DialerToolbar.java b/java/com/android/dialer/widget/DialerToolbar.java
index 9e10583..fe0e861 100644
--- a/java/com/android/dialer/widget/DialerToolbar.java
+++ b/java/com/android/dialer/widget/DialerToolbar.java
@@ -41,6 +41,11 @@
     setNavigationIcon(R.drawable.quantum_ic_close_white_24);
     setNavigationContentDescription(R.string.toolbar_close);
     setNavigationOnClickListener(v -> ((Activity) context).finish());
+    setPaddingRelative(
+        getPaddingStart(),
+        getPaddingTop(),
+        getResources().getDimensionPixelSize(R.dimen.toolbar_end_padding),
+        getPaddingBottom());
   }
 
   @Override
diff --git a/java/com/android/dialer/widget/EmptyContentView.java b/java/com/android/dialer/widget/EmptyContentView.java
new file mode 100644
index 0000000..a76ab98
--- /dev/null
+++ b/java/com/android/dialer/widget/EmptyContentView.java
@@ -0,0 +1,127 @@
+/*
+ * Copyright (C) 2015 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.dialer.widget;
+
+import android.content.Context;
+import android.support.annotation.StringRes;
+import android.util.AttributeSet;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.TextView;
+
+public class EmptyContentView extends LinearLayout implements View.OnClickListener {
+
+  /** Listener to call when action button is clicked. */
+  public interface OnEmptyViewActionButtonClickedListener {
+    void onEmptyViewActionButtonClicked();
+  }
+
+  public static final int NO_LABEL = 0;
+  public static final int NO_IMAGE = 0;
+
+  private ImageView mImageView;
+  private TextView mDescriptionView;
+  private TextView mActionView;
+  private OnEmptyViewActionButtonClickedListener mOnActionButtonClickedListener;
+
+  private @StringRes int actionLabel;
+
+  public EmptyContentView(Context context) {
+    this(context, null);
+  }
+
+  public EmptyContentView(Context context, AttributeSet attrs) {
+    this(context, attrs, 0);
+  }
+
+  public EmptyContentView(Context context, AttributeSet attrs, int defStyleAttr) {
+    this(context, attrs, defStyleAttr, 0);
+  }
+
+  public EmptyContentView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
+    super(context, attrs, defStyleAttr, defStyleRes);
+    inflateLayout();
+
+    // Don't let touches fall through the empty view.
+    setClickable(true);
+    mImageView = (ImageView) findViewById(R.id.empty_list_view_image);
+    mDescriptionView = (TextView) findViewById(R.id.empty_list_view_message);
+    mActionView = (TextView) findViewById(R.id.empty_list_view_action);
+    mActionView.setOnClickListener(this);
+  }
+
+  public void setDescription(int resourceId) {
+    if (resourceId == NO_LABEL) {
+      mDescriptionView.setText(null);
+      mDescriptionView.setVisibility(View.GONE);
+    } else {
+      mDescriptionView.setText(resourceId);
+      mDescriptionView.setVisibility(View.VISIBLE);
+    }
+  }
+
+  public void setImage(int resourceId) {
+    if (resourceId == NO_LABEL) {
+      mImageView.setImageDrawable(null);
+      mImageView.setVisibility(View.GONE);
+    } else {
+      mImageView.setImageResource(resourceId);
+      mImageView.setVisibility(View.VISIBLE);
+    }
+  }
+
+  public void setActionLabel(@StringRes int resourceId) {
+    actionLabel = resourceId;
+    if (resourceId == NO_LABEL) {
+      mActionView.setText(null);
+      mActionView.setVisibility(View.GONE);
+    } else {
+      mActionView.setText(resourceId);
+      mActionView.setVisibility(View.VISIBLE);
+    }
+  }
+
+  public @StringRes int getActionLabel() {
+    return actionLabel;
+  }
+
+  public boolean isShowingContent() {
+    return mImageView.getVisibility() == View.VISIBLE
+        || mDescriptionView.getVisibility() == View.VISIBLE
+        || mActionView.getVisibility() == View.VISIBLE;
+  }
+
+  public void setActionClickedListener(OnEmptyViewActionButtonClickedListener listener) {
+    mOnActionButtonClickedListener = listener;
+  }
+
+  @Override
+  public void onClick(View v) {
+    if (mOnActionButtonClickedListener != null) {
+      mOnActionButtonClickedListener.onEmptyViewActionButtonClicked();
+    }
+  }
+
+  protected void inflateLayout() {
+    setOrientation(LinearLayout.VERTICAL);
+    final LayoutInflater inflater =
+        (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+    inflater.inflate(R.layout.empty_content_view, this);
+  }
+}
diff --git a/java/com/android/dialer/widget/LockableViewPager.java b/java/com/android/dialer/widget/LockableViewPager.java
new file mode 100644
index 0000000..b5d4022
--- /dev/null
+++ b/java/com/android/dialer/widget/LockableViewPager.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2016 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.dialer.widget;
+
+import android.content.Context;
+import android.support.v4.view.ViewPager;
+import android.util.AttributeSet;
+import android.view.MotionEvent;
+
+/** {@link ViewPager} useful for disabled swiping between pages. */
+public class LockableViewPager extends ViewPager {
+
+  private boolean swipingLocked;
+
+  public LockableViewPager(Context context, AttributeSet attributeSet) {
+    super(context, attributeSet);
+  }
+
+  public void setSwipingLocked(boolean swipingLocked) {
+    this.swipingLocked = swipingLocked;
+  }
+
+  public boolean isSwipingLocked() {
+    return swipingLocked;
+  }
+
+  @Override
+  public boolean onInterceptTouchEvent(MotionEvent motionEvent) {
+    return !swipingLocked && super.onInterceptTouchEvent(motionEvent);
+  }
+
+  @Override
+  public boolean onTouchEvent(MotionEvent motionEvent) {
+    return !swipingLocked && super.onTouchEvent(motionEvent);
+  }
+}
diff --git a/java/com/android/dialer/widget/MessageFragment.java b/java/com/android/dialer/widget/MessageFragment.java
index b136f47..615ad3b 100644
--- a/java/com/android/dialer/widget/MessageFragment.java
+++ b/java/com/android/dialer/widget/MessageFragment.java
@@ -23,6 +23,7 @@
 import android.text.InputFilter;
 import android.text.TextUtils;
 import android.text.TextWatcher;
+import android.view.KeyEvent;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.View.OnClickListener;
@@ -31,11 +32,13 @@
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.TextView;
+import android.widget.TextView.OnEditorActionListener;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.FragmentUtils;
 
 /** Fragment used to compose call with message fragment. */
-public class MessageFragment extends Fragment implements OnClickListener, TextWatcher {
+public class MessageFragment extends Fragment
+    implements OnClickListener, TextWatcher, OnEditorActionListener {
   private static final String CHAR_LIMIT_KEY = "char_limit";
   private static final String SHOW_SEND_ICON_KEY = "show_send_icon";
   private static final String MESSAGE_LIST_KEY = "message_list";
@@ -69,7 +72,7 @@
       LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
     View view = inflater.inflate(R.layout.fragment_message, container, false);
 
-    sendMessage = (ImageView) view.findViewById(R.id.send_message);
+    sendMessage = view.findViewById(R.id.send_message);
     sendMessageContainer = view.findViewById(R.id.count_and_send_container);
     if (getArguments().getBoolean(SHOW_SEND_ICON_KEY, false)) {
       sendMessage.setVisibility(View.VISIBLE);
@@ -77,18 +80,19 @@
       sendMessageContainer.setOnClickListener(this);
     }
 
-    customMessage = (EditText) view.findViewById(R.id.custom_message);
+    customMessage = view.findViewById(R.id.custom_message);
     customMessage.addTextChangedListener(this);
+    customMessage.setOnEditorActionListener(this);
     charLimit = getArguments().getInt(CHAR_LIMIT_KEY, NO_CHAR_LIMIT);
     if (charLimit != NO_CHAR_LIMIT) {
-      remainingChar = (TextView) view.findViewById(R.id.remaining_characters);
+      remainingChar = view.findViewById(R.id.remaining_characters);
       remainingChar.setVisibility(View.VISIBLE);
-      remainingChar = (TextView) view.findViewById(R.id.remaining_characters);
-      remainingChar.setText("" + charLimit);
+      remainingChar = view.findViewById(R.id.remaining_characters);
+      remainingChar.setText(Integer.toString(charLimit));
       customMessage.setFilters(new InputFilter[] {new InputFilter.LengthFilter(charLimit)});
     }
 
-    LinearLayout messageContainer = (LinearLayout) view.findViewById(R.id.message_container);
+    LinearLayout messageContainer = view.findViewById(R.id.message_container);
     for (String message : getArguments().getStringArray(MESSAGE_LIST_KEY)) {
       TextView textView = (TextView) inflater.inflate(R.layout.selectable_text_view, null);
       textView.setOnClickListener(this);
@@ -123,11 +127,20 @@
   @Override
   public void afterTextChanged(Editable s) {
     if (charLimit != NO_CHAR_LIMIT) {
-      remainingChar.setText("" + (charLimit - s.length()));
+      remainingChar.setText(Integer.toString(charLimit - s.length()));
     }
     getListener().onMessageFragmentAfterTextChange(s.toString());
   }
 
+  @Override
+  public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
+    if (getMessage() == null) {
+      return false;
+    }
+    getListener().onMessageFragmentSendMessage(getMessage());
+    return true;
+  }
+
   private Listener getListener() {
     return FragmentUtils.getParentUnsafe(this, Listener.class);
   }
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-hdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-hdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-hdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-mdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-mdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-mdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-mdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xhdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-xhdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-xhdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-xhdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxhdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-xxhdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-xxhdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-xxhdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxxhdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-xxxhdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-xxxhdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-xxxhdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/widget/res/layout-land/empty_content_view.xml b/java/com/android/dialer/widget/res/layout-land/empty_content_view.xml
new file mode 100644
index 0000000..00344bf
--- /dev/null
+++ b/java/com/android/dialer/widget/res/layout-land/empty_content_view.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2015 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.
+-->
+
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+  <ImageView
+      android:id="@+id/empty_list_view_image"
+      android:layout_width="match_parent"
+      android:layout_height="0dp"
+      android:layout_weight="1"
+      android:maxHeight="126dp"
+      android:gravity="center_horizontal"/>
+
+  <TextView
+      android:id="@+id/empty_list_view_message"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:paddingTop="8dp"
+      android:paddingBottom="8dp"
+      android:paddingLeft="16dp"
+      android:paddingRight="16dp"
+      android:gravity="center_horizontal|top"
+      android:textColor="@color/empty_list_text_color"
+      android:textSize="@dimen/empty_list_message_text_size"/>
+
+  <TextView
+      android:id="@+id/empty_list_view_action"
+      style="@style/TextActionStyle"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_gravity="center_horizontal"
+      android:paddingTop="8dp"
+      android:paddingBottom="8dp"
+      android:paddingLeft="16dp"
+      android:paddingRight="16dp"
+      android:background="?android:attr/selectableItemBackground"
+      android:clickable="true"
+      android:gravity="center_horizontal"/>
+
+  <Space
+      android:layout_width="match_parent"
+      android:layout_height="40dp"/>
+
+</merge>
diff --git a/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml b/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml
index c4aac65..023b0ff 100644
--- a/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml
+++ b/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml
@@ -29,7 +29,9 @@
         android:gravity="top"
         android:textSize="@dimen/toolbar_title_text_size"
         android:textColor="@color/background_dialer_white"
-        android:fontFamily="sans-serif-medium"/>
+        android:fontFamily="sans-serif-medium"
+        android:maxLines="1"
+        android:ellipsize="end"/>
 
     <TextView
         android:id="@+id/subtitle"
@@ -37,6 +39,8 @@
         android:layout_height="wrap_content"
         android:textSize="@dimen/toolbar_subtitle_text_size"
         android:textColor="@color/background_dialer_white"
-        android:visibility="gone"/>
+        android:visibility="gone"
+        android:maxLines="1"
+        android:ellipsize="end"/>
   </LinearLayout>
 </merge>
\ No newline at end of file
diff --git a/java/com/android/dialer/widget/res/layout/empty_content_view.xml b/java/com/android/dialer/widget/res/layout/empty_content_view.xml
new file mode 100644
index 0000000..1777443
--- /dev/null
+++ b/java/com/android/dialer/widget/res/layout/empty_content_view.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2015 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.
+-->
+
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+  <ImageView
+    android:id="@+id/empty_list_view_image"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:gravity="center_horizontal"/>
+
+  <TextView
+    android:id="@+id/empty_list_view_message"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:paddingTop="8dp"
+    android:paddingBottom="8dp"
+    android:paddingLeft="16dp"
+    android:paddingRight="16dp"
+    android:gravity="center_horizontal|top"
+    android:textColor="@color/empty_list_text_color"
+    android:textSize="@dimen/empty_list_message_text_size"/>
+
+  <TextView
+    android:id="@+id/empty_list_view_action"
+    style="@style/TextActionStyle"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:layout_gravity="center_horizontal"
+    android:paddingTop="8dp"
+    android:paddingBottom="8dp"
+    android:paddingLeft="16dp"
+    android:paddingRight="16dp"
+    android:background="?android:attr/selectableItemBackground"
+    android:clickable="true"
+    android:gravity="center_horizontal"/>
+
+  <Space
+    android:layout_width="match_parent"
+    android:layout_height="40dp"/>
+
+</merge>
diff --git a/java/com/android/dialer/widget/res/layout/fragment_message.xml b/java/com/android/dialer/widget/res/layout/fragment_message.xml
index e39e03a..5b0bab5 100644
--- a/java/com/android/dialer/widget/res/layout/fragment_message.xml
+++ b/java/com/android/dialer/widget/res/layout/fragment_message.xml
@@ -48,7 +48,9 @@
       android:textColorHint="@color/dialer_edit_text_hint_color"
       android:background="@color/background_dialer_white"
       android:textCursorDrawable="@drawable/searchedittext_custom_cursor"
-      android:layout_toStartOf="@+id/count_and_send_container"/>
+      android:layout_toStartOf="@+id/count_and_send_container"
+      android:inputType="textShortMessage|textCapSentences"
+      android:imeOptions="actionSend"/>
 
     <LinearLayout
       android:id="@+id/count_and_send_container"
diff --git a/java/com/android/dialer/widget/res/values-af/strings.xml b/java/com/android/dialer/widget/res/values-af/strings.xml
index 7c5e83a..0c21ae9 100644
--- a/java/com/android/dialer/widget/res/values-af/strings.xml
+++ b/java/com/android/dialer/widget/res/values-af/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skryf \'n gepasmaakte boodskap"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Maak toe"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Jy het nog nie enige kontakte nie"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Skep nuwe kontak"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Skakel aan"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Skakel die kontaktetoestemming aan om jou kontakte te sien."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Geen kontakte-program beskikbaar nie"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-am/strings.xml b/java/com/android/dialer/widget/res/values-am/strings.xml
index f11b468..8c2ae43 100644
--- a/java/com/android/dialer/widget/res/values-am/strings.xml
+++ b/java/com/android/dialer/widget/res/values-am/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ብጁ መልዕክት ይጻፉ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ዝጋ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ገና ምንም እውቂያዎች የሉዎትም"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"አዲስ እውቂያ ይፍጠሩ"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"አብራ"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"የእርስዎን እውቂያዎች ለማየት፣ የእውቂያዎች ፍቃዱን ያብሩ።"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ምንም የእውቂያዎች መተግበሪያ አይገኝም"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ar/strings.xml b/java/com/android/dialer/widget/res/values-ar/strings.xml
index cb2e733..26ed748 100644
--- a/java/com/android/dialer/widget/res/values-ar/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ar/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"كتابة رسالة مخصصة"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"إغلاق"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ليست لديك أية جهات اتصال حتى الآن"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"إنشاء جهة اتصال"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"تشغيل"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"للاطلاع على جهات الاتصال، شغِّل إذن جهات الاتصال."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"لا يتوفر تطبيق لجهات الاتصال"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-az/strings.xml b/java/com/android/dialer/widget/res/values-az/strings.xml
index 3860a58..aa3344d 100644
--- a/java/com/android/dialer/widget/res/values-az/strings.xml
+++ b/java/com/android/dialer/widget/res/values-az/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Fərdi mesaj yazın"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Bağlayın"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Hələ heç bir kontakt yoxdur"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Yeni kontakt yaradın"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktiv edin"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kontaktları görmək üçün Kontakt icazəsini aktiv edin."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Kontakt tətbiqi əlçatan deyil"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/widget/res/values-b+sr+Latn/strings.xml
index daefd90..fea3cb0 100644
--- a/java/com/android/dialer/widget/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/widget/res/values-b+sr+Latn/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napišite prilagođenu poruku"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zatvorite"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Još uvek nemate nijedan kontakt"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Napravi novi kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Uključi"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Da biste videli kontakte, uključite dozvolu za Kontakte."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nema dostupne aplikacije za kontakte"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-be/strings.xml b/java/com/android/dialer/widget/res/values-be/strings.xml
index 8786132..3e3b370 100644
--- a/java/com/android/dialer/widget/res/values-be/strings.xml
+++ b/java/com/android/dialer/widget/res/values-be/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Напісаць карыстальніцкае паведамленне"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Закрыць"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"У вас пакуль няма ніякіх кантактаў"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Новы кантакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Уключыць"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Каб бачыць свае кантакты, уключыце дазвол для Кантактаў."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Праграмы для аперацый з кантактамі няма"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-bg/strings.xml b/java/com/android/dialer/widget/res/values-bg/strings.xml
index 35e980c..fbb87d0 100644
--- a/java/com/android/dialer/widget/res/values-bg/strings.xml
+++ b/java/com/android/dialer/widget/res/values-bg/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Напишете свое съобщение"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Затваряне"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Още нямате контакти"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Създаване на нов контакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Включване"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"За да видите контактите си, включете разрешението за Контакти."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Няма налично приложение за контакти"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-bn/strings.xml b/java/com/android/dialer/widget/res/values-bn/strings.xml
index 9e17071..58bf44c 100644
--- a/java/com/android/dialer/widget/res/values-bn/strings.xml
+++ b/java/com/android/dialer/widget/res/values-bn/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"একটি কাস্টম বার্তা লিখুন"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"বন্ধ করুন"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"আপনার এখনও পর্যন্ত কোনো পরিচিতি নেই"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"নতুন পরিচিতি তৈরি করুন"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"চালু করুন"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"আপনার পরিচিতিগুলি দেখতে, পরিচিতিগুলির অনুমতি চালু করুন।"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"কোনো পরিচিতি অ্যাপ্লিকেশান উপলব্ধ নয়"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-bs/strings.xml b/java/com/android/dialer/widget/res/values-bs/strings.xml
index 0bc1a9c..239c074 100644
--- a/java/com/android/dialer/widget/res/values-bs/strings.xml
+++ b/java/com/android/dialer/widget/res/values-bs/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napišite prilagođenu poruku"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zatvori"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Još nemate nijedan kontakt"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Kreirajte novi kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Uključi"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Da vidite kontakte, uključite dozvolu za Kontakte."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nije dostupna nijedna aplikacija za kontakte"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ca/strings.xml b/java/com/android/dialer/widget/res/values-ca/strings.xml
index 8639300..3b24947 100644
--- a/java/com/android/dialer/widget/res/values-ca/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ca/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escriu un miss. personalitzat"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Tanca"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Encara no tens cap contacte"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Crea un contacte"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activa"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Activa el permís Contactes per veure els teus contactes."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No hi ha cap contacte disponible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-cs/strings.xml b/java/com/android/dialer/widget/res/values-cs/strings.xml
index 829aab8..b2cbd5b 100644
--- a/java/com/android/dialer/widget/res/values-cs/strings.xml
+++ b/java/com/android/dialer/widget/res/values-cs/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napište vlastní zprávu"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zavřít"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Zatím nemáte žádné kontakty"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Vytvořit nový kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Povolit"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Pokud chcete zobrazit kontakty, povolte aplikaci přístup ke Kontaktům."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Není k dispozici žádná aplikace pro práci s kontakty"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-da/strings.xml b/java/com/android/dialer/widget/res/values-da/strings.xml
index 9381f36..3f2e844 100644
--- a/java/com/android/dialer/widget/res/values-da/strings.xml
+++ b/java/com/android/dialer/widget/res/values-da/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skriv en tilpasset besked"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Luk"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du har endnu ikke nogen kontaktpersoner"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Opret ny kontaktperson"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Slå til"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Slå tilladelsen Kontaktpersoner til for at se dine kontaktpersoner."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Der er ingen tilgængelig app til kontaktpersoner"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-de/strings.xml b/java/com/android/dialer/widget/res/values-de/strings.xml
index 949fe9e..f650df9 100644
--- a/java/com/android/dialer/widget/res/values-de/strings.xml
+++ b/java/com/android/dialer/widget/res/values-de/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Eigene Nachricht schreiben"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Schließen"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du hast noch keine Kontakte"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Neuen Kontakt erstellen"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktivieren"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Aktiviere die Berechtigung \"Kontakte\", um deine Kontakte abzurufen."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Keine Kontakte-App verfügbar"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-el/strings.xml b/java/com/android/dialer/widget/res/values-el/strings.xml
index 21e049b..b095c85 100644
--- a/java/com/android/dialer/widget/res/values-el/strings.xml
+++ b/java/com/android/dialer/widget/res/values-el/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Γράψτε ένα προσαρμ. μήνυμα"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Κλείσιμο"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Δεν έχετε επαφές ακόμη"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Δημιουργία νέας επαφής"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ενεργοποίηση"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Για να δείτε τις επαφές σας, ενεργοποιήστε την άδεια πρόσβασης στις Επαφές."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Δεν υπάρχει διαθέσιμη εφαρμογή επαφών"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-en-rAU/strings.xml b/java/com/android/dialer/widget/res/values-en-rAU/strings.xml
index 7f22b46..33cba33 100644
--- a/java/com/android/dialer/widget/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/widget/res/values-en-rAU/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Write a custom message"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Close"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"You don\'t have any contacts yet"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Create new contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Turn on"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"To see your contacts, turn on the Contacts permission."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No contacts app available"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-en-rGB/strings.xml b/java/com/android/dialer/widget/res/values-en-rGB/strings.xml
index 7f22b46..33cba33 100644
--- a/java/com/android/dialer/widget/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/widget/res/values-en-rGB/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Write a custom message"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Close"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"You don\'t have any contacts yet"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Create new contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Turn on"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"To see your contacts, turn on the Contacts permission."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No contacts app available"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-en-rIN/strings.xml b/java/com/android/dialer/widget/res/values-en-rIN/strings.xml
index 7f22b46..33cba33 100644
--- a/java/com/android/dialer/widget/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/widget/res/values-en-rIN/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Write a custom message"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Close"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"You don\'t have any contacts yet"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Create new contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Turn on"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"To see your contacts, turn on the Contacts permission."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No contacts app available"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-es-rUS/strings.xml b/java/com/android/dialer/widget/res/values-es-rUS/strings.xml
index c7fbdaa..2d60728 100644
--- a/java/com/android/dialer/widget/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/widget/res/values-es-rUS/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escribe tu propio mensaje"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Cerrar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Aún no tienes contactos"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Crear contacto nuevo"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver los contactos, activa el permiso Contactos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No hay ninguna app de contactos disponible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-es/strings.xml b/java/com/android/dialer/widget/res/values-es/strings.xml
index 507e8af..dcb695e 100644
--- a/java/com/android/dialer/widget/res/values-es/strings.xml
+++ b/java/com/android/dialer/widget/res/values-es/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Mensaje personalizado"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Cerrar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Aún no tienes contactos"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Crear un contacto"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver tus contactos, activa el permiso de Contactos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No hay aplicaciones de contactos disponibles"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-et/strings.xml b/java/com/android/dialer/widget/res/values-et/strings.xml
index 71dab42..c67e53e 100644
--- a/java/com/android/dialer/widget/res/values-et/strings.xml
+++ b/java/com/android/dialer/widget/res/values-et/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Kirjutage kohandatud sõnum"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Sule"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Teil pole veel kontakte"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Looge uus kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Lülita sisse"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kontaktide vaatamiseks lülitage sisse kontaktide luba."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Kontaktide rakendus pole saadaval"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-eu/strings.xml b/java/com/android/dialer/widget/res/values-eu/strings.xml
index b8e4085..2d81cc6 100644
--- a/java/com/android/dialer/widget/res/values-eu/strings.xml
+++ b/java/com/android/dialer/widget/res/values-eu/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Idatzi mezu bat"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Itxi"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Oraindik ez duzu kontakturik"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Sortu kontaktu bat"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktibatu"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kontaktuak ikusteko, aktibatu Kontaktuak atzitzeko baimena."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ez dago kontaktu-aplikaziorik erabilgarri"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-fa/strings.xml b/java/com/android/dialer/widget/res/values-fa/strings.xml
index 0c3b1d4..24f78af 100644
--- a/java/com/android/dialer/widget/res/values-fa/strings.xml
+++ b/java/com/android/dialer/widget/res/values-fa/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"پیام سفارشی بنویسید"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"بستن"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"هنوز هیچ مخاطبی ندارید"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"ایجاد مخاطب جدید"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"فعال‌سازی"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"برای دیدن مخاطبینتان، مجوز «مخاطبین» را روشن کنید."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"هیچ برنامه مخاطبی در دسترس نیست"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-fi/strings.xml b/java/com/android/dialer/widget/res/values-fi/strings.xml
index e0e971c..a754079 100644
--- a/java/com/android/dialer/widget/res/values-fi/strings.xml
+++ b/java/com/android/dialer/widget/res/values-fi/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Kirjoita oma viesti"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Sulje"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Sinulla ei ole vielä yhteystietoja."</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Luo uusi yhteystieto"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ota käyttöön"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Jos haluat katsella yhteystietojasi, ota Yhteystiedot-käyttöoikeus käyttöön."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Yhteystietosovellusta ei ole käytettävissä."</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-fr-rCA/strings.xml b/java/com/android/dialer/widget/res/values-fr-rCA/strings.xml
index 9776385..7785509 100644
--- a/java/com/android/dialer/widget/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/widget/res/values-fr-rCA/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Rédiger message personnalisé"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fermer"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Vous n\'avez pas encore de contacts"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Créer un contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activer"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Pour consulter vos contacts, activez l\'autorisation Contacts."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Aucune application Contacts n\'est disponible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-fr/strings.xml b/java/com/android/dialer/widget/res/values-fr/strings.xml
index fececd8..be8810f 100644
--- a/java/com/android/dialer/widget/res/values-fr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-fr/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Écrire mon propre message"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fermer"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Vous n\'avez pas encore de contacts."</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Créer un contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activer"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Pour consulter vos contacts, activez l\'autorisation Contacts."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Aucune application de gestion des contacts n\'est disponible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-gl/strings.xml b/java/com/android/dialer/widget/res/values-gl/strings.xml
index 6a75681..a519e68 100644
--- a/java/com/android/dialer/widget/res/values-gl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-gl/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escribe unha mensaxe personalizada"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Pechar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Aínda non tes ningún contacto"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Crear novo contacto"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver os teus contactos, activa o permiso de Contactos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Non hai ningunha aplicación de contactos dispoñible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-gu/strings.xml b/java/com/android/dialer/widget/res/values-gu/strings.xml
index c2f8cf0..81e6f10 100644
--- a/java/com/android/dialer/widget/res/values-gu/strings.xml
+++ b/java/com/android/dialer/widget/res/values-gu/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"એક કસ્ટમ સંદેશ લખો"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"બંધ કરો"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"તમે હજી સુધી કોઇપણ સંપર્કો ધરાવતાં નથી"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"નવો સંપર્ક બનાવો"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ચાલુ કરો"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"તમારા સંપર્કો જોવા માટે, સંપર્કોની પરવાનગી ચાલુ કરો."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"કોઈ સંપર્કો ઍપ્લિકેશન ઉપલબ્ધ નથી"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-hi/strings.xml b/java/com/android/dialer/widget/res/values-hi/strings.xml
index 63c94e7..622cdca 100644
--- a/java/com/android/dialer/widget/res/values-hi/strings.xml
+++ b/java/com/android/dialer/widget/res/values-hi/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"कोई कस्टम संदेश लिखें"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"बंद करें"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"आपके पास अभी कोई भी संपर्क नहीं है"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"नया संपर्क बनाएं"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"चालू करें"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"अपने संपर्क देखने के लिए, संपर्क अनुमति चालू करें."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"कोई भी संपर्क ऐप उपलब्‍ध नहीं है"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-hr/strings.xml b/java/com/android/dialer/widget/res/values-hr/strings.xml
index 28a58d4..92fc688 100644
--- a/java/com/android/dialer/widget/res/values-hr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-hr/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napišite prilagođenu poruku"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zatvaranje"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Još nemate nijedan kontakt"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Izradi novi kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Uključi"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Da biste vidjeli svoje kontakte, uključite dopuštenje za kontakte."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nije dostupna nijedna aplikacija za kontakte"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-hu/strings.xml b/java/com/android/dialer/widget/res/values-hu/strings.xml
index dcd2b36..62d74fb 100644
--- a/java/com/android/dialer/widget/res/values-hu/strings.xml
+++ b/java/com/android/dialer/widget/res/values-hu/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Egyéni üzenet írása"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Bezárás"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Még nem rendelkezik egyetlen névjeggyel sem"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Új névjegy"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Bekapcsolás"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"A névjegyek megtekintéséhez kapcsolja be a Névjegyek engedélyt."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nincs elérhető névjegykezelő alkalmazás"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-hy/strings.xml b/java/com/android/dialer/widget/res/values-hy/strings.xml
index 7b78bb2..95d0b73 100644
--- a/java/com/android/dialer/widget/res/values-hy/strings.xml
+++ b/java/com/android/dialer/widget/res/values-hy/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Գրել տեքստն ինքնուրույն"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Փակել"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Դեռ կոնտակտներ չունեք"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Ստեղծել նոր կոնտակտ"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Միացնել"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Ձեր կոնտակտները տեսնելու համար միացրեք Կոնտակտների թույլտվությունը:"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Կոնտակտների հավելված չկա"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-in/strings.xml b/java/com/android/dialer/widget/res/values-in/strings.xml
index b4b6550..90017b0 100644
--- a/java/com/android/dialer/widget/res/values-in/strings.xml
+++ b/java/com/android/dialer/widget/res/values-in/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Tulis pesan khusus"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Tutup"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Anda belum memiliki kontak"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Buat kontak baru"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktifkan"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Untuk melihat kontak, aktifkan izin Kontak."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Aplikasi kontak tidak tersedia"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-is/strings.xml b/java/com/android/dialer/widget/res/values-is/strings.xml
index fd84419..de7664d 100644
--- a/java/com/android/dialer/widget/res/values-is/strings.xml
+++ b/java/com/android/dialer/widget/res/values-is/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skrifa sérsniðin skilaboð"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Loka"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Þú ert ekki með neina tengiliði enn sem komið er"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Búa til nýjan tengilið"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Kveikja"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kveiktu á tengiliðaheimildinni til að sjá tengiliðina þína."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ekkert tengiliðaforrit í boði"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-it/strings.xml b/java/com/android/dialer/widget/res/values-it/strings.xml
index 0af3fd2..36022ce 100644
--- a/java/com/android/dialer/widget/res/values-it/strings.xml
+++ b/java/com/android/dialer/widget/res/values-it/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Scrivi un messaggio personalizzato"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Chiudi"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nessun contatto disponibile"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Crea nuovo contatto"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Attiva"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Per accedere ai tuoi contatti, attiva l\'autorizzazione Contatti."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nessuna app di contatti disponibile"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-iw/strings.xml b/java/com/android/dialer/widget/res/values-iw/strings.xml
index a485888..48bf219 100644
--- a/java/com/android/dialer/widget/res/values-iw/strings.xml
+++ b/java/com/android/dialer/widget/res/values-iw/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"כתוב הודעה מותאמת אישית"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"סגירה"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"עדיין אין לך אנשי קשר"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"איש קשר חדש"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"הפעלה"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"עליך להפעיל את ההרשאה \'אנשי קשר\' כדי להציג את אנשי הקשר שלך."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"אין אף אפליקציה לניהול אנשי קשר"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ja/strings.xml b/java/com/android/dialer/widget/res/values-ja/strings.xml
index 9fd65a8..99eb93b 100644
--- a/java/com/android/dialer/widget/res/values-ja/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ja/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"カスタム メッセージを入力"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"閉じる"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"連絡先はまだありません"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"新しい連絡先を作成"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ON にする"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"連絡先を表示するには、連絡先へのアクセスを許可する設定を ON にしてください。"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"利用できる連絡先アプリがありません"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ka/strings.xml b/java/com/android/dialer/widget/res/values-ka/strings.xml
index 6dde044..6645a38 100644
--- a/java/com/android/dialer/widget/res/values-ka/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ka/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"დაწერეთ მორგებ. შეტყობინება"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"დახურვა"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"კონტაქტები ჯერ არ გაქვთ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"ახალი კონტაქტის შექმნა"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ჩართვა"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"კონტაქტების სანახავად ჩართეთ კონტაქტების ნებართვა."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"კონტაქტების აპი მიუწვდომელია"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-kk/strings.xml b/java/com/android/dialer/widget/res/values-kk/strings.xml
index 334d915..e3793ae 100644
--- a/java/com/android/dialer/widget/res/values-kk/strings.xml
+++ b/java/com/android/dialer/widget/res/values-kk/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Арнаулы хабар жазу"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Жабу"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Әлі ешқандай контактілер жоқ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Жаңа контакт қосу"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Қосу"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Контактілерді көру үшін \"Контактілер\" рұқсатын қосыңыз."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Контактілер қолданбасы қолжетімді емес"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-km/strings.xml b/java/com/android/dialer/widget/res/values-km/strings.xml
index d0f5633..6739f0d 100644
--- a/java/com/android/dialer/widget/res/values-km/strings.xml
+++ b/java/com/android/dialer/widget/res/values-km/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"សរសេរ​សារ​ផ្ទាល់ខ្លួន"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"បិទ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"អ្នកមិនទាន់មានទំនាក់ទំនងនៅឡើយទេ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"បង្កើត​ទំនាក់ទំនង​ថ្មី"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"បើក"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ដើម្បីមើលទំនាក់ទំនងរបស់អ្នក សូមបើកការ​អនុញ្ញាតកម្មវិធីទំនាក់ទំនង។"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"មិនមានកម្មវិធីទំនាក់ទំនងទេ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-kn/strings.xml b/java/com/android/dialer/widget/res/values-kn/strings.xml
index 3535bfc..45f879a 100644
--- a/java/com/android/dialer/widget/res/values-kn/strings.xml
+++ b/java/com/android/dialer/widget/res/values-kn/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ಕಸ್ಟಮ್ ಸಂದೇಶವನ್ನು ಬರೆಯಿರಿ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ಮುಚ್ಚಿ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ನಿಮ್ಮ ಬಳಿ ಇನ್ನೂ ಯಾವುದೇ ಸಂಪರ್ಕಗಳಿಲ್ಲ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"ಹೊಸ ಸಂಪರ್ಕ ರಚಿಸಿ"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ಆನ್ ಮಾಡಿ"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ನಿಮ್ಮ ಸಂಪರ್ಕಗಳನ್ನು ವೀಕ್ಷಿಸಲು, ಸಂಪರ್ಕಗಳ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ಯಾವುದೇ ಸಂಪರ್ಕಗಳ ಅಪ್ಲಿಕೇಶನ್‌ ಲಭ್ಯವಿಲ್ಲ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ko/strings.xml b/java/com/android/dialer/widget/res/values-ko/strings.xml
index 8c00cea..0827d36 100644
--- a/java/com/android/dialer/widget/res/values-ko/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ko/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"맞춤 메시지를 작성하세요."</string>
     <string name="toolbar_close" msgid="1081308076149879833">"닫기"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"아직 연락처가 없습니다."</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"새 연락처 만들기"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"사용"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"연락처를 보려면 연락처에 액세스할 권한을 부여하세요."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"사용할 수 있는 연락처 앱이 없습니다."</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ky/strings.xml b/java/com/android/dialer/widget/res/values-ky/strings.xml
index 46ea851..3413b57 100644
--- a/java/com/android/dialer/widget/res/values-ky/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ky/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Башка билдирүүнү жазыңыз"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Жабуу"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Азырынча эч байланышыңыз жок"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Жаңы байланыш түзүү"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Күйгүзүү"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Байланыштарыңызды көрүү үчүн, \"Байланыштар\" уруксатын күйгүзүңүз."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Жеткиликтүү байланыштар колдонмосу жок"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-lo/strings.xml b/java/com/android/dialer/widget/res/values-lo/strings.xml
index 0db64a7..8b7e476 100644
--- a/java/com/android/dialer/widget/res/values-lo/strings.xml
+++ b/java/com/android/dialer/widget/res/values-lo/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ຂຽນຂໍ້ຄວາມດ້ວຍຕົນເອງ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ປິດ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ທ່ານຍັງບໍ່ມີລາຍຊື່ຜູ້ຕິດຕໍ່ເທື່ອ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"ສ້າງລາຍຊື່ຜູ້ຕິດຕໍ່ໃໝ່"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ເປີດໃຊ້"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ເພື່ອເບິ່ງລາຍຊື່ຜູ້ຕິດຕໍ່ຂອງທ່ານ, ໃຫ້ເປີດການອະນຸຍາດລາຍຊື່ຜູ້ຕິດຕໍ່ກ່ອນ"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ບໍ່ມີແອັບລາຍຊື່ຜູ້ຕິດຕໍ່ທີ່ສາມາດໃຊ້ໄດ້"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-lt/strings.xml b/java/com/android/dialer/widget/res/values-lt/strings.xml
index a10b91e..30cc0ad 100644
--- a/java/com/android/dialer/widget/res/values-lt/strings.xml
+++ b/java/com/android/dialer/widget/res/values-lt/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Parašykite tinkintą praneš."</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Uždaryti"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Dar neturite jokių kontaktų"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Sukurti naują kontaktą"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Įjungti"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Jei norite peržiūrėti kontaktus, įjunkite Kontaktų leidimą."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nepasiekiama jokia kontaktų programa"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-lv/strings.xml b/java/com/android/dialer/widget/res/values-lv/strings.xml
index 8ff0793..6245835 100644
--- a/java/com/android/dialer/widget/res/values-lv/strings.xml
+++ b/java/com/android/dialer/widget/res/values-lv/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Rakstīt pielāgotu ziņojumu"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Aizvērt"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Jums vēl nav nevienas kontaktpersonas."</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Izveidot jaunu kontaktpersonu"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ieslēgt"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Lai skatītu savas kontaktpersonas, ieslēdziet atļauju Kontaktpersonas."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nav pieejama neviena kontaktpersonu lietotne."</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-mk/strings.xml b/java/com/android/dialer/widget/res/values-mk/strings.xml
index aa9be30..108cf7a 100644
--- a/java/com/android/dialer/widget/res/values-mk/strings.xml
+++ b/java/com/android/dialer/widget/res/values-mk/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Напиши приспособена порака"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Затвори"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Сè уште немате контакти"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Создајте нов контакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Вклучи"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"За да ги видите контактите, вклучете ја дозволата за контакти."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Нема достапна апликација за контакти"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ml/strings.xml b/java/com/android/dialer/widget/res/values-ml/strings.xml
index b52ee40..1cbb3f4 100644
--- a/java/com/android/dialer/widget/res/values-ml/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ml/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ഒരു ഇ‌ഷ്‌ടാനുസൃത സന്ദേശം രചിക്കൂ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"അടയ്‌ക്കുക"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"നിങ്ങൾക്ക് ഇതുവരെയും കോൺടാക്റ്റുകൾ ഒന്നുമില്ല."</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"പുതിയ കോൺടാക്‌റ്റ് സൃഷ്‌ടിക്കൂ"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ഓൺ ചെയ്യുക"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"നിങ്ങളുടെ കോൺടാക്റ്റുകൾ കാണുന്നതിന്, \'കോൺടാക്റ്റുകൾ\' അനുമതി ഓണാക്കുക."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"കോൺടാക്റ്റ് അപ്ലിക്കേഷനൊന്നും ലഭ്യമല്ല"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-mn/strings.xml b/java/com/android/dialer/widget/res/values-mn/strings.xml
index 6bdad89..e5f5c21 100644
--- a/java/com/android/dialer/widget/res/values-mn/strings.xml
+++ b/java/com/android/dialer/widget/res/values-mn/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Тусгай зурвас бичих"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Хаах"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Танд одоогоор харилцагч байхгүй байна"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Шинэ харилцагч үүсгэх"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Асаах"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Харилцагчдаа харахын тулд Харилцагчдын зөвшөөрлийг идэвхжүүлнэ үү."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ямар ч харилцагчдын апликейшн байхгүй байна"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-mr/strings.xml b/java/com/android/dialer/widget/res/values-mr/strings.xml
index 5661fa8..63239d2 100644
--- a/java/com/android/dialer/widget/res/values-mr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-mr/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"एक सानुकूल संदेश लिहा"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"बंद करा"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"आपल्‍याकडे अद्याप कोणतेही संपर्क नाहीत"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"नवीन संपर्क तयार करा"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"चालू करा"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"आपले संपर्क पाहण्‍यासाठी, संपर्क परवानगी चालू करा."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"कोणताही संपर्क अॅप उपलब्ध नाही"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ms/strings.xml b/java/com/android/dialer/widget/res/values-ms/strings.xml
index 8889ccc..cf61fc1 100644
--- a/java/com/android/dialer/widget/res/values-ms/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ms/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Tulis mesej tersuai"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Tutup"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Anda belum mempunyai sebarang kenalan"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Buat kenalan baharu"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Hidupkan"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Untuk melihat kenalan anda, hidupkan kebenaran Kenalan."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Tiada apl kenalan yang tersedia"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-my/strings.xml b/java/com/android/dialer/widget/res/values-my/strings.xml
index 9a69f29..5d3d9eb 100644
--- a/java/com/android/dialer/widget/res/values-my/strings.xml
+++ b/java/com/android/dialer/widget/res/values-my/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"စိတ်ကြိုက် မက်ဆေ့ဂျ်တစ်ခု ရေးပါ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ပိတ်ရန်"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"သင့်တွင် မည်သည့်အဆက်အသွယ်မျှ မရှိသေးပါ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"အဆက်အသွယ်အသစ် ပြုလုပ်ရန်"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ဖွင့်ရန်"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"အဆက်အသွယ်များကိုကြည့်ရန်၊ အဆက်အသွယ်ခွင့်ပြုချက်ကို ဖွင့်ပါ။"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"အဆက်အသွယ်များ app မရှိပါ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-nb/strings.xml b/java/com/android/dialer/widget/res/values-nb/strings.xml
index 100156b..6665efe 100644
--- a/java/com/android/dialer/widget/res/values-nb/strings.xml
+++ b/java/com/android/dialer/widget/res/values-nb/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skriv egendefinert melding"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Lukk"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du har ingen kontakter ennå"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Opprett en ny kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Slå på"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"For å se kontaktene dine må du slå på Kontakter-tillatelsen."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ingen kontaktapper er tilgjengelige"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ne/strings.xml b/java/com/android/dialer/widget/res/values-ne/strings.xml
index abb8bb0..e1f6e95 100644
--- a/java/com/android/dialer/widget/res/values-ne/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ne/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"आफू अनुकूल सन्देश लेख्‍ने"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"बन्द गर्नुहोस्"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"अहिलेसम्म तपाईंसँग कुनै सम्पर्कहरू छैनन्"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"नयाँ सम्पर्क सिर्जना गर्नुहोस्"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"सक्रिय गर्नुहोस्"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"आफ्ना सम्पर्कहरू हेर्न सम्पर्क सम्बन्धी अनुमतिलाई सक्रिय गर्नुहोस्।"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"सम्पर्क सम्बन्धी कुनै अनुप्रयोग उपलब्ध छैन"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-nl/strings.xml b/java/com/android/dialer/widget/res/values-nl/strings.xml
index 5560288..036be47 100644
--- a/java/com/android/dialer/widget/res/values-nl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-nl/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Schrijf zelf een bericht"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Sluiten"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Je hebt nog geen contacten"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Nieuw contact maken"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Inschakelen"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Als je je contacten wilt bekijken, schakel je de machtiging voor Contacten in."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Geen app voor contacten beschikbaar"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-no/strings.xml b/java/com/android/dialer/widget/res/values-no/strings.xml
index 100156b..6665efe 100644
--- a/java/com/android/dialer/widget/res/values-no/strings.xml
+++ b/java/com/android/dialer/widget/res/values-no/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skriv egendefinert melding"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Lukk"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du har ingen kontakter ennå"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Opprett en ny kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Slå på"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"For å se kontaktene dine må du slå på Kontakter-tillatelsen."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ingen kontaktapper er tilgjengelige"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pa/strings.xml b/java/com/android/dialer/widget/res/values-pa/strings.xml
index 4c69c2c..14b7b41 100644
--- a/java/com/android/dialer/widget/res/values-pa/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pa/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ਵਿਸ਼ੇਸ਼-ਵਿਉਂਤਬੱਧ ਸੰਦੇਸ਼ ਲਿਖੋ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ਬੰਦ ਕਰੋ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ਤੁਹਾਡੇ ਕੋਲ ਹਾਲੇ ਕੋਈ ਸੰਪਰਕ ਨਹੀਂ ਹਨ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"ਨਵਾਂ ਸੰਪਰਕ ਬਣਾਓ"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ਚਾਲੂ ਕਰੋ"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ਆਪਣੇ ਸੰਪਰਕਾਂ ਨੂੰ ਵੇਖਣ ਲਈ, ਸੰਪਰਕ ਇਜਾਜ਼ਤ ਚਾਲੂ ਕਰੋ।"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ਕੋਈ ਸੰਪਰਕ ਐਪ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pl/strings.xml b/java/com/android/dialer/widget/res/values-pl/strings.xml
index cec7a40..3f0668c 100644
--- a/java/com/android/dialer/widget/res/values-pl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pl/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Wpisz wiadomość"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zamknij"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nie masz jeszcze żadnych kontaktów"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Utwórz nowy kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Włącz"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Aby zobaczyć swoje kontakty, włącz uprawnienia Kontakty."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nie jest dostępna żadna aplikacja do obsługi kontaktów"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pt-rBR/strings.xml b/java/com/android/dialer/widget/res/values-pt-rBR/strings.xml
index b15bfac..a6371a7 100644
--- a/java/com/android/dialer/widget/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pt-rBR/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escreva sua mensagem"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fechar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Você ainda não tem contatos"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Criar novo contato"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ativar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver seus contatos, ative a permissão para o app Contatos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nenhum app de contatos disponível"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pt-rPT/strings.xml b/java/com/android/dialer/widget/res/values-pt-rPT/strings.xml
index ece2ef2..fa206fb 100644
--- a/java/com/android/dialer/widget/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pt-rPT/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escreva uma mensagem"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fechar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Ainda não tem nenhum contacto"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Criar novo contacto"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ativar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver os seus contactos, ative a autorização Contactos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Não existe nenhuma aplicação de contactos disponível"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pt/strings.xml b/java/com/android/dialer/widget/res/values-pt/strings.xml
index b15bfac..a6371a7 100644
--- a/java/com/android/dialer/widget/res/values-pt/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pt/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escreva sua mensagem"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fechar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Você ainda não tem contatos"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Criar novo contato"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ativar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver seus contatos, ative a permissão para o app Contatos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nenhum app de contatos disponível"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ro/strings.xml b/java/com/android/dialer/widget/res/values-ro/strings.xml
index 753b920..bc15805 100644
--- a/java/com/android/dialer/widget/res/values-ro/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ro/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Scrieți mesaj personalizat"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Închideți"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nu aveți încă persoane de contact."</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Creați o intrare nouă"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activați"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Pentru a vedea persoanele de contact, activați permisiunea pentru Agendă."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nu este disponibilă nicio aplicație pentru agendă"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ru/strings.xml b/java/com/android/dialer/widget/res/values-ru/strings.xml
index bdebd3c..12b8257 100644
--- a/java/com/android/dialer/widget/res/values-ru/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ru/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Добавьте свой текст"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Закрыть"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Контактов нет"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Создать контакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Предоставить разрешение"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Чтобы открыть список контактов, предоставьте приложению разрешение \"Контакты\"."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Нет приложения для работы с контактами"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-si/strings.xml b/java/com/android/dialer/widget/res/values-si/strings.xml
index 4988259..9870a76 100644
--- a/java/com/android/dialer/widget/res/values-si/strings.xml
+++ b/java/com/android/dialer/widget/res/values-si/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"අභිරුචි පණිවිඩයක් ලියන්න"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"වසන්න"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ඔබට තවම කිසිදු සම්බන්ධතාවක් නැත"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"නව සම්බන්ධතාවක් තනන්න"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ක්‍රියාත්මක කරන්න"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ඔබේ සම්බන්ධතා බැලීමට, සම්බන්ධතා අවසරය ක්‍රියාත්මක කරන්න."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"සබඳතා යෙදුම ලබා ගැනීමට නොහැකිය"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sk/strings.xml b/java/com/android/dialer/widget/res/values-sk/strings.xml
index 5dc1bd5..5b8596c 100644
--- a/java/com/android/dialer/widget/res/values-sk/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sk/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napíšte vlastnú správu"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zavrieť"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Zatiaľ nemáte žiadne kontakty"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Vytvoriť nový kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Zapnúť"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Ak si chcete zobraziť kontakty, zapnite povolenie Kontakty."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nie je k dispozícii žiadna aplikácia na prácu s kontaktmi"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sl/strings.xml b/java/com/android/dialer/widget/res/values-sl/strings.xml
index 0ba965b..1d50619 100644
--- a/java/com/android/dialer/widget/res/values-sl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sl/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napišite sporočilo po meri"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zapri"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nimate še nobenega stika"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Ustvari nov stik"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Vklopi"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Če si želite ogledati stike, vklopite dovoljenje za stike."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Na voljo ni nobene aplikacije za stike"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sq/strings.xml b/java/com/android/dialer/widget/res/values-sq/strings.xml
index 7f5e0f2..2666415 100644
--- a/java/com/android/dialer/widget/res/values-sq/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sq/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Shkruaj mesazh të person."</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Mbyll"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nuk ke ende kontakte"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Krijo një kontakt të ri"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktivizo"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Për të parë kontaktet, aktivizo lejen e Kontakteve."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nuk ka asnjë aplikacion për kontaktet"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sr/strings.xml b/java/com/android/dialer/widget/res/values-sr/strings.xml
index 446c273..c2f269d 100644
--- a/java/com/android/dialer/widget/res/values-sr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sr/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Напишите прилагођену поруку"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Затворите"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Још увек немате ниједан контакт"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Направи нови контакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Укључи"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Да бисте видели контакте, укључите дозволу за Контакте."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Нема доступне апликације за контакте"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sv/strings.xml b/java/com/android/dialer/widget/res/values-sv/strings.xml
index 7d2f44c..75add78 100644
--- a/java/com/android/dialer/widget/res/values-sv/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sv/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skriv anpassat meddelande"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Stäng"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du har inga kontakter ännu"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Skapa ny kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktivera"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Du måste aktivera behörigheten Kontakter för att visa kontakterna."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Det finns inga appar för kontakter"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sw/strings.xml b/java/com/android/dialer/widget/res/values-sw/strings.xml
index d2c2a97..31539fa 100644
--- a/java/com/android/dialer/widget/res/values-sw/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sw/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Andika ujumbe maalum"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Funga"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Bado huna anwani zozote"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Ongeza anwani mpya"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Washa"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Ili uone anwani zako, washa ruhusa ya Anwani."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Hakuna programu ya anwani iliyopatikana"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ta/strings.xml b/java/com/android/dialer/widget/res/values-ta/strings.xml
index 4061c16..1733330 100644
--- a/java/com/android/dialer/widget/res/values-ta/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ta/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"தனிப்பயன் செய்தியை எழுதவும்"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"மூடு"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"இதுவரை தொடர்புகள் எதுவுமில்லை"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"புதிய தொடர்பை உருவாக்கு"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"இயக்கு"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"தொடர்புகளைப் பார்க்க, தொடர்புகள் அனுமதியை இயக்கவும்."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"தொடர்புகள் பயன்பாடு எதுவுமில்லை"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-te/strings.xml b/java/com/android/dialer/widget/res/values-te/strings.xml
index c2474b7..27e6b05 100644
--- a/java/com/android/dialer/widget/res/values-te/strings.xml
+++ b/java/com/android/dialer/widget/res/values-te/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"అనుకూల సందేశాన్ని వ్రాయండి"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"మూసివేయి"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"మీకు ఇప్పటికీ పరిచయాలేవీ లేవు"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"కొత్త పరిచయాన్ని సృష్టించండి"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ఆన్ చేయి"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"మీ పరిచయాలను చూడటానికి, పరిచయాల అనుమతిని ఆన్ చేయండి."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"పరిచయాల అనువర్తనం ఏదీ అందుబాటులో లేదు"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-th/strings.xml b/java/com/android/dialer/widget/res/values-th/strings.xml
index d450b4b..40134c8 100644
--- a/java/com/android/dialer/widget/res/values-th/strings.xml
+++ b/java/com/android/dialer/widget/res/values-th/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"เขียนข้อความที่กำหนดเอง"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ปิด"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"คุณยังไม่มีรายชื่อติดต่อ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"สร้างรายชื่อติดต่อใหม่"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"เปิด"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"หากต้องการดูรายชื่อติดต่อ ให้เปิดสิทธิ์เข้าถึงรายชื่อติดต่อ"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ไม่มีแอปรายชื่อติดต่อที่พร้อมใช้งาน"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-tl/strings.xml b/java/com/android/dialer/widget/res/values-tl/strings.xml
index ee7c52f..b114d38 100644
--- a/java/com/android/dialer/widget/res/values-tl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-tl/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Sumulat ng custom na mensahe"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Isara"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Wala ka pang sinumang contact"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Gumawa ng bagong contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"I-on"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Upang makita ang iyong mga contact, i-on ang pahintulot ng Mga Contact."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Walang available na app ng mga contact"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-tr/strings.xml b/java/com/android/dialer/widget/res/values-tr/strings.xml
index 64e2ea5..6046e17 100644
--- a/java/com/android/dialer/widget/res/values-tr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-tr/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Özel bir mesaj yazın"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Kapat"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Henüz hiç kişiniz yok"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Yeni kişi oluştur"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Etkinleştir"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kişilerinizi görmek için Kişiler iznini etkinleştirin."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Kullanılabilir kişi uygulaması yok"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-uk/strings.xml b/java/com/android/dialer/widget/res/values-uk/strings.xml
index f8d9bb8..d1a281c 100644
--- a/java/com/android/dialer/widget/res/values-uk/strings.xml
+++ b/java/com/android/dialer/widget/res/values-uk/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Ваше власне повідомлення"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Закрити"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Ще немає контактів"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Створити контакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Увімкнути"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Щоб переглянути контакти, увімкніть дозвіл \"Контакти\"."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Немає додатка з контактами"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ur/strings.xml b/java/com/android/dialer/widget/res/values-ur/strings.xml
index 6edeb5c..d5dcad0 100644
--- a/java/com/android/dialer/widget/res/values-ur/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ur/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ایک حسب ضرورت پیغام لکھیں"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"بند کریں"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"آپ کے پاس ابھی تک کوئی رابطے نہیں ہیں"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"نیا رابطہ بنائیں"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"آن کریں"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"اپنے رابطے دیکھنے کیلئے رابطوں کی اجازت آن کریں۔"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"رابطوں کی کوئی ایپ دستیاب نہیں ہے"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-uz/strings.xml b/java/com/android/dialer/widget/res/values-uz/strings.xml
index 434464a..d4a11d6 100644
--- a/java/com/android/dialer/widget/res/values-uz/strings.xml
+++ b/java/com/android/dialer/widget/res/values-uz/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Boshqa xabar yozing"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Yopish"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Kontaktlar yo‘q"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Yangi kontakt qo‘shish"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ruxsat berish"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kontaktlar ro‘yxatini ko‘rish uchun ilovaga Kontaktlarga kirishga ruxsat bering."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Kontaktlarni ochadigan ilova yo‘q"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-vi/strings.xml b/java/com/android/dialer/widget/res/values-vi/strings.xml
index 1a30f7c..18b7091 100644
--- a/java/com/android/dialer/widget/res/values-vi/strings.xml
+++ b/java/com/android/dialer/widget/res/values-vi/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Viết tin nhắn tùy chỉnh"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Đóng"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Bạn chưa có bất kỳ liên hệ nào"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Tạo liên hệ mới"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Bật"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Để xem danh bạ của bạn, bật quyền đối với Danh bạ."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Không có ứng dụng danh bạ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-zh-rCN/strings.xml b/java/com/android/dialer/widget/res/values-zh-rCN/strings.xml
index 7999723..4a5e458 100644
--- a/java/com/android/dialer/widget/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/widget/res/values-zh-rCN/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"自行撰写信息"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"关闭"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"您还没有任何联系人"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"创建新联系人"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"开启"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"要查看您的联系人，请开启“通讯录”权限。"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"没有可用的通讯录应用"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-zh-rHK/strings.xml b/java/com/android/dialer/widget/res/values-zh-rHK/strings.xml
index b0bfcc8..3d5fe6e 100644
--- a/java/com/android/dialer/widget/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/widget/res/values-zh-rHK/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"撰寫自訂訊息"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"關閉"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"您尚無任何聯絡人"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"建立新聯絡人"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"開放"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"如要查看聯絡人，請開放「通訊錄」權限。"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"沒有可用的聯絡人應用程式"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-zh-rTW/strings.xml b/java/com/android/dialer/widget/res/values-zh-rTW/strings.xml
index b0bfcc8..4bc68f2 100644
--- a/java/com/android/dialer/widget/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/widget/res/values-zh-rTW/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"撰寫自訂訊息"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"關閉"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"你還沒有任何聯絡人"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"建立新聯絡人"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"開啟"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"如要查看你的聯絡人，請開啟「聯絡人」存取權限。"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"沒有可用的聯絡人應用程式"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-zu/strings.xml b/java/com/android/dialer/widget/res/values-zu/strings.xml
index 074aa58..718bbbd 100644
--- a/java/com/android/dialer/widget/res/values-zu/strings.xml
+++ b/java/com/android/dialer/widget/res/values-zu/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Bhala umlayezo wangokwezifiso"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Vala"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Awunabo oxhumana nabo okwamanje"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Dala othintana naye omusha"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Vula"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Ukuze ubone oxhumana nabo, vula imvume yoxhumana nabo."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Alukho uhlelo lokusebenza loxhumana nabo olutholakalayo"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values/colors.xml b/java/com/android/dialer/widget/res/values/colors.xml
new file mode 100644
index 0000000..c974609
--- /dev/null
+++ b/java/com/android/dialer/widget/res/values/colors.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+  <color name="empty_list_text_color">#b2b2b2</color>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/widget/res/values/dimens.xml b/java/com/android/dialer/widget/res/values/dimens.xml
index 20393a8..537ad7b 100644
--- a/java/com/android/dialer/widget/res/values/dimens.xml
+++ b/java/com/android/dialer/widget/res/values/dimens.xml
@@ -26,4 +26,9 @@
   <dimen name="toolbar_title_small_text_size">14sp</dimen>
   <dimen name="toolbar_subtitle_text_size">12sp</dimen>
   <dimen name="toolbar_elevation">4dp</dimen>
+  <dimen name="toolbar_end_padding">4dp</dimen>
+
+  <!-- Empty List -->
+  <dimen name="empty_list_message_top_padding">20dp</dimen>
+  <dimen name="empty_list_message_text_size">16sp</dimen>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/widget/res/values/strings.xml b/java/com/android/dialer/widget/res/values/strings.xml
index a5829bb..74a5f0f 100644
--- a/java/com/android/dialer/widget/res/values/strings.xml
+++ b/java/com/android/dialer/widget/res/values/strings.xml
@@ -1,8 +1,38 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2016 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
+  -->
 <resources>
   <!-- Hint in a text field to compose a custom message to send with a phone call [CHAR LIMIT=27] -->
   <string name="custom_message_hint">Write a custom message</string>
 
   <!-- Accessibility string for close/navigation icon in DialerToolbar -->
   <string name="toolbar_close">Close</string>
+
+  <!-- [CHAR LIMIT=NONE] Shown when there are no contacts in the all contacts list. -->
+  <string name="all_contacts_empty">You don\'t have any contacts yet</string>
+
+  <!-- [CHAR LIMIT=NONE] Shown as an action when the all contacts list is empty -->
+  <string name="all_contacts_empty_add_contact_action">Create new contact</string>
+
+  <!-- The label of the button used to turn on a single permission [CHAR LIMIT=30]-->
+  <string name="permission_single_turn_on">Turn on</string>
+
+  <!-- Shown as a prompt to turn on the contacts permission to show all contacts [CHAR LIMIT=NONE]-->
+  <string name="permission_no_contacts">To see your contacts, turn on the Contacts permission.</string>
+
+  <!-- Message displayed when there is no application available to handle the add contact menu option. [CHAR LIMIT=NONE] -->
+  <string name="add_contact_not_available">No contacts app available</string>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialershared/bubble/AndroidManifest.xml b/java/com/android/dialershared/bubble/AndroidManifest.xml
new file mode 100644
index 0000000..1a94aaf
--- /dev/null
+++ b/java/com/android/dialershared/bubble/AndroidManifest.xml
@@ -0,0 +1,22 @@
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialershared.bubble">
+
+  <uses-sdk android:minSdkVersion="21"/>
+  <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
+</manifest>
diff --git a/java/com/android/dialershared/bubble/Bubble.java b/java/com/android/dialershared/bubble/Bubble.java
new file mode 100644
index 0000000..f2ba117
--- /dev/null
+++ b/java/com/android/dialershared/bubble/Bubble.java
@@ -0,0 +1,813 @@
+/*
+ * Copyright (C) 2017 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.dialershared.bubble;
+
+import android.animation.Animator;
+import android.animation.AnimatorSet;
+import android.animation.ObjectAnimator;
+import android.annotation.SuppressLint;
+import android.app.PendingIntent.CanceledException;
+import android.content.Context;
+import android.content.Intent;
+import android.content.res.ColorStateList;
+import android.graphics.PixelFormat;
+import android.graphics.drawable.Animatable;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.RippleDrawable;
+import android.net.Uri;
+import android.os.Build.VERSION;
+import android.os.Build.VERSION_CODES;
+import android.os.Handler;
+import android.provider.Settings;
+import android.support.annotation.ColorInt;
+import android.support.annotation.IntDef;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
+import android.support.v4.graphics.ColorUtils;
+import android.support.v4.os.BuildCompat;
+import android.support.v4.view.animation.FastOutLinearInInterpolator;
+import android.support.v4.view.animation.LinearOutSlowInInterpolator;
+import android.transition.TransitionManager;
+import android.transition.TransitionValues;
+import android.view.ContextThemeWrapper;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.MotionEvent;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.ViewGroup.MarginLayoutParams;
+import android.view.ViewPropertyAnimator;
+import android.view.ViewTreeObserver.OnPreDrawListener;
+import android.view.WindowManager;
+import android.view.WindowManager.LayoutParams;
+import android.view.animation.AnticipateInterpolator;
+import android.view.animation.OvershootInterpolator;
+import android.widget.FrameLayout;
+import android.widget.ImageView;
+import android.widget.TextView;
+import android.widget.ViewAnimator;
+import com.android.dialershared.bubble.BubbleInfo.Action;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.util.List;
+
+/**
+ * Creates and manages a bubble window from information in a {@link BubbleInfo}. Before creating, be
+ * sure to check whether bubbles may be shown using {@link #canShowBubbles(Context)} and request
+ * permission if necessary ({@link #getRequestPermissionIntent(Context)} is provided for
+ * convenience)
+ */
+public class Bubble {
+  // This class has some odd behavior that is not immediately obvious in order to avoid jank when
+  // resizing. See http://go/bubble-resize for details.
+
+  // How long text should show after showText(CharSequence) is called
+  private static final int SHOW_TEXT_DURATION_MILLIS = 3000;
+  // How long the new window should show before destroying the old one during resize operations.
+  // This ensures the new window has had time to draw first.
+  private static final int WINDOW_REDRAW_DELAY_MILLIS = 50;
+
+  private static Boolean canShowBubblesForTesting = null;
+
+  private final Context context;
+  private final WindowManager windowManager;
+
+  private LayoutParams windowParams;
+
+  // Initialized in factory method
+  @SuppressWarnings("NullableProblems")
+  @NonNull
+  private BubbleInfo currentInfo;
+
+  @Visibility private int visibility;
+  private boolean expanded;
+  private boolean textShowing;
+  private boolean hideAfterText;
+  private int collapseEndAction;
+
+  private final Handler handler = new Handler();
+
+  private ViewHolder viewHolder;
+  private ViewPropertyAnimator collapseAnimation;
+  private Integer overrideGravity;
+  private ViewPropertyAnimator exitAnimator;
+
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({CollapseEnd.NOTHING, CollapseEnd.HIDE})
+  private @interface CollapseEnd {
+    int NOTHING = 0;
+    int HIDE = 1;
+  }
+
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({Visibility.ENTERING, Visibility.SHOWING, Visibility.EXITING, Visibility.HIDDEN})
+  private @interface Visibility {
+    int HIDDEN = 0;
+    int ENTERING = 1;
+    int SHOWING = 2;
+    int EXITING = 3;
+  }
+
+  /**
+   * Determines whether bubbles can be shown based on permissions obtained. This should be checked
+   * before attempting to create a Bubble.
+   *
+   * @return true iff bubbles are able to be shown.
+   * @see Settings#canDrawOverlays(Context)
+   */
+  public static boolean canShowBubbles(@NonNull Context context) {
+    return canShowBubblesForTesting != null
+        ? canShowBubblesForTesting
+        : VERSION.SDK_INT < VERSION_CODES.M || Settings.canDrawOverlays(context);
+  }
+
+  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+  public static void setCanShowBubblesForTesting(boolean canShowBubbles) {
+    canShowBubblesForTesting = canShowBubbles;
+  }
+
+  /** Returns an Intent to request permission to show overlays */
+  @NonNull
+  public static Intent getRequestPermissionIntent(@NonNull Context context) {
+    return new Intent(
+        Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
+        Uri.fromParts("package", context.getPackageName(), null));
+  }
+
+  /** Creates instances of Bubble. The default implementation just calls the constructor. */
+  @VisibleForTesting
+  public interface BubbleFactory {
+    Bubble createBubble(@NonNull Context context);
+  }
+
+  private static BubbleFactory bubbleFactory = Bubble::new;
+
+  public static Bubble createBubble(@NonNull Context context, @NonNull BubbleInfo info) {
+    Bubble bubble = bubbleFactory.createBubble(context);
+    bubble.setBubbleInfo(info);
+    return bubble;
+  }
+
+  @VisibleForTesting
+  public static void setBubbleFactory(@NonNull BubbleFactory bubbleFactory) {
+    Bubble.bubbleFactory = bubbleFactory;
+  }
+
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  Bubble(@NonNull Context context) {
+    context = new ContextThemeWrapper(context, R.style.Theme_AppCompat);
+    this.context = context;
+    windowManager = context.getSystemService(WindowManager.class);
+
+    viewHolder = new ViewHolder(context);
+  }
+
+  /**
+   * Make the bubble visible. Will show a short entrance animation as it enters. If the bubble is
+   * already showing this method does nothing.
+   */
+  public void show() {
+    if (collapseEndAction == CollapseEnd.HIDE) {
+      // If show() was called while collapsing, make sure we don't hide after.
+      collapseEndAction = CollapseEnd.NOTHING;
+    }
+    if (visibility == Visibility.SHOWING || visibility == Visibility.ENTERING) {
+      return;
+    }
+
+    hideAfterText = false;
+
+    if (windowParams == null) {
+      // Apps targeting O+ must use TYPE_APPLICATION_OVERLAY, which is not available prior to O.
+      @SuppressWarnings("deprecation")
+      @SuppressLint("InlinedApi")
+      int type =
+          BuildCompat.isAtLeastO()
+              ? LayoutParams.TYPE_APPLICATION_OVERLAY
+              : LayoutParams.TYPE_PHONE;
+
+      windowParams =
+          new LayoutParams(
+              type,
+              LayoutParams.FLAG_NOT_TOUCH_MODAL
+                  | LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH
+                  | LayoutParams.FLAG_NOT_FOCUSABLE
+                  | LayoutParams.FLAG_LAYOUT_NO_LIMITS,
+              PixelFormat.TRANSLUCENT);
+      windowParams.gravity = Gravity.TOP | Gravity.LEFT;
+      windowParams.x = context.getResources().getDimensionPixelOffset(R.dimen.bubble_safe_margin_x);
+      windowParams.y = currentInfo.getStartingYPosition();
+      windowParams.height = LayoutParams.WRAP_CONTENT;
+      windowParams.width = LayoutParams.WRAP_CONTENT;
+    }
+
+    if (exitAnimator != null) {
+      exitAnimator.cancel();
+      exitAnimator = null;
+    } else {
+      windowManager.addView(viewHolder.getRoot(), windowParams);
+      viewHolder.getPrimaryButton().setScaleX(0);
+      viewHolder.getPrimaryButton().setScaleY(0);
+    }
+
+    visibility = Visibility.ENTERING;
+    viewHolder
+        .getPrimaryButton()
+        .animate()
+        .setInterpolator(new OvershootInterpolator())
+        .scaleX(1)
+        .scaleY(1)
+        .withEndAction(() -> visibility = Visibility.SHOWING)
+        .start();
+
+    updatePrimaryIconAnimation();
+  }
+
+  /**
+   * Hide the button if visible. Will run a short exit animation before hiding. If the bubble is
+   * currently showing text, will hide after the text is done displaying. If the bubble is not
+   * visible this method does nothing.
+   */
+  public void hide() {
+    if (visibility == Visibility.HIDDEN || visibility == Visibility.EXITING) {
+      return;
+    }
+
+    if (textShowing) {
+      hideAfterText = true;
+      return;
+    }
+
+    if (collapseAnimation != null) {
+      collapseEndAction = CollapseEnd.HIDE;
+      return;
+    }
+
+    if (expanded) {
+      startCollapse(CollapseEnd.HIDE);
+      return;
+    }
+
+    visibility = Visibility.EXITING;
+    exitAnimator =
+        viewHolder
+            .getPrimaryButton()
+            .animate()
+            .setInterpolator(new AnticipateInterpolator())
+            .scaleX(0)
+            .scaleY(0)
+            .withEndAction(
+                () -> {
+                  exitAnimator = null;
+                  windowManager.removeView(viewHolder.getRoot());
+                  visibility = Visibility.HIDDEN;
+                  updatePrimaryIconAnimation();
+                });
+    exitAnimator.start();
+  }
+
+  /** Returns whether the bubble is currently visible */
+  public boolean isVisible() {
+    return visibility == Visibility.SHOWING
+        || visibility == Visibility.ENTERING
+        || visibility == Visibility.EXITING;
+  }
+
+  /**
+   * Set the info for this Bubble to display
+   *
+   * @param bubbleInfo the BubbleInfo to display in this Bubble.
+   */
+  public void setBubbleInfo(@NonNull BubbleInfo bubbleInfo) {
+    currentInfo = bubbleInfo;
+    update();
+  }
+
+  /**
+   * Update the state and behavior of actions.
+   *
+   * @param actions the new state of the bubble's actions
+   */
+  public void updateActions(@NonNull List<Action> actions) {
+    currentInfo = BubbleInfo.from(currentInfo).setActions(actions).build();
+    updateButtonStates();
+  }
+
+  /** Returns the currently displayed BubbleInfo */
+  public BubbleInfo getBubbleInfo() {
+    return currentInfo;
+  }
+
+  /**
+   * Display text in the main bubble. The bubble's drawer is not expandable while text is showing,
+   * and the drawer will be closed if already open.
+   *
+   * @param text the text to display to the user
+   */
+  public void showText(@NonNull CharSequence text) {
+    textShowing = true;
+    if (expanded) {
+      startCollapse(CollapseEnd.NOTHING);
+      doShowText(text);
+    } else {
+      // Need to transition from old bounds to new bounds manually
+      ChangeOnScreenBounds transition = new ChangeOnScreenBounds();
+      // Prepare and capture start values
+      TransitionValues startValues = new TransitionValues();
+      startValues.view = viewHolder.getPrimaryButton();
+      transition.addTarget(startValues.view);
+      transition.captureStartValues(startValues);
+
+      doResize(
+          () -> {
+            doShowText(text);
+            // Hide the text so we can animate it in
+            viewHolder.getPrimaryText().setAlpha(0);
+
+            ViewAnimator primaryButton = viewHolder.getPrimaryButton();
+            // Cancel the automatic transition scheduled in doShowText
+            TransitionManager.endTransitions((ViewGroup) primaryButton.getParent());
+            primaryButton
+                .getViewTreeObserver()
+                .addOnPreDrawListener(
+                    new OnPreDrawListener() {
+                      @Override
+                      public boolean onPreDraw() {
+                        primaryButton.getViewTreeObserver().removeOnPreDrawListener(this);
+
+                        // Prepare and capture end values
+                        TransitionValues endValues = new TransitionValues();
+                        endValues.view = primaryButton;
+                        transition.addTarget(endValues.view);
+                        transition.captureEndValues(endValues);
+
+                        // animate the primary button bounds change
+                        Animator bounds =
+                            transition.createAnimator(primaryButton, startValues, endValues);
+
+                        // Animate the text in
+                        Animator alpha =
+                            ObjectAnimator.ofFloat(viewHolder.getPrimaryText(), View.ALPHA, 1f);
+
+                        AnimatorSet set = new AnimatorSet();
+                        set.play(bounds).before(alpha);
+                        set.start();
+                        return false;
+                      }
+                    });
+          });
+    }
+    handler.removeCallbacks(null);
+    handler.postDelayed(
+        () -> {
+          textShowing = false;
+          if (hideAfterText) {
+            hide();
+          } else {
+            doResize(
+                () -> viewHolder.getPrimaryButton().setDisplayedChild(ViewHolder.CHILD_INDEX_ICON));
+          }
+        },
+        SHOW_TEXT_DURATION_MILLIS);
+  }
+
+  @Nullable
+  Integer getGravityOverride() {
+    return overrideGravity;
+  }
+
+  void onMoveStart() {
+    startCollapse(CollapseEnd.NOTHING);
+    viewHolder
+        .getPrimaryButton()
+        .animate()
+        .translationZ(
+            context.getResources().getDimensionPixelOffset(R.dimen.bubble_move_elevation_change));
+  }
+
+  void onMoveFinish() {
+    viewHolder.getPrimaryButton().animate().translationZ(0);
+    // If it's GONE, no resize is necessary. If it's VISIBLE, it will get cleaned up when the
+    // collapse animation finishes
+    if (viewHolder.getExpandedView().getVisibility() == View.INVISIBLE) {
+      doResize(null);
+    }
+  }
+
+  void primaryButtonClick() {
+    if (expanded || textShowing || currentInfo.getActions().isEmpty()) {
+      try {
+        currentInfo.getPrimaryIntent().send();
+      } catch (CanceledException e) {
+        throw new RuntimeException(e);
+      }
+      return;
+    }
+
+    doResize(
+        () -> {
+          onLeftRightSwitch(isDrawingFromRight());
+          viewHolder.setDrawerVisibility(View.VISIBLE);
+        });
+    View expandedView = viewHolder.getExpandedView();
+    expandedView
+        .getViewTreeObserver()
+        .addOnPreDrawListener(
+            new OnPreDrawListener() {
+              @Override
+              public boolean onPreDraw() {
+                expandedView.getViewTreeObserver().removeOnPreDrawListener(this);
+                expandedView.setTranslationX(
+                    isDrawingFromRight() ? expandedView.getWidth() : -expandedView.getWidth());
+                expandedView
+                    .animate()
+                    .setInterpolator(new LinearOutSlowInInterpolator())
+                    .translationX(0);
+                return false;
+              }
+            });
+    setFocused(true);
+    expanded = true;
+  }
+
+  void onLeftRightSwitch(boolean onRight) {
+    if (viewHolder.isMoving()) {
+      if (viewHolder.getExpandedView().getVisibility() == View.GONE) {
+        // If the drawer is not part of the layout we don't need to do anything. Layout flips will
+        // happen if necessary when opening the drawer.
+        return;
+      }
+    }
+
+    viewHolder
+        .getRoot()
+        .setLayoutDirection(onRight ? View.LAYOUT_DIRECTION_RTL : View.LAYOUT_DIRECTION_LTR);
+    View primaryContainer = viewHolder.getRoot().findViewById(R.id.bubble_primary_container);
+    ViewGroup.LayoutParams layoutParams = primaryContainer.getLayoutParams();
+    ((FrameLayout.LayoutParams) layoutParams).gravity = onRight ? Gravity.RIGHT : Gravity.LEFT;
+    primaryContainer.setLayoutParams(layoutParams);
+
+    viewHolder
+        .getExpandedView()
+        .setBackgroundResource(
+            onRight
+                ? R.drawable.bubble_background_pill_rtl
+                : R.drawable.bubble_background_pill_ltr);
+  }
+
+  LayoutParams getWindowParams() {
+    return windowParams;
+  }
+
+  View getRootView() {
+    return viewHolder.getRoot();
+  }
+
+  private void update() {
+    RippleDrawable backgroundRipple =
+        (RippleDrawable)
+            context.getResources().getDrawable(R.drawable.bubble_ripple_circle, context.getTheme());
+    int primaryTint =
+        ColorUtils.compositeColors(
+            context.getColor(R.color.bubble_primary_background_darken),
+            currentInfo.getPrimaryColor());
+    backgroundRipple.getDrawable(0).setTint(primaryTint);
+    viewHolder.getPrimaryButton().setBackground(backgroundRipple);
+
+    setBackgroundDrawable(viewHolder.getFirstButton(), primaryTint);
+    setBackgroundDrawable(viewHolder.getSecondButton(), primaryTint);
+    setBackgroundDrawable(viewHolder.getThirdButton(), primaryTint);
+
+    int numButtons = currentInfo.getActions().size();
+    viewHolder.getThirdButton().setVisibility(numButtons < 3 ? View.GONE : View.VISIBLE);
+    viewHolder.getSecondButton().setVisibility(numButtons < 2 ? View.GONE : View.VISIBLE);
+
+    viewHolder.getPrimaryIcon().setImageIcon(currentInfo.getPrimaryIcon());
+    updatePrimaryIconAnimation();
+
+    viewHolder
+        .getExpandedView()
+        .setBackgroundTintList(ColorStateList.valueOf(currentInfo.getPrimaryColor()));
+
+    updateButtonStates();
+  }
+
+  private void updatePrimaryIconAnimation() {
+    Drawable drawable = viewHolder.getPrimaryIcon().getDrawable();
+    if (drawable instanceof Animatable) {
+      if (isVisible()) {
+        ((Animatable) drawable).start();
+      } else {
+        ((Animatable) drawable).stop();
+      }
+    }
+  }
+
+  private void setBackgroundDrawable(CheckableImageButton view, @ColorInt int color) {
+    RippleDrawable itemRipple =
+        (RippleDrawable)
+            context
+                .getResources()
+                .getDrawable(R.drawable.bubble_ripple_checkable_circle, context.getTheme());
+    itemRipple.getDrawable(0).setTint(color);
+    view.setBackground(itemRipple);
+  }
+
+  private void updateButtonStates() {
+    int numButtons = currentInfo.getActions().size();
+
+    if (numButtons >= 1) {
+      configureButton(currentInfo.getActions().get(0), viewHolder.getFirstButton());
+      if (numButtons >= 2) {
+        configureButton(currentInfo.getActions().get(1), viewHolder.getSecondButton());
+        if (numButtons >= 3) {
+          configureButton(currentInfo.getActions().get(2), viewHolder.getThirdButton());
+        }
+      }
+    }
+  }
+
+  private void doShowText(@NonNull CharSequence text) {
+    TransitionManager.beginDelayedTransition((ViewGroup) viewHolder.getPrimaryButton().getParent());
+    viewHolder.getPrimaryText().setText(text);
+    viewHolder.getPrimaryButton().setDisplayedChild(ViewHolder.CHILD_INDEX_TEXT);
+  }
+
+  private void configureButton(Action action, CheckableImageButton button) {
+    action
+        .getIcon()
+        .loadDrawableAsync(
+            context,
+            d -> {
+              button.setImageIcon(action.getIcon());
+              button.setContentDescription(action.getName());
+              button.setChecked(action.isChecked());
+              button.setEnabled(action.isEnabled());
+            },
+            handler);
+    button.setOnClickListener(v -> doAction(action));
+  }
+
+  private void doAction(Action action) {
+    try {
+      action.getIntent().send();
+    } catch (CanceledException e) {
+      throw new RuntimeException(e);
+    }
+  }
+
+  private void doResize(@Nullable Runnable operation) {
+    // If we're resizing on the right side of the screen, there is an implicit move operation
+    // necessary. The WindowManager does not sync the move and resize operations, so serious jank
+    // would occur. To fix this, instead of resizing the window, we create a new one and destroy
+    // the old one. There is a short delay before destroying the old view to ensure the new one has
+    // had time to draw.
+    ViewHolder oldViewHolder = viewHolder;
+    if (isDrawingFromRight()) {
+      viewHolder = new ViewHolder(oldViewHolder.getRoot().getContext());
+      update();
+      viewHolder
+          .getPrimaryButton()
+          .setDisplayedChild(oldViewHolder.getPrimaryButton().getDisplayedChild());
+      viewHolder.getPrimaryText().setText(oldViewHolder.getPrimaryText().getText());
+    }
+
+    if (operation != null) {
+      operation.run();
+    }
+
+    if (isDrawingFromRight()) {
+      swapViewHolders(oldViewHolder);
+    }
+  }
+
+  private void swapViewHolders(ViewHolder oldViewHolder) {
+    oldViewHolder.getShadowProvider().setVisibility(View.GONE);
+    ViewGroup root = viewHolder.getRoot();
+    windowManager.addView(root, windowParams);
+    root.getViewTreeObserver()
+        .addOnPreDrawListener(
+            new OnPreDrawListener() {
+              @Override
+              public boolean onPreDraw() {
+                root.getViewTreeObserver().removeOnPreDrawListener(this);
+                // Wait a bit before removing the old view; make sure the new one has drawn over it.
+                handler.postDelayed(
+                    () -> windowManager.removeView(oldViewHolder.getRoot()),
+                    WINDOW_REDRAW_DELAY_MILLIS);
+                return true;
+              }
+            });
+  }
+
+  private void startCollapse(@CollapseEnd int endAction) {
+    View expandedView = viewHolder.getExpandedView();
+    if (expandedView.getVisibility() != View.VISIBLE || collapseAnimation != null) {
+      // Drawer is already collapsed or animation is running.
+      return;
+    }
+
+    overrideGravity = isDrawingFromRight() ? Gravity.RIGHT : Gravity.LEFT;
+    setFocused(false);
+
+    if (collapseEndAction == CollapseEnd.NOTHING) {
+      collapseEndAction = endAction;
+    }
+    collapseAnimation =
+        expandedView
+            .animate()
+            .translationX(isDrawingFromRight() ? expandedView.getWidth() : -expandedView.getWidth())
+            .setInterpolator(new FastOutLinearInInterpolator())
+            .withEndAction(
+                () -> {
+                  collapseAnimation = null;
+                  expanded = false;
+
+                  if (textShowing) {
+                    // Will do resize once the text is done.
+                    return;
+                  }
+
+                  // Hide the drawer and resize if possible.
+                  viewHolder.setDrawerVisibility(View.INVISIBLE);
+                  if (!viewHolder.isMoving() || !isDrawingFromRight()) {
+                    doResize(() -> viewHolder.setDrawerVisibility(View.GONE));
+                  }
+
+                  // If this collapse was to come before a hide, do it now.
+                  if (collapseEndAction == CollapseEnd.HIDE) {
+                    hide();
+                  }
+                  collapseEndAction = CollapseEnd.NOTHING;
+
+                  // Resume normal gravity after any resizing is done.
+                  handler.postDelayed(
+                      () -> {
+                        overrideGravity = null;
+                        if (!viewHolder.isMoving()) {
+                          viewHolder.undoGravityOverride();
+                        }
+                      },
+                      // Need to wait twice as long for resize and layout
+                      WINDOW_REDRAW_DELAY_MILLIS * 2);
+                });
+  }
+
+  private boolean isDrawingFromRight() {
+    return (windowParams.gravity & Gravity.RIGHT) == Gravity.RIGHT;
+  }
+
+  private void setFocused(boolean focused) {
+    if (focused) {
+      windowParams.flags &= ~LayoutParams.FLAG_NOT_FOCUSABLE;
+    } else {
+      windowParams.flags |= LayoutParams.FLAG_NOT_FOCUSABLE;
+    }
+    windowManager.updateViewLayout(getRootView(), windowParams);
+  }
+
+  private class ViewHolder {
+
+    public static final int CHILD_INDEX_ICON = 0;
+    public static final int CHILD_INDEX_TEXT = 1;
+
+    private MoveHandler moveHandler;
+    private final WindowRoot root;
+    private final ViewAnimator primaryButton;
+    private final ImageView primaryIcon;
+    private final TextView primaryText;
+
+    private final CheckableImageButton firstButton;
+    private final CheckableImageButton secondButton;
+    private final CheckableImageButton thirdButton;
+    private final View expandedView;
+    private final View shadowProvider;
+
+    public ViewHolder(Context context) {
+      // Window root is not in the layout file so that the inflater has a view to inflate into
+      this.root = new WindowRoot(context);
+      LayoutInflater inflater = LayoutInflater.from(root.getContext());
+      View contentView = inflater.inflate(R.layout.bubble_base, root, true);
+      expandedView = contentView.findViewById(R.id.bubble_expanded_layout);
+      primaryButton = contentView.findViewById(R.id.bubble_button_primary);
+      primaryIcon = contentView.findViewById(R.id.bubble_icon_primary);
+      primaryText = contentView.findViewById(R.id.bubble_text);
+      shadowProvider = contentView.findViewById(R.id.bubble_drawer_shadow_provider);
+
+      firstButton = contentView.findViewById(R.id.bubble_icon_first);
+      secondButton = contentView.findViewById(R.id.bubble_icon_second);
+      thirdButton = contentView.findViewById(R.id.bubble_icon_third);
+
+      root.setOnBackPressedListener(
+          () -> {
+            if (visibility == Visibility.SHOWING && expanded) {
+              startCollapse(CollapseEnd.NOTHING);
+              return true;
+            }
+            return false;
+          });
+      root.setOnConfigurationChangedListener(
+          (configuration) -> {
+            // The values in the current MoveHandler may be stale, so replace it. Then ensure the
+            // Window is in bounds
+            moveHandler = new MoveHandler(primaryButton, Bubble.this);
+            moveHandler.snapToBounds();
+          });
+      root.setOnTouchListener(
+          (v, event) -> {
+            if (expanded && event.getActionMasked() == MotionEvent.ACTION_OUTSIDE) {
+              startCollapse(CollapseEnd.NOTHING);
+              return true;
+            }
+            return false;
+          });
+      expandedView
+          .getViewTreeObserver()
+          .addOnDrawListener(
+              () -> {
+                int translationX = (int) expandedView.getTranslationX();
+                int parentOffset =
+                    ((MarginLayoutParams) ((ViewGroup) expandedView.getParent()).getLayoutParams())
+                        .leftMargin;
+                if (isDrawingFromRight()) {
+                  int maxLeft =
+                      shadowProvider.getRight()
+                          - context.getResources().getDimensionPixelSize(R.dimen.bubble_size);
+                  shadowProvider.setLeft(
+                      Math.min(maxLeft, expandedView.getLeft() + translationX + parentOffset));
+                } else {
+                  int minRight =
+                      shadowProvider.getLeft()
+                          + context.getResources().getDimensionPixelSize(R.dimen.bubble_size);
+                  shadowProvider.setRight(
+                      Math.max(minRight, expandedView.getRight() + translationX + parentOffset));
+                }
+              });
+      moveHandler = new MoveHandler(primaryButton, Bubble.this);
+    }
+
+    public ViewGroup getRoot() {
+      return root;
+    }
+
+    public ViewAnimator getPrimaryButton() {
+      return primaryButton;
+    }
+
+    public ImageView getPrimaryIcon() {
+      return primaryIcon;
+    }
+
+    public TextView getPrimaryText() {
+      return primaryText;
+    }
+
+    public CheckableImageButton getFirstButton() {
+      return firstButton;
+    }
+
+    public CheckableImageButton getSecondButton() {
+      return secondButton;
+    }
+
+    public CheckableImageButton getThirdButton() {
+      return thirdButton;
+    }
+
+    public View getExpandedView() {
+      return expandedView;
+    }
+
+    public View getShadowProvider() {
+      return shadowProvider;
+    }
+
+    public void setDrawerVisibility(int visibility) {
+      expandedView.setVisibility(visibility);
+      shadowProvider.setVisibility(visibility);
+    }
+
+    public boolean isMoving() {
+      return moveHandler.isMoving();
+    }
+
+    public void undoGravityOverride() {
+      moveHandler.undoGravityOverride();
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/BubbleInfo.java b/java/com/android/dialershared/bubble/BubbleInfo.java
new file mode 100644
index 0000000..eb9abd0
--- /dev/null
+++ b/java/com/android/dialershared/bubble/BubbleInfo.java
@@ -0,0 +1,123 @@
+/*
+ * Copyright (C) 2017 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.dialershared.bubble;
+
+import android.app.PendingIntent;
+import android.graphics.drawable.Icon;
+import android.support.annotation.ColorInt;
+import android.support.annotation.NonNull;
+import android.support.annotation.Px;
+import com.google.auto.value.AutoValue;
+import java.util.Collections;
+import java.util.List;
+
+/** Info for displaying a {@link Bubble} */
+@AutoValue
+public abstract class BubbleInfo {
+  @ColorInt
+  public abstract int getPrimaryColor();
+
+  @NonNull
+  public abstract Icon getPrimaryIcon();
+
+  @NonNull
+  public abstract PendingIntent getPrimaryIntent();
+
+  @Px
+  public abstract int getStartingYPosition();
+
+  @NonNull
+  public abstract List<Action> getActions();
+
+  public static Builder builder() {
+    return new AutoValue_BubbleInfo.Builder().setActions(Collections.emptyList());
+  }
+
+  public static Builder from(@NonNull BubbleInfo bubbleInfo) {
+    return builder()
+        .setPrimaryIntent(bubbleInfo.getPrimaryIntent())
+        .setPrimaryColor(bubbleInfo.getPrimaryColor())
+        .setPrimaryIcon(bubbleInfo.getPrimaryIcon())
+        .setStartingYPosition(bubbleInfo.getStartingYPosition())
+        .setActions(bubbleInfo.getActions());
+  }
+
+  /** Builder for {@link BubbleInfo} */
+  @AutoValue.Builder
+  public abstract static class Builder {
+
+    public abstract Builder setPrimaryColor(@ColorInt int primaryColor);
+
+    public abstract Builder setPrimaryIcon(@NonNull Icon primaryIcon);
+
+    public abstract Builder setPrimaryIntent(@NonNull PendingIntent primaryIntent);
+
+    public abstract Builder setStartingYPosition(@Px int startingYPosition);
+
+    public abstract Builder setActions(List<Action> actions);
+
+    public abstract BubbleInfo build();
+  }
+
+  /** Represents actions to be shown in the bubble when expanded */
+  @AutoValue
+  public abstract static class Action {
+
+    @NonNull
+    public abstract Icon getIcon();
+
+    @NonNull
+    public abstract CharSequence getName();
+
+    @NonNull
+    public abstract PendingIntent getIntent();
+
+    public abstract boolean isEnabled();
+
+    public abstract boolean isChecked();
+
+    public static Builder builder() {
+      return new AutoValue_BubbleInfo_Action.Builder().setEnabled(true).setChecked(false);
+    }
+
+    public static Builder from(@NonNull Action action) {
+      return builder()
+          .setIntent(action.getIntent())
+          .setChecked(action.isChecked())
+          .setEnabled(action.isEnabled())
+          .setName(action.getName())
+          .setIcon(action.getIcon());
+    }
+
+    /** Builder for {@link Action} */
+    @AutoValue.Builder
+    public abstract static class Builder {
+
+      public abstract Builder setIcon(@NonNull Icon icon);
+
+      public abstract Builder setName(@NonNull CharSequence name);
+
+      public abstract Builder setIntent(@NonNull PendingIntent intent);
+
+      public abstract Builder setEnabled(boolean enabled);
+
+      public abstract Builder setChecked(boolean checked);
+
+      public abstract Action build();
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/ChangeOnScreenBounds.java b/java/com/android/dialershared/bubble/ChangeOnScreenBounds.java
new file mode 100644
index 0000000..37c8204
--- /dev/null
+++ b/java/com/android/dialershared/bubble/ChangeOnScreenBounds.java
@@ -0,0 +1,177 @@
+/*
+ * Copyright (C) 2017 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.dialershared.bubble;
+
+import android.animation.Animator;
+import android.animation.AnimatorSet;
+import android.animation.ObjectAnimator;
+import android.graphics.Path;
+import android.graphics.PointF;
+import android.graphics.Rect;
+import android.support.annotation.VisibleForTesting;
+import android.transition.Transition;
+import android.transition.TransitionValues;
+import android.util.Property;
+import android.view.View;
+import android.view.ViewGroup;
+
+/** Similar to {@link android.transition.ChangeBounds ChangeBounds} but works across windows */
+public class ChangeOnScreenBounds extends Transition {
+
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  static final String PROPNAME_BOUNDS = "bubble:changeScreenBounds:bounds";
+
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  static final String PROPNAME_SCREEN_X = "bubble:changeScreenBounds:screenX";
+
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  static final String PROPNAME_SCREEN_Y = "bubble:changeScreenBounds:screenY";
+
+  private static final Property<ViewBounds, PointF> TOP_LEFT_PROPERTY =
+      new Property<ViewBounds, PointF>(PointF.class, "topLeft") {
+        @Override
+        public void set(ViewBounds viewBounds, PointF topLeft) {
+          viewBounds.setTopLeft(topLeft);
+        }
+
+        @Override
+        public PointF get(ViewBounds viewBounds) {
+          return null;
+        }
+      };
+
+  private static final Property<ViewBounds, PointF> BOTTOM_RIGHT_PROPERTY =
+      new Property<ViewBounds, PointF>(PointF.class, "bottomRight") {
+        @Override
+        public void set(ViewBounds viewBounds, PointF bottomRight) {
+          viewBounds.setBottomRight(bottomRight);
+        }
+
+        @Override
+        public PointF get(ViewBounds viewBounds) {
+          return null;
+        }
+      };
+  private final int[] tempLocation = new int[2];
+
+  @Override
+  public void captureStartValues(TransitionValues transitionValues) {
+    captureValues(transitionValues);
+  }
+
+  @Override
+  public void captureEndValues(TransitionValues transitionValues) {
+    captureValues(transitionValues);
+  }
+
+  private void captureValues(TransitionValues values) {
+    View view = values.view;
+
+    if (view.isLaidOut() || view.getWidth() != 0 || view.getHeight() != 0) {
+      values.values.put(
+          PROPNAME_BOUNDS,
+          new Rect(view.getLeft(), view.getTop(), view.getRight(), view.getBottom()));
+      values.view.getLocationOnScreen(tempLocation);
+      values.values.put(PROPNAME_SCREEN_X, tempLocation[0]);
+      values.values.put(PROPNAME_SCREEN_Y, tempLocation[1]);
+    }
+  }
+
+  @Override
+  public Animator createAnimator(
+      ViewGroup sceneRoot, TransitionValues startValues, TransitionValues endValues) {
+    Rect startBounds = (Rect) startValues.values.get(PROPNAME_BOUNDS);
+    Rect endBounds = (Rect) endValues.values.get(PROPNAME_BOUNDS);
+
+    if (startBounds == null || endBounds == null) {
+      // start or end values were not captured, so don't animate.
+      return null;
+    }
+
+    // Offset the startBounds by the difference in screen position
+    int startScreenX = (Integer) startValues.values.get(PROPNAME_SCREEN_X);
+    int startScreenY = (Integer) startValues.values.get(PROPNAME_SCREEN_Y);
+    int endScreenX = (Integer) endValues.values.get(PROPNAME_SCREEN_X);
+    int endScreenY = (Integer) endValues.values.get(PROPNAME_SCREEN_Y);
+    startBounds.offset(startScreenX - endScreenX, startScreenY - endScreenY);
+
+    final int startLeft = startBounds.left;
+    final int endLeft = endBounds.left;
+    final int startTop = startBounds.top;
+    final int endTop = endBounds.top;
+    final int startRight = startBounds.right;
+    final int endRight = endBounds.right;
+    final int startBottom = startBounds.bottom;
+    final int endBottom = endBounds.bottom;
+    ViewBounds viewBounds = new ViewBounds(endValues.view);
+    viewBounds.setTopLeft(new PointF(startLeft, startTop));
+    viewBounds.setBottomRight(new PointF(startRight, startBottom));
+
+    // Animate the top left and bottom right corners along a path
+    Path topLeftPath = getPathMotion().getPath(startLeft, startTop, endLeft, endTop);
+    ObjectAnimator topLeftAnimator =
+        ObjectAnimator.ofObject(viewBounds, TOP_LEFT_PROPERTY, null, topLeftPath);
+
+    Path bottomRightPath = getPathMotion().getPath(startRight, startBottom, endRight, endBottom);
+    ObjectAnimator bottomRightAnimator =
+        ObjectAnimator.ofObject(viewBounds, BOTTOM_RIGHT_PROPERTY, null, bottomRightPath);
+    AnimatorSet set = new AnimatorSet();
+    set.playTogether(topLeftAnimator, bottomRightAnimator);
+    return set;
+  }
+
+  private static class ViewBounds {
+    private int left;
+    private int top;
+    private int right;
+    private int bottom;
+    private final View view;
+    private int topLeftCalls;
+    private int bottomRightCalls;
+
+    public ViewBounds(View view) {
+      this.view = view;
+    }
+
+    public void setTopLeft(PointF topLeft) {
+      left = Math.round(topLeft.x);
+      top = Math.round(topLeft.y);
+      topLeftCalls++;
+      if (topLeftCalls == bottomRightCalls) {
+        updateLeftTopRightBottom();
+      }
+    }
+
+    public void setBottomRight(PointF bottomRight) {
+      right = Math.round(bottomRight.x);
+      bottom = Math.round(bottomRight.y);
+      bottomRightCalls++;
+      if (topLeftCalls == bottomRightCalls) {
+        updateLeftTopRightBottom();
+      }
+    }
+
+    private void updateLeftTopRightBottom() {
+      view.setLeft(left);
+      view.setTop(top);
+      view.setRight(right);
+      view.setBottom(bottom);
+      topLeftCalls = 0;
+      bottomRightCalls = 0;
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/CheckableImageButton.java b/java/com/android/dialershared/bubble/CheckableImageButton.java
new file mode 100644
index 0000000..7a5a432
--- /dev/null
+++ b/java/com/android/dialershared/bubble/CheckableImageButton.java
@@ -0,0 +1,101 @@
+/*
+ * Copyright (C) 2017 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.dialershared.bubble;
+
+import android.content.Context;
+import android.support.v4.view.AccessibilityDelegateCompat;
+import android.support.v4.view.ViewCompat;
+import android.support.v4.view.accessibility.AccessibilityEventCompat;
+import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat;
+import android.support.v7.widget.AppCompatImageButton;
+import android.util.AttributeSet;
+import android.view.View;
+import android.view.accessibility.AccessibilityEvent;
+import android.widget.Checkable;
+
+/**
+ * An {@link android.widget.ImageButton ImageButton} that implements {@link Checkable} and
+ * propagates the checkable state
+ */
+public class CheckableImageButton extends AppCompatImageButton implements Checkable {
+
+  // Copied without modification from AppCompat library
+
+  private static final int[] DRAWABLE_STATE_CHECKED = new int[] {android.R.attr.state_checked};
+
+  private boolean mChecked;
+
+  public CheckableImageButton(Context context) {
+    this(context, null);
+  }
+
+  public CheckableImageButton(Context context, AttributeSet attrs) {
+    this(context, attrs, android.R.attr.imageButtonStyle);
+  }
+
+  public CheckableImageButton(Context context, AttributeSet attrs, int defStyleAttr) {
+    super(context, attrs, defStyleAttr);
+
+    ViewCompat.setAccessibilityDelegate(
+        this,
+        new AccessibilityDelegateCompat() {
+          @Override
+          public void onInitializeAccessibilityEvent(View host, AccessibilityEvent event) {
+            super.onInitializeAccessibilityEvent(host, event);
+            event.setChecked(isChecked());
+          }
+
+          @Override
+          public void onInitializeAccessibilityNodeInfo(
+              View host, AccessibilityNodeInfoCompat info) {
+            super.onInitializeAccessibilityNodeInfo(host, info);
+            info.setCheckable(true);
+            info.setChecked(isChecked());
+          }
+        });
+  }
+
+  @Override
+  public void setChecked(boolean checked) {
+    if (mChecked != checked) {
+      mChecked = checked;
+      refreshDrawableState();
+      sendAccessibilityEvent(AccessibilityEventCompat.TYPE_WINDOW_CONTENT_CHANGED);
+    }
+  }
+
+  @Override
+  public boolean isChecked() {
+    return mChecked;
+  }
+
+  @Override
+  public void toggle() {
+    setChecked(!mChecked);
+  }
+
+  @Override
+  public int[] onCreateDrawableState(int extraSpace) {
+    if (mChecked) {
+      return mergeDrawableStates(
+          super.onCreateDrawableState(extraSpace + DRAWABLE_STATE_CHECKED.length),
+          DRAWABLE_STATE_CHECKED);
+    } else {
+      return super.onCreateDrawableState(extraSpace);
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/MoveHandler.java b/java/com/android/dialershared/bubble/MoveHandler.java
new file mode 100644
index 0000000..bd8fa10
--- /dev/null
+++ b/java/com/android/dialershared/bubble/MoveHandler.java
@@ -0,0 +1,276 @@
+/*
+ * Copyright (C) 2017 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.dialershared.bubble;
+
+import android.content.Context;
+import android.graphics.Point;
+import android.support.animation.FloatPropertyCompat;
+import android.support.animation.SpringAnimation;
+import android.support.animation.SpringForce;
+import android.support.annotation.NonNull;
+import android.support.v4.math.MathUtils;
+import android.view.Gravity;
+import android.view.MotionEvent;
+import android.view.VelocityTracker;
+import android.view.View;
+import android.view.View.OnTouchListener;
+import android.view.ViewConfiguration;
+import android.view.WindowManager;
+import android.view.WindowManager.LayoutParams;
+import android.widget.Scroller;
+
+/** Handles touches and manages moving the bubble in response */
+class MoveHandler implements OnTouchListener {
+
+  // Amount the ViewConfiguration's minFlingVelocity will be scaled by for our own minVelocity
+  private static final int MIN_FLING_VELOCITY_FACTOR = 8;
+  // The friction multiplier to control how slippery the bubble is when flung
+  private static final float SCROLL_FRICTION_MULTIPLIER = 4f;
+
+  private final Context context;
+  private final WindowManager windowManager;
+  private final Bubble bubble;
+  private final int minX;
+  private final int minY;
+  private final int maxX;
+  private final int maxY;
+  private final int bubbleSize;
+  private final int shadowPaddingSize;
+  private final float touchSlopSquared;
+
+  private boolean isMoving;
+  private float firstX;
+  private float firstY;
+
+  private SpringAnimation moveXAnimation;
+  private SpringAnimation moveYAnimation;
+  private VelocityTracker velocityTracker;
+  private Scroller scroller;
+
+  // Handles the left/right gravity conversion and centering
+  private final FloatPropertyCompat<WindowManager.LayoutParams> xProperty =
+      new FloatPropertyCompat<LayoutParams>("xProperty") {
+        @Override
+        public float getValue(LayoutParams windowParams) {
+          int realX = windowParams.x;
+          realX = realX + bubbleSize / 2;
+          realX = realX + shadowPaddingSize;
+          if (relativeToRight(windowParams)) {
+            int displayWidth = context.getResources().getDisplayMetrics().widthPixels;
+            realX = displayWidth - realX;
+          }
+          return MathUtils.clamp(realX, minX, maxX);
+        }
+
+        @Override
+        public void setValue(LayoutParams windowParams, float value) {
+          boolean wasOnRight = (windowParams.gravity & Gravity.RIGHT) == Gravity.RIGHT;
+          int displayWidth = context.getResources().getDisplayMetrics().widthPixels;
+          boolean onRight;
+          Integer gravityOverride = bubble.getGravityOverride();
+          if (gravityOverride == null) {
+            onRight = value > displayWidth / 2;
+          } else {
+            onRight = (gravityOverride & Gravity.RIGHT) == Gravity.RIGHT;
+          }
+          int centeringOffset = bubbleSize / 2 + shadowPaddingSize;
+          windowParams.x =
+              (int) (onRight ? (displayWidth - value - centeringOffset) : value - centeringOffset);
+          windowParams.gravity = Gravity.TOP | (onRight ? Gravity.RIGHT : Gravity.LEFT);
+          if (wasOnRight != onRight) {
+            bubble.onLeftRightSwitch(onRight);
+          }
+          if (bubble.isVisible()) {
+            windowManager.updateViewLayout(bubble.getRootView(), windowParams);
+          }
+        }
+      };
+
+  private final FloatPropertyCompat<WindowManager.LayoutParams> yProperty =
+      new FloatPropertyCompat<LayoutParams>("yProperty") {
+        @Override
+        public float getValue(LayoutParams object) {
+          return MathUtils.clamp(object.y + bubbleSize + shadowPaddingSize, minY, maxY);
+        }
+
+        @Override
+        public void setValue(LayoutParams object, float value) {
+          object.y = (int) value - bubbleSize - shadowPaddingSize;
+          if (bubble.isVisible()) {
+            windowManager.updateViewLayout(bubble.getRootView(), object);
+          }
+        }
+      };
+
+  public MoveHandler(@NonNull View targetView, @NonNull Bubble bubble) {
+    this.bubble = bubble;
+    context = targetView.getContext();
+    windowManager = context.getSystemService(WindowManager.class);
+
+    bubbleSize = context.getResources().getDimensionPixelSize(R.dimen.bubble_size);
+    shadowPaddingSize =
+        context.getResources().getDimensionPixelOffset(R.dimen.bubble_shadow_padding_size);
+    minX =
+        context.getResources().getDimensionPixelOffset(R.dimen.bubble_safe_margin_x)
+            + bubbleSize / 2;
+    minY =
+        context.getResources().getDimensionPixelOffset(R.dimen.bubble_safe_margin_y)
+            + bubbleSize / 2;
+    maxX = context.getResources().getDisplayMetrics().widthPixels - minX;
+    maxY = context.getResources().getDisplayMetrics().heightPixels - minY;
+
+    // Squared because it will be compared against the square of the touch delta. This is more
+    // efficient than needing to take a square root.
+    touchSlopSquared = (float) Math.pow(ViewConfiguration.get(context).getScaledTouchSlop(), 2);
+
+    targetView.setOnTouchListener(this);
+  }
+
+  public boolean isMoving() {
+    return isMoving;
+  }
+
+  public void undoGravityOverride() {
+    LayoutParams windowParams = bubble.getWindowParams();
+    xProperty.setValue(windowParams, xProperty.getValue(windowParams));
+  }
+
+  public void snapToBounds() {
+    ensureSprings();
+
+    moveXAnimation.animateToFinalPosition(relativeToRight(bubble.getWindowParams()) ? maxX : minX);
+    moveYAnimation.animateToFinalPosition(yProperty.getValue(bubble.getWindowParams()));
+  }
+
+  @Override
+  public boolean onTouch(View v, MotionEvent event) {
+    float eventX = event.getRawX();
+    float eventY = event.getRawY();
+    switch (event.getActionMasked()) {
+      case MotionEvent.ACTION_DOWN:
+        firstX = eventX;
+        firstY = eventY;
+        velocityTracker = VelocityTracker.obtain();
+        break;
+      case MotionEvent.ACTION_MOVE:
+        if (isMoving || hasExceededTouchSlop(event)) {
+          if (!isMoving) {
+            isMoving = true;
+            bubble.onMoveStart();
+          }
+
+          ensureSprings();
+
+          moveXAnimation.animateToFinalPosition(MathUtils.clamp(eventX, minX, maxX));
+          moveYAnimation.animateToFinalPosition(MathUtils.clamp(eventY, minY, maxY));
+        }
+
+        velocityTracker.addMovement(event);
+        break;
+      case MotionEvent.ACTION_UP:
+        if (isMoving) {
+          ViewConfiguration viewConfiguration = ViewConfiguration.get(context);
+          velocityTracker.computeCurrentVelocity(
+              1000, viewConfiguration.getScaledMaximumFlingVelocity());
+          float xVelocity = velocityTracker.getXVelocity();
+          float yVelocity = velocityTracker.getYVelocity();
+          boolean isFling = isFling(xVelocity, yVelocity);
+
+          if (isFling) {
+            Point target =
+                findTarget(
+                    xVelocity,
+                    yVelocity,
+                    (int) xProperty.getValue(bubble.getWindowParams()),
+                    (int) yProperty.getValue(bubble.getWindowParams()));
+
+            moveXAnimation.animateToFinalPosition(target.x);
+            moveYAnimation.animateToFinalPosition(target.y);
+          } else {
+            snapX();
+          }
+          isMoving = false;
+          bubble.onMoveFinish();
+        } else {
+          v.performClick();
+          bubble.primaryButtonClick();
+        }
+        break;
+    }
+    return true;
+  }
+
+  private void ensureSprings() {
+    if (moveXAnimation == null) {
+      moveXAnimation = new SpringAnimation(bubble.getWindowParams(), xProperty);
+      moveXAnimation.setSpring(new SpringForce());
+      moveXAnimation.getSpring().setDampingRatio(SpringForce.DAMPING_RATIO_NO_BOUNCY);
+    }
+
+    if (moveYAnimation == null) {
+      moveYAnimation = new SpringAnimation(bubble.getWindowParams(), yProperty);
+      moveYAnimation.setSpring(new SpringForce());
+      moveYAnimation.getSpring().setDampingRatio(SpringForce.DAMPING_RATIO_NO_BOUNCY);
+    }
+  }
+
+  private Point findTarget(float xVelocity, float yVelocity, int startX, int startY) {
+    if (scroller == null) {
+      scroller = new Scroller(context);
+      scroller.setFriction(ViewConfiguration.getScrollFriction() * SCROLL_FRICTION_MULTIPLIER);
+    }
+
+    // Find where a fling would end vertically
+    scroller.fling(startX, startY, (int) xVelocity, (int) yVelocity, minX, maxX, minY, maxY);
+    int targetY = scroller.getFinalY();
+    scroller.abortAnimation();
+
+    // If the x component of the velocity is above the minimum fling velocity, use velocity to
+    // determine edge. Otherwise use its starting position
+    boolean pullRight = isFling(xVelocity, 0) ? xVelocity > 0 : isOnRightHalf(startX);
+    return new Point(pullRight ? maxX : minX, targetY);
+  }
+
+  private boolean isFling(float xVelocity, float yVelocity) {
+    int minFlingVelocity =
+        ViewConfiguration.get(context).getScaledMinimumFlingVelocity() * MIN_FLING_VELOCITY_FACTOR;
+    return getMagnitudeSquared(xVelocity, yVelocity) > minFlingVelocity * minFlingVelocity;
+  }
+
+  private boolean isOnRightHalf(float currentX) {
+    return currentX > (minX + maxX) / 2;
+  }
+
+  private void snapX() {
+    // Check if x value is closer to min or max
+    boolean pullRight = isOnRightHalf(xProperty.getValue(bubble.getWindowParams()));
+    moveXAnimation.animateToFinalPosition(pullRight ? maxX : minX);
+  }
+
+  private boolean relativeToRight(LayoutParams windowParams) {
+    return (windowParams.gravity & Gravity.RIGHT) == Gravity.RIGHT;
+  }
+
+  private boolean hasExceededTouchSlop(MotionEvent event) {
+    return getMagnitudeSquared(event.getRawX() - firstX, event.getRawY() - firstY)
+        > touchSlopSquared;
+  }
+
+  private float getMagnitudeSquared(float deltaX, float deltaY) {
+    return deltaX * deltaX + deltaY * deltaY;
+  }
+}
diff --git a/java/com/android/dialershared/bubble/WindowRoot.java b/java/com/android/dialershared/bubble/WindowRoot.java
new file mode 100644
index 0000000..81d6b48
--- /dev/null
+++ b/java/com/android/dialershared/bubble/WindowRoot.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2017 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.dialershared.bubble;
+
+import android.content.Context;
+import android.content.res.Configuration;
+import android.support.annotation.NonNull;
+import android.view.KeyEvent;
+import android.widget.FrameLayout;
+
+/**
+ * ViewGroup that handles some overlay window concerns. Allows back button and configuration change
+ * events to be listened for via interfaces.
+ */
+public class WindowRoot extends FrameLayout {
+
+  /** Callback for when the back button is pressed while this window is in focus */
+  public interface OnBackPressedListener {
+    boolean onBackPressed();
+  }
+
+  /** Callback for when the Configuration changes for this window */
+  public interface OnConfigurationChangedListener {
+    void onConfigurationChanged(Configuration newConfiguration);
+  }
+
+  private OnBackPressedListener backPressedListener;
+  private OnConfigurationChangedListener configurationChangedListener;
+
+  public WindowRoot(@NonNull Context context) {
+    super(context);
+  }
+
+  public void setOnBackPressedListener(OnBackPressedListener listener) {
+    backPressedListener = listener;
+  }
+
+  public void setOnConfigurationChangedListener(OnConfigurationChangedListener listener) {
+    configurationChangedListener = listener;
+  }
+
+  @Override
+  public boolean dispatchKeyEvent(KeyEvent event) {
+    if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && backPressedListener != null) {
+      if (event.getAction() == KeyEvent.ACTION_UP) {
+        return backPressedListener.onBackPressed();
+      }
+      return true;
+    }
+    return super.dispatchKeyEvent(event);
+  }
+
+  @Override
+  public void dispatchConfigurationChanged(Configuration newConfig) {
+    super.dispatchConfigurationChanged(newConfig);
+    if (configurationChangedListener != null) {
+      configurationChangedListener.onConfigurationChanged(newConfig);
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/g3doc/INTEGRATION.md b/java/com/android/dialershared/bubble/g3doc/INTEGRATION.md
new file mode 100644
index 0000000..a13a605
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/INTEGRATION.md
@@ -0,0 +1,69 @@
+# Floating Bubble Integration
+
+go/bubble-integration
+
+Author: keyboardr@
+
+Last Updated: 2017-06-06
+
+Floating bubbles provide a lightweight means of providing interactive UI while
+the user is away from the app. This document details the steps necessary to
+integrate these bubbles into your app.
+
+[TOC]
+
+![Floating bubble](images/bubble_collapsed.png){height=400}
+
+## Ensure Bubbles can be shown
+
+Add the `android.permission.SYSTEM_ALERT_WINDOW` permission to your manifest.
+Before you show the bubble, call `Bubble.canShowBubbles(Context)` to see if the
+user has granted you permission. If not, you can start an Activity from
+`Bubble.getRequestPermissionIntent(Context)` to navigate the user to the system
+settings to enable drawing over other apps. This is more than just a simple
+runtime permission; the user must explicitly allow you to draw over other apps
+via this system setting. System apps may have this allowed by default, but be
+sure to test.
+
+## Create your initial `BubbleInfo`
+
+Use `BubbleInfo.builder()` to populate a `BubbleInfo` with your color, main
+icon, main Intent (which should navigate back to your app), starting Y position,
+and a list of `Actions` to put in the drawer. Each `Action` will define its
+icon, user-displayable name (used for content description), Intent to perform
+when clicked, whether it is enabled (optional, default true), and whether it is
+checked (optional, default false).
+
+![Floating bubble expanded](images/bubble_expanded.png){height=400}
+
+## Create, show, and hide the Bubble
+
+Create the bubble using `Bubble.createBubble(Context, BubbleInfo)`. The `show()`
+method is safe to call at any time. If the Bubble is already showing, it is a
+no-op. `hide()` may also be called at any time and will collapse the drawer
+before hiding if already open. While `show()` will show immediately, `hide()`
+may need to wait for other operations or animations before the bubble is hidden.
+It is unlikely you will need to keep track of this, however. The bubble will be
+hidden at its next opportunity, and `hide()` will not block.
+
+![Floating bubble with state](images/bubble_state.png){height=400}
+
+## Update the Bubble's state
+
+Call `Bubble.setBubbleInfo(BubbleInfo)` to update all displayed state.
+`BubbleInfo`s are immutable, so to make a new one using an existing
+`BubbleInfo`, use `BubbleInfo.from(BubbleInfo)` to get a `Builder` with
+prepopulated info. If only the `Action` state has changed, it is more efficient
+to just call `Bubble.updateActions(List<Action>)`
+
+![Floating bubble with text](images/bubble_text.png){height=400}
+
+## Show text
+
+To temporarily replace the icon with a textual message, call
+`Bubble.showText(CharSequence)`. The text will be displayed for several seconds
+before transitioning back to the primary icon. The drawer will be closed if open
+and cannot be reopened while the text is displayed. Any calls to `hide()` will
+be deferred until after the text is done being displayed, so if you wish to show
+an ending message of some sort you may call `hide()` immediately after
+`showText(CharSequence)`.
diff --git a/java/com/android/dialershared/bubble/g3doc/images/bubble_collapsed.png b/java/com/android/dialershared/bubble/g3doc/images/bubble_collapsed.png
new file mode 100644
index 0000000..7ecc067
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/images/bubble_collapsed.png
Binary files differ
diff --git a/java/com/android/dialershared/bubble/g3doc/images/bubble_expanded.png b/java/com/android/dialershared/bubble/g3doc/images/bubble_expanded.png
new file mode 100644
index 0000000..cd477f3
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/images/bubble_expanded.png
Binary files differ
diff --git a/java/com/android/dialershared/bubble/g3doc/images/bubble_state.png b/java/com/android/dialershared/bubble/g3doc/images/bubble_state.png
new file mode 100644
index 0000000..21ca8a8
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/images/bubble_state.png
Binary files differ
diff --git a/java/com/android/dialershared/bubble/g3doc/images/bubble_text.png b/java/com/android/dialershared/bubble/g3doc/images/bubble_text.png
new file mode 100644
index 0000000..9c476dc
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/images/bubble_text.png
Binary files differ
diff --git a/java/com/android/dialershared/bubble/res/color/bubble_checkable_mask.xml b/java/com/android/dialershared/bubble/res/color/bubble_checkable_mask.xml
new file mode 100644
index 0000000..f9416ab
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/color/bubble_checkable_mask.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:color="@android:color/white" android:state_checked="true"/>
+  <item android:color="@android:color/transparent"/>
+</selector>
diff --git a/java/com/android/dialershared/bubble/res/color/bubble_icon_tint_states.xml b/java/com/android/dialershared/bubble/res/color/bubble_icon_tint_states.xml
new file mode 100644
index 0000000..33ca1fd
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/color/bubble_icon_tint_states.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:color="#80FFFFFF" android:state_enabled="false"/>
+  <item android:color="@android:color/white"/>
+</selector>
diff --git a/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_ltr.xml b/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_ltr.xml
new file mode 100644
index 0000000..77c813a
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_ltr.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<shape xmlns:android="http://schemas.android.com/apk/res/android">
+  <corners
+      android:bottomRightRadius="@dimen/bubble_size"
+      android:topRightRadius="@dimen/bubble_size"/>
+  <solid android:color="@android:color/white"/>
+</shape>
diff --git a/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_rtl.xml b/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_rtl.xml
new file mode 100644
index 0000000..9e25421
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_rtl.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<shape xmlns:android="http://schemas.android.com/apk/res/android">
+  <corners
+      android:bottomLeftRadius="@dimen/bubble_size"
+      android:topLeftRadius="@dimen/bubble_size"/>
+  <solid android:color="@android:color/white"/>
+</shape>
diff --git a/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_checkable_circle.xml b/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_checkable_circle.xml
new file mode 100644
index 0000000..85e0b24
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_checkable_circle.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<ripple xmlns:android="http://schemas.android.com/apk/res/android"
+    android:color="?android:colorControlHighlight">
+  <item>
+    <shape android:shape="oval">
+      <solid android:color="@color/bubble_checkable_mask"/>
+    </shape>
+  </item>
+  <item android:id="@android:id/mask">
+    <shape android:shape="oval">
+      <solid android:color="@android:color/white"/>
+    </shape>
+  </item>
+</ripple>
diff --git a/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_circle.xml b/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_circle.xml
new file mode 100644
index 0000000..8d5cf0b
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_circle.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<ripple xmlns:android="http://schemas.android.com/apk/res/android"
+    android:color="?android:colorControlHighlight">
+  <item>
+    <shape>
+      <corners android:radius="@dimen/bubble_size"/>
+      <solid android:color="@android:color/white"/>
+    </shape>
+  </item>
+</ripple>
diff --git a/java/com/android/dialershared/bubble/res/layout/bubble_base.xml b/java/com/android/dialershared/bubble/res/layout/bubble_base.xml
new file mode 100644
index 0000000..76970f0
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/layout/bubble_base.xml
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:clipToPadding="false"
+    tools:theme="@style/Theme.AppCompat">
+  <View
+      android:id="@+id/bubble_drawer_shadow_provider"
+      android:layout_width="@dimen/bubble_size"
+      android:layout_height="@dimen/bubble_size"
+      android:layout_marginTop="@dimen/bubble_shadow_padding_size"
+      android:layout_marginBottom="@dimen/bubble_shadow_padding_size"
+      android:layout_marginStart="@dimen/bubble_shadow_padding_size"
+      android:background="@drawable/bubble_ripple_circle"
+      android:backgroundTint="@android:color/transparent"
+      android:elevation="10dp"
+      android:visibility="invisible"
+      />
+  <FrameLayout
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="48dp"
+      android:elevation="10dp"
+      android:paddingTop="@dimen/bubble_shadow_padding_size"
+      android:paddingBottom="@dimen/bubble_shadow_padding_size"
+      android:paddingEnd="@dimen/bubble_shadow_padding_size">
+
+    <LinearLayout
+        android:id="@+id/bubble_expanded_layout"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingStart="32dp"
+        android:paddingEnd="8dp"
+        android:background="@drawable/bubble_background_pill_ltr"
+        android:layoutDirection="inherit"
+        android:orientation="horizontal"
+        android:visibility="gone"
+        tools:backgroundTint="#FF0000FF"
+        tools:visibility="visible">
+      <com.android.dialershared.bubble.CheckableImageButton
+          android:id="@+id/bubble_icon_first"
+          android:layout_width="@dimen/bubble_size"
+          android:layout_height="@dimen/bubble_size"
+          android:layout_marginStart="4dp"
+          android:padding="@dimen/bubble_icon_padding"
+          android:tint="@color/bubble_icon_tint_states"
+          android:tintMode="src_in"
+          tools:background="@drawable/bubble_ripple_checkable_circle"
+          tools:src="@android:drawable/ic_lock_idle_lock"/>
+      <com.android.dialershared.bubble.CheckableImageButton
+          android:id="@+id/bubble_icon_second"
+          android:layout_width="@dimen/bubble_size"
+          android:layout_height="@dimen/bubble_size"
+          android:layout_marginStart="4dp"
+          android:padding="@dimen/bubble_icon_padding"
+          android:tint="@color/bubble_icon_tint_states"
+          android:tintMode="src_in"
+          tools:background="@drawable/bubble_ripple_checkable_circle"
+          tools:src="@android:drawable/ic_input_add"/>
+      <com.android.dialershared.bubble.CheckableImageButton
+          android:id="@+id/bubble_icon_third"
+          android:layout_width="@dimen/bubble_size"
+          android:layout_height="@dimen/bubble_size"
+          android:layout_marginStart="4dp"
+          android:padding="@dimen/bubble_icon_padding"
+          android:tint="@color/bubble_icon_tint_states"
+          android:tintMode="src_in"
+          tools:background="@drawable/bubble_ripple_checkable_circle"
+          tools:src="@android:drawable/ic_menu_call"/>
+    </LinearLayout>
+  </FrameLayout>
+  <FrameLayout
+      android:id="@+id/bubble_primary_container"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_gravity="start"
+      android:animateLayoutChanges="true"
+      android:clipChildren="false"
+      android:clipToPadding="false"
+      android:elevation="12dp">
+    <ViewAnimator
+        android:id="@+id/bubble_button_primary"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_margin="@dimen/bubble_shadow_padding_size"
+        android:background="@drawable/bubble_ripple_circle"
+        android:measureAllChildren="false"
+        tools:backgroundTint="#FF0000AA">
+      <ImageView
+          android:id="@+id/bubble_icon_primary"
+          android:layout_width="@dimen/bubble_size"
+          android:layout_height="@dimen/bubble_size"
+          android:padding="@dimen/bubble_icon_padding"
+          android:tint="@android:color/white"
+          android:tintMode="src_in"
+          tools:src="@android:drawable/ic_btn_speak_now"/>
+      <TextView
+          android:id="@+id/bubble_text"
+          android:layout_width="wrap_content"
+          android:layout_height="@dimen/bubble_size"
+          android:paddingStart="@dimen/bubble_icon_padding"
+          android:paddingEnd="@dimen/bubble_icon_padding"
+          android:gravity="center"
+          android:minWidth="@dimen/bubble_size"
+          android:textAppearance="@style/TextAppearance.AppCompat"
+          tools:text="Call ended"/>
+    </ViewAnimator>
+  </FrameLayout>
+
+</FrameLayout>
diff --git a/java/com/android/dialershared/bubble/res/values/colors.xml b/java/com/android/dialershared/bubble/res/values/colors.xml
new file mode 100644
index 0000000..97545fa
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/values/colors.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<resources>
+  <color name="bubble_primary_background_darken">#33000000</color>
+</resources>
diff --git a/java/com/android/dialershared/bubble/res/values/values.xml b/java/com/android/dialershared/bubble/res/values/values.xml
new file mode 100644
index 0000000..f581617
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/values/values.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<resources>
+  <dimen name="bubble_safe_margin_x">16dp</dimen>
+  <dimen name="bubble_safe_margin_y">64dp</dimen>
+  <dimen name="bubble_size">56dp</dimen>
+  <dimen name="bubble_icon_padding">16dp</dimen>
+  <dimen name="bubble_move_elevation_change">4dp</dimen>
+  <dimen name="bubble_shadow_padding_size">16dp</dimen>
+</resources>
diff --git a/java/com/android/incallui/AndroidManifest.xml b/java/com/android/incallui/AndroidManifest.xml
index 8539bd0..703e5b5 100644
--- a/java/com/android/incallui/AndroidManifest.xml
+++ b/java/com/android/incallui/AndroidManifest.xml
@@ -15,11 +15,11 @@
   -->
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-  package="com.android.incallui">
+    package="com.android.incallui">
 
   <uses-sdk
-    android:minSdkVersion="23"
-    android:targetSdkVersion="26"/>
+      android:minSdkVersion="23"
+      android:targetSdkVersion="26"/>
 
   <uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"/>
   <!-- We use this to disable the status bar buttons of home, back and recent
@@ -31,8 +31,8 @@
   <!-- Warning: setting the required boolean to true would prevent installation of Dialer on
        devices which do not support a camera. -->
   <uses-feature
-    android:name="android.hardware.camera.any"
-    android:required="false"/>
+      android:name="android.hardware.camera.any"
+      android:required="false"/>
 
   <!-- Testing location -->
   <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
@@ -43,47 +43,49 @@
        Set taskAffinity for application is not working because it will be merged and the result is
   that all activities here still have same taskAffinity as activities under dialer. -->
   <application>
-    <meta-data android:name="android.telephony.hide_voicemail_settings_menu"
-      android:value="true"/>
+    <meta-data
+        android:name="android.telephony.hide_voicemail_settings_menu"
+        android:value="true"/>
+
     <activity
-      android:directBootAware="true"
-      android:excludeFromRecents="true"
-      android:exported="false"
-      android:label="@string/phoneAppLabel"
-      android:taskAffinity="com.android.incallui"
-      android:launchMode="singleInstance"
-      android:name="com.android.incallui.InCallActivity"
-      android:resizeableActivity="true"
-      android:screenOrientation="nosensor"
-      android:theme="@style/Theme.InCallScreen">
+        android:directBootAware="true"
+        android:excludeFromRecents="true"
+        android:exported="false"
+        android:label="@string/phoneAppLabel"
+        android:launchMode="singleInstance"
+        android:name="com.android.incallui.InCallActivity"
+        android:resizeableActivity="true"
+        android:screenOrientation="nosensor"
+        android:taskAffinity="com.android.incallui"
+        android:theme="@style/Theme.InCallScreen">
     </activity>
 
     <activity
-      android:directBootAware="true"
-      android:excludeFromRecents="true"
-      android:noHistory="true"
-      android:exported="false"
-      android:label="@string/manageConferenceLabel"
-      android:taskAffinity="com.android.incallui"
-      android:launchMode="singleTask"
-      android:name="com.android.incallui.ManageConferenceActivity"
-      android:resizeableActivity="true"
-      android:theme="@style/Theme.InCallScreen.ManageConference"/>
+        android:directBootAware="true"
+        android:excludeFromRecents="true"
+        android:exported="false"
+        android:label="@string/manageConferenceLabel"
+        android:launchMode="singleTask"
+        android:name="com.android.incallui.ManageConferenceActivity"
+        android:noHistory="true"
+        android:resizeableActivity="true"
+        android:taskAffinity="com.android.incallui"
+        android:theme="@style/Theme.InCallScreen.ManageConference"/>
 
     <service
-      android:directBootAware="true"
-      android:exported="true"
-      android:name="com.android.incallui.InCallServiceImpl"
-      android:permission="android.permission.BIND_INCALL_SERVICE">
+        android:directBootAware="true"
+        android:exported="true"
+        android:name="com.android.incallui.InCallServiceImpl"
+        android:permission="android.permission.BIND_INCALL_SERVICE">
       <meta-data
-        android:name="android.telecom.IN_CALL_SERVICE_UI"
-        android:value="true"/>
+          android:name="android.telecom.IN_CALL_SERVICE_UI"
+          android:value="true"/>
       <meta-data
-        android:name="android.telecom.IN_CALL_SERVICE_RINGING"
-        android:value="false"/>
+          android:name="android.telecom.IN_CALL_SERVICE_RINGING"
+          android:value="false"/>
       <meta-data
-        android:name="android.telecom.INCLUDE_EXTERNAL_CALLS"
-        android:value="true"/>
+          android:name="android.telecom.INCLUDE_EXTERNAL_CALLS"
+          android:value="true"/>
 
       <intent-filter>
         <action android:name="android.telecom.InCallService"/>
@@ -97,23 +99,35 @@
        excludeFromRecents="true"   -> Don't show in "recent apps" screen
        -->
     <activity
-      android:excludeFromRecents="true"
-      android:exported="false"
-      android:name="com.android.incallui.spam.SpamNotificationActivity"
-      android:noHistory="true"
-      android:taskAffinity=""
-      android:theme="@style/AfterCallNotificationTheme">
+        android:excludeFromRecents="true"
+        android:exported="false"
+        android:name="com.android.incallui.spam.SpamNotificationActivity"
+        android:noHistory="true"
+        android:taskAffinity=""
+        android:theme="@style/AfterCallNotificationTheme">
     </activity>
 
+    <activity
+        android:excludeFromRecents="true"
+        android:exported="false"
+        android:name=".AudioRouteSelectorActivity"
+        android:noHistory="true"
+        android:theme="@style/Theme.Incall.DialogHolder"
+        />
+
     <service
-      android:exported="false"
-      android:name="com.android.incallui.spam.SpamNotificationService"/>
+        android:exported="false"
+        android:name="com.android.incallui.spam.SpamNotificationService"/>
 
     <!-- BroadcastReceiver for receiving Intents from Notification mechanism. -->
     <receiver
-      android:directBootAware="true"
-      android:exported="false"
-      android:name="com.android.incallui.NotificationBroadcastReceiver"/>
+        android:directBootAware="true"
+        android:exported="false"
+        android:name="com.android.incallui.NotificationBroadcastReceiver"/>
+
+    <receiver
+        android:exported="false"
+        android:name=".ReturnToCallActionReceiver"/>
 
   </application>
 
diff --git a/java/com/android/incallui/AnswerScreenPresenter.java b/java/com/android/incallui/AnswerScreenPresenter.java
index ca34aa6..d530401 100644
--- a/java/com/android/incallui/AnswerScreenPresenter.java
+++ b/java/com/android/incallui/AnswerScreenPresenter.java
@@ -17,12 +17,14 @@
 package com.android.incallui;
 
 import android.content.Context;
+import android.os.SystemClock;
 import android.support.annotation.FloatRange;
 import android.support.annotation.NonNull;
 import android.support.v4.os.UserManagerCompat;
 import android.telecom.VideoProfile;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.ThreadUtil;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.incallui.answer.protocol.AnswerScreen;
@@ -36,11 +38,14 @@
 /** Manages changes for an incoming call screen. */
 public class AnswerScreenPresenter
     implements AnswerScreenDelegate, DialerCall.CannedTextResponsesLoadedListener {
+  private static final int ACCEPT_REJECT_CALL_TIME_OUT_IN_MILLIS = 5000;
+
   @NonNull private final Context context;
   @NonNull private final AnswerScreen answerScreen;
   @NonNull private final DialerCall call;
+  private long actionPerformedTimeMillis;
 
-  public AnswerScreenPresenter(
+  AnswerScreenPresenter(
       @NonNull Context context, @NonNull AnswerScreen answerScreen, @NonNull DialerCall call) {
     LogUtil.i("AnswerScreenPresenter.constructor", null);
     this.context = Assert.isNotNull(context);
@@ -60,6 +65,13 @@
   }
 
   @Override
+  public boolean isActionTimeout() {
+    return actionPerformedTimeMillis != 0
+        && SystemClock.elapsedRealtime() - actionPerformedTimeMillis
+            >= ACCEPT_REJECT_CALL_TIME_OUT_IN_MILLIS;
+  }
+
+  @Override
   public void onAnswerScreenUnready() {
     call.removeCannedTextResponsesLoadedListener(this);
   }
@@ -73,6 +85,7 @@
   public void onRejectCallWithMessage(String message) {
     call.reject(true /* rejectWithMessage */, message);
     onDismissDialog();
+    addTimeoutCheck();
   }
 
   @Override
@@ -100,6 +113,7 @@
         call.answer();
       }
     }
+    addTimeoutCheck();
   }
 
   @Override
@@ -114,6 +128,7 @@
     } else {
       call.reject(false /* rejectWithMessage */, null);
     }
+    addTimeoutCheck();
   }
 
   @Override
@@ -124,9 +139,27 @@
       LogUtil.i("AnswerScreenPresenter.onAnswerAndReleaseCall", "activeCall == null");
       onAnswer(false);
     } else {
+      activeCall.setReleasedByAnsweringSecondCall(true);
       activeCall.addListener(new AnswerOnDisconnected(activeCall));
       activeCall.disconnect();
     }
+    addTimeoutCheck();
+  }
+
+  @Override
+  public void onAnswerAndReleaseButtonDisabled() {
+    DialerCall activeCall = CallList.getInstance().getActiveCall();
+    if (activeCall != null) {
+      activeCall.increaseSecondCallWithoutAnswerAndReleasedButtonTimes();
+    }
+  }
+
+  @Override
+  public void onAnswerAndReleaseButtonEnabled() {
+    DialerCall activeCall = CallList.getInstance().getActiveCall();
+    if (activeCall != null) {
+      activeCall.increaseAnswerAndReleaseButtonDisplayedTimes();
+    }
   }
 
   @Override
@@ -148,7 +181,7 @@
 
     private final DialerCall disconnectingCall;
 
-    public AnswerOnDisconnected(DialerCall disconnectingCall) {
+    AnswerOnDisconnected(DialerCall disconnectingCall) {
       this.disconnectingCall = disconnectingCall;
     }
 
@@ -183,10 +216,32 @@
 
     @Override
     public void onInternationalCallOnWifi() {}
+
+    @Override
+    public void onEnrichedCallSessionUpdate() {}
   }
 
   private boolean isSmsResponseAllowed(DialerCall call) {
     return UserManagerCompat.isUserUnlocked(context)
         && call.can(android.telecom.Call.Details.CAPABILITY_RESPOND_VIA_TEXT);
   }
+
+  private void addTimeoutCheck() {
+    actionPerformedTimeMillis = SystemClock.elapsedRealtime();
+    if (answerScreen.getAnswerScreenFragment().isVisible()) {
+      ThreadUtil.postDelayedOnUiThread(
+          () -> {
+            if (!answerScreen.getAnswerScreenFragment().isVisible()) {
+              LogUtil.d(
+                  "AnswerScreenPresenter.addTimeoutCheck",
+                  "accept/reject call timed out, do nothing");
+              return;
+            }
+            LogUtil.i("AnswerScreenPresenter.addTimeoutCheck", "accept/reject call timed out");
+            // Force re-evaluate which fragment to show.
+            InCallPresenter.getInstance().refreshUi();
+          },
+          ACCEPT_REJECT_CALL_TIME_OUT_IN_MILLIS);
+    }
+  }
 }
diff --git a/java/com/android/incallui/AnswerScreenPresenterStub.java b/java/com/android/incallui/AnswerScreenPresenterStub.java
index 7bff329..2f9e608 100644
--- a/java/com/android/incallui/AnswerScreenPresenterStub.java
+++ b/java/com/android/incallui/AnswerScreenPresenterStub.java
@@ -43,5 +43,16 @@
   public void onAnswerAndReleaseCall() {}
 
   @Override
+  public void onAnswerAndReleaseButtonEnabled() {}
+
+  @Override
+  public void onAnswerAndReleaseButtonDisabled() {}
+
+  @Override
   public void updateWindowBackgroundColor(@FloatRange(from = -1f, to = 1.0f) float progress) {}
+
+  @Override
+  public boolean isActionTimeout() {
+    return false;
+  }
 }
diff --git a/java/com/android/incallui/AudioRouteSelectorActivity.java b/java/com/android/incallui/AudioRouteSelectorActivity.java
new file mode 100644
index 0000000..dfd4d1a
--- /dev/null
+++ b/java/com/android/incallui/AudioRouteSelectorActivity.java
@@ -0,0 +1,47 @@
+/*
+ * Copyright (C) 2017 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.incallui;
+
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.app.FragmentActivity;
+import com.android.incallui.audiomode.AudioModeProvider;
+import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment;
+import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment.AudioRouteSelectorPresenter;
+import com.android.incallui.call.TelecomAdapter;
+
+/** Simple activity that just shows the audio route selector fragment */
+public class AudioRouteSelectorActivity extends FragmentActivity
+    implements AudioRouteSelectorPresenter {
+
+  @Override
+  protected void onCreate(@Nullable Bundle bundle) {
+    super.onCreate(bundle);
+    AudioRouteSelectorDialogFragment.newInstance(AudioModeProvider.getInstance().getAudioState())
+        .show(getSupportFragmentManager(), null);
+  }
+
+  @Override
+  public void onAudioRouteSelected(int audioRoute) {
+    TelecomAdapter.getInstance().setAudioRoute(audioRoute);
+  }
+
+  @Override
+  public void onAudioRouteSelectorDismiss() {
+    finish();
+  }
+}
diff --git a/java/com/android/incallui/CallButtonPresenter.java b/java/com/android/incallui/CallButtonPresenter.java
index b0c3a99..e36d9cf 100644
--- a/java/com/android/incallui/CallButtonPresenter.java
+++ b/java/com/android/incallui/CallButtonPresenter.java
@@ -300,23 +300,15 @@
    */
   @Override
   public void switchCameraClicked(boolean useFrontFacingCamera) {
-    InCallCameraManager cameraManager = InCallPresenter.getInstance().getInCallCameraManager();
-    cameraManager.setUseFrontFacingCamera(useFrontFacingCamera);
-
-    String cameraId = cameraManager.getActiveCameraId();
-    if (cameraId != null) {
-      final int cameraDir =
-          cameraManager.isUsingFrontFacingCamera()
-              ? CameraDirection.CAMERA_DIRECTION_FRONT_FACING
-              : CameraDirection.CAMERA_DIRECTION_BACK_FACING;
-      mCall.setCameraDir(cameraDir);
-      mCall.getVideoTech().setCamera(cameraId);
-    }
+    updateCamera(useFrontFacingCamera);
   }
 
   @Override
   public void toggleCameraClicked() {
     LogUtil.i("CallButtonPresenter.toggleCameraClicked", "");
+    if (mCall == null) {
+      return;
+    }
     Logger.get(mContext)
         .logCallImpression(
             DialerImpression.Type.IN_CALL_SCREEN_SWAP_CAMERA,
@@ -345,8 +337,11 @@
             mCall.getTimeAddedMs());
 
     if (pause) {
+      mCall.getVideoTech().setCamera(null);
       mCall.getVideoTech().stopTransmission();
     } else {
+      updateCamera(
+          InCallPresenter.getInstance().getInCallCameraManager().isUsingFrontFacingCamera());
       mCall.getVideoTech().resumeTransmission();
     }
 
@@ -354,6 +349,21 @@
     mInCallButtonUi.enableButton(InCallButtonIds.BUTTON_PAUSE_VIDEO, false);
   }
 
+  private void updateCamera(boolean useFrontFacingCamera) {
+    InCallCameraManager cameraManager = InCallPresenter.getInstance().getInCallCameraManager();
+    cameraManager.setUseFrontFacingCamera(useFrontFacingCamera);
+
+    String cameraId = cameraManager.getActiveCameraId();
+    if (cameraId != null) {
+      final int cameraDir =
+          cameraManager.isUsingFrontFacingCamera()
+              ? CameraDirection.CAMERA_DIRECTION_FRONT_FACING
+              : CameraDirection.CAMERA_DIRECTION_BACK_FACING;
+      mCall.setCameraDir(cameraDir);
+      mCall.getVideoTech().setCamera(cameraId);
+    }
+  }
+
   private void updateUi(InCallState state, DialerCall call) {
     LogUtil.v("CallButtonPresenter", "updating call UI for call: ", call);
 
diff --git a/java/com/android/incallui/CallCardPresenter.java b/java/com/android/incallui/CallCardPresenter.java
index c2b99c1..67b9177 100644
--- a/java/com/android/incallui/CallCardPresenter.java
+++ b/java/com/android/incallui/CallCardPresenter.java
@@ -44,12 +44,9 @@
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.ActivityCompat;
-import com.android.dialer.enrichedcall.EnrichedCallComponent;
-import com.android.dialer.enrichedcall.EnrichedCallManager;
-import com.android.dialer.enrichedcall.Session;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.multimedia.MultimediaData;
@@ -85,8 +82,7 @@
         InCallDetailsListener,
         InCallEventListener,
         InCallScreenDelegate,
-        DialerCallListener,
-        EnrichedCallManager.StateChangedListener {
+        DialerCallListener {
 
   /**
    * Amount of time to wait before sending an announcement via the accessibility manager. When the
@@ -249,7 +245,7 @@
 
   @Override
   public void onStateChange(InCallState oldState, InCallState newState, CallList callList) {
-    LogUtil.v("CallCardPresenter.onStateChange", "" + newState);
+    LogUtil.v("CallCardPresenter.onStateChange", "oldState: %s, newState: %s", oldState, newState);
     if (mInCallScreen == null) {
       return;
     }
@@ -376,6 +372,12 @@
   @Override
   public void onInternationalCallOnWifi() {}
 
+  @Override
+  public void onEnrichedCallSessionUpdate() {
+    LogUtil.enterBlock("CallCardPresenter.onEnrichedCallSessionUpdate");
+    updatePrimaryDisplayInfo();
+  }
+
   /** Handles a change to the child number by refreshing the primary call info. */
   @Override
   public void onDialerCallChildNumberChange() {
@@ -418,12 +420,6 @@
     updatePrimaryCallState();
   }
 
-  @Override
-  public void onEnrichedCallStateChanged() {
-    LogUtil.enterBlock("CallCardPresenter.onEnrichedCallStateChanged");
-    updatePrimaryDisplayInfo();
-  }
-
   private boolean shouldRefreshPrimaryInfo(boolean primaryChanged) {
     if (mPrimary == null) {
       return false;
@@ -475,7 +471,8 @@
                   mPrimary.getConnectTimeMillis(),
                   CallerInfoUtils.isVoiceMailNumber(mContext, mPrimary),
                   mPrimary.isRemotelyHeld(),
-                  isBusiness));
+                  isBusiness,
+                  supports2ndCallOnHold()));
 
       InCallActivity activity =
           (InCallActivity) (mInCallScreen.getInCallScreenFragment().getActivity());
@@ -505,6 +502,15 @@
         && !mIsFullscreen;
   }
 
+  private boolean supports2ndCallOnHold() {
+    DialerCall firstCall = CallList.getInstance().getActiveOrBackgroundCall();
+    DialerCall incomingCall = CallList.getInstance().getIncomingCall();
+    if (firstCall != null && incomingCall != null && firstCall != incomingCall) {
+      return incomingCall.can(Details.CAPABILITY_HOLD);
+    }
+    return true;
+  }
+
   @Override
   public void onCallStateButtonClicked() {
     Intent broadcastIntent = Bindings.get(mContext).getCallStateButtonBroadcastIntent(mContext);
@@ -666,26 +672,8 @@
     boolean hasWorkCallProperty = mPrimary.hasProperty(PROPERTY_ENTERPRISE_CALL);
 
     MultimediaData multimediaData = null;
-    if (mPrimary.getNumber() != null) {
-      EnrichedCallManager manager = EnrichedCallComponent.get(mContext).getEnrichedCallManager();
-
-      EnrichedCallManager.Filter filter;
-      if (mPrimary.isIncoming()) {
-        filter = manager.createIncomingCallComposerFilter();
-      } else {
-        filter = manager.createOutgoingCallComposerFilter();
-      }
-
-      Session enrichedCallSession =
-          manager.getSession(mPrimary.getUniqueCallId(), mPrimary.getNumber(), filter);
-
-      mPrimary.setEnrichedCallSession(enrichedCallSession);
-      mPrimary.setEnrichedCallCapabilities(manager.getCapabilities(mPrimary.getNumber()));
-
-      if (enrichedCallSession != null) {
-        enrichedCallSession.setUniqueDialerCallId(mPrimary.getUniqueCallId());
-        multimediaData = enrichedCallSession.getMultimediaData();
-      }
+    if (mPrimary.getEnrichedCallSession() != null) {
+      multimediaData = mPrimary.getEnrichedCallSession().getMultimediaData();
     }
 
     if (mPrimary.isConferenceCall()) {
@@ -696,7 +684,8 @@
       mInCallScreen.setPrimary(
           new PrimaryInfo(
               null /* number */,
-              getConferenceString(mPrimary),
+              CallerInfoUtils.getConferenceString(
+                  mContext, mPrimary.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE)),
               false /* nameIsNumber */,
               null /* location */,
               null /* label */,
@@ -876,11 +865,20 @@
       return;
     }
 
+    if (mSecondary.isMergeInProcess()) {
+      LogUtil.i(
+          "CallCardPresenter.updateSecondaryDisplayInfo",
+          "secondary call is merge in process, clearing info");
+      mInCallScreen.setSecondary(SecondaryInfo.createEmptySecondaryInfo(mIsFullscreen));
+      return;
+    }
+
     if (mSecondary.isConferenceCall()) {
       mInCallScreen.setSecondary(
           new SecondaryInfo(
               true /* show */,
-              getConferenceString(mSecondary),
+              CallerInfoUtils.getConferenceString(
+                  mContext, mSecondary.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE)),
               false /* nameIsNumber */,
               null /* label */,
               mSecondary.getCallProviderLabel(),
@@ -972,7 +970,7 @@
   }
 
   /** Gets the name to display for the call. */
-  String getNameForCall(ContactCacheEntry contactInfo) {
+  private String getNameForCall(ContactCacheEntry contactInfo) {
     String preferredName =
         ContactDisplayUtils.getPreferredDisplayName(
             contactInfo.namePrimary, contactInfo.nameAlternative, mContactsPreferences);
@@ -982,19 +980,6 @@
     return preferredName;
   }
 
-  /** Gets the number to display for a call. */
-  String getNumberForCall(ContactCacheEntry contactInfo) {
-    // If the name is empty, we use the number for the name...so don't show a second
-    // number in the number field
-    String preferredName =
-        ContactDisplayUtils.getPreferredDisplayName(
-            contactInfo.namePrimary, contactInfo.nameAlternative, mContactsPreferences);
-    if (TextUtils.isEmpty(preferredName)) {
-      return contactInfo.location;
-    }
-    return contactInfo.number;
-  }
-
   @Override
   public void onSecondaryInfoClicked() {
     if (mSecondary == null) {
@@ -1035,15 +1020,6 @@
     return mPrimary != null && mPrimary.getState() == DialerCall.State.ACTIVE;
   }
 
-  private String getConferenceString(DialerCall call) {
-    boolean isGenericConference = call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE);
-    LogUtil.v("CallCardPresenter.getConferenceString", "" + isGenericConference);
-
-    final int resId =
-        isGenericConference ? R.string.generic_conference_call_name : R.string.conference_call_name;
-    return mContext.getResources().getString(resId);
-  }
-
   private boolean shouldShowEndCallButton(DialerCall primary, int callState) {
     if (primary == null) {
       return false;
@@ -1063,7 +1039,6 @@
 
   @Override
   public void onInCallScreenResumed() {
-    EnrichedCallComponent.get(mContext).getEnrichedCallManager().registerStateChangedListener(this);
     updatePrimaryDisplayInfo();
 
     if (shouldSendAccessibilityEvent) {
@@ -1072,11 +1047,7 @@
   }
 
   @Override
-  public void onInCallScreenPaused() {
-    EnrichedCallComponent.get(mContext)
-        .getEnrichedCallManager()
-        .unregisterStateChangedListener(this);
-  }
+  public void onInCallScreenPaused() {}
 
   static boolean sendAccessibilityEvent(Context context, InCallScreen inCallScreen) {
     AccessibilityManager am =
diff --git a/java/com/android/incallui/CallerInfoUtils.java b/java/com/android/incallui/CallerInfoUtils.java
index 5644466..8f23107 100644
--- a/java/com/android/incallui/CallerInfoUtils.java
+++ b/java/com/android/incallui/CallerInfoUtils.java
@@ -282,4 +282,11 @@
         });
     loader.startLoading();
   }
+
+  /** @return conference name for conference call. */
+  public static String getConferenceString(Context context, boolean isGenericConference) {
+    final int resId =
+        isGenericConference ? R.string.generic_conference_call_name : R.string.conference_call_name;
+    return context.getResources().getString(resId);
+  }
 }
diff --git a/java/com/android/incallui/ContactInfoCache.java b/java/com/android/incallui/ContactInfoCache.java
index e45eb97..fdfba3b 100644
--- a/java/com/android/incallui/ContactInfoCache.java
+++ b/java/com/android/incallui/ContactInfoCache.java
@@ -33,6 +33,7 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.WorkerThread;
+import android.support.v4.content.ContextCompat;
 import android.support.v4.os.UserManagerCompat;
 import android.telecom.TelecomManager;
 import android.telephony.PhoneNumberUtils;
@@ -406,7 +407,7 @@
     } else {
       ContactCacheEntry initialCacheEntry =
           updateCallerInfoInCacheOnAnyThread(
-              callId, call.getNumberPresentation(), callerInfo, isIncoming, false, queryToken);
+              callId, call.getNumberPresentation(), callerInfo, false, queryToken);
       sendInfoNotifications(callId, initialCacheEntry);
     }
   }
@@ -416,7 +417,6 @@
       String callId,
       int numberPresentation,
       CallerInfo callerInfo,
-      boolean isIncoming,
       boolean didLocalLookup,
       CallerInfoQueryToken queryToken) {
     Log.d(
@@ -443,16 +443,7 @@
     Log.d(TAG, "Existing cacheEntry in hashMap " + existingCacheEntry);
 
     if (didLocalLookup) {
-      // Before issuing a request for more data from other services, we only check that the
-      // contact wasn't found in the local DB.  We don't check the if the cache entry already
-      // has a name because we allow overriding cnap data with data from other services.
-      if (!callerInfo.contactExists && mPhoneNumberService != null) {
-        Log.d(TAG, "Contact lookup. Local contacts miss, checking remote");
-        final PhoneNumberServiceListener listener =
-            new PhoneNumberServiceListener(callId, queryToken.mQueryId);
-        cacheEntry.hasPendingQuery = true;
-        mPhoneNumberService.getPhoneNumberInfo(cacheEntry.number, listener, listener, isIncoming);
-      } else if (cacheEntry.displayPhotoUri != null) {
+      if (cacheEntry.displayPhotoUri != null) {
         // When the difference between 2 numbers is only the prefix (e.g. + or IDD),
         // we will still trigger force query so that the number can be updated on
         // the calling screen. We need not query the image again if the previous
@@ -606,7 +597,7 @@
 
     // This will only be true for emergency numbers
     if (info.photoResource != 0) {
-      cce.photo = context.getResources().getDrawable(info.photoResource);
+      cce.photo = ContextCompat.getDrawable(context, info.photoResource);
     } else if (info.isCachedPhotoCurrent) {
       if (info.cachedPhoto != null) {
         cce.photo = info.cachedPhoto;
@@ -789,7 +780,7 @@
       maybeUpdateFromCequintCallerId(ci, cw.cnapName, mIsIncoming);
       long time = SystemClock.uptimeMillis() - start;
       Log.d(TAG, "Cequint Caller Id look up takes " + time + " ms.");
-      updateCallerInfoInCacheOnAnyThread(cw.callId, cw.numberPresentation, ci, mIsIncoming, true, mQueryToken);
+      updateCallerInfoInCacheOnAnyThread(cw.callId, cw.numberPresentation, ci, true, mQueryToken);
     }
 
     @Override
@@ -807,6 +798,16 @@
         clearCallbacks(callId);
         return;
       }
+      // Before issuing a request for more data from other services, we only check that the
+      // contact wasn't found in the local DB.  We don't check the if the cache entry already
+      // has a name because we allow overriding cnap data with data from other services.
+      if (!callerInfo.contactExists && mPhoneNumberService != null) {
+        Log.d(TAG, "Contact lookup. Local contacts miss, checking remote");
+        final PhoneNumberServiceListener listener =
+            new PhoneNumberServiceListener(callId, mQueryToken.mQueryId);
+        cacheEntry.hasPendingQuery = true;
+        mPhoneNumberService.getPhoneNumberInfo(cacheEntry.number, listener, listener, mIsIncoming);
+      }
       sendInfoNotifications(callId, cacheEntry);
       if (!cacheEntry.hasPendingQuery) {
         if (callerInfo.contactExists) {
@@ -870,6 +871,7 @@
         entry.shouldShowLocation = oldEntry.shouldShowLocation;
         // Contact specific ringtone is obtained from local lookup.
         entry.contactRingtoneUri = oldEntry.contactRingtoneUri;
+        entry.originalPhoneNumber = oldEntry.originalPhoneNumber;
       }
 
       // If no image and it's a business, switch to using the default business avatar.
diff --git a/java/com/android/incallui/ExternalCallNotifier.java b/java/com/android/incallui/ExternalCallNotifier.java
index 0c2493c..f01a294 100644
--- a/java/com/android/incallui/ExternalCallNotifier.java
+++ b/java/com/android/incallui/ExternalCallNotifier.java
@@ -29,6 +29,7 @@
 import android.os.Build.VERSION_CODES;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.v4.os.BuildCompat;
 import android.telecom.Call;
 import android.telecom.PhoneAccount;
 import android.telecom.VideoProfile;
@@ -41,8 +42,7 @@
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.BitmapUtil;
 import com.android.contacts.common.util.ContactDisplayUtils;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
+import com.android.dialer.notification.NotificationChannelId;
 import com.android.incallui.call.DialerCall;
 import com.android.incallui.call.DialerCallDelegate;
 import com.android.incallui.call.ExternalCallList;
@@ -59,9 +59,10 @@
 public class ExternalCallNotifier implements ExternalCallList.ExternalCallListener {
 
   /** Tag used with the notification manager to uniquely identify external call notifications. */
-  private static final int NOTIFICATION_ID = R.id.notification_external_call;
+  private static final String NOTIFICATION_TAG = "EXTERNAL_CALL";
 
-  private static final String NOTIFICATION_GROUP = "ExternalCallNotifier";
+  private static final int NOTIFICATION_SUMMARY_ID = -1;
+
   private final Context mContext;
   private final ContactInfoCache mContactInfoCache;
   private Map<Call, NotificationInfo> mNotifications = new ArrayMap<>();
@@ -188,15 +189,14 @@
 
     NotificationManager notificationManager =
         (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
-    notificationManager.cancel(
-        String.valueOf(mNotifications.get(call).getNotificationId()), NOTIFICATION_ID);
+    notificationManager.cancel(NOTIFICATION_TAG, mNotifications.get(call).getNotificationId());
 
     mNotifications.remove(call);
 
     if (mShowingSummary && mNotifications.size() <= 1) {
       // Where a summary notification is showing and there is now not enough notifications to
       // necessitate a summary, cancel the summary.
-      notificationManager.cancel(NOTIFICATION_GROUP, NOTIFICATION_ID);
+      notificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_SUMMARY_ID);
       mShowingSummary = false;
 
       // If there is still a single call requiring a notification, re-post the notification as a
@@ -237,7 +237,7 @@
     builder.setOngoing(true);
     // Make the notification prioritized over the other normal notifications.
     builder.setPriority(Notification.PRIORITY_HIGH);
-    builder.setGroup(NOTIFICATION_GROUP);
+    builder.setGroup(NOTIFICATION_TAG);
 
     boolean isVideoCall = VideoProfile.isVideo(info.getCall().getDetails().getVideoState());
     // Set the content ("Ongoing call on another device")
@@ -251,9 +251,9 @@
     builder.setLargeIcon(info.getLargeIcon());
     builder.setColor(mContext.getResources().getColor(R.color.dialer_theme_color));
     builder.addPerson(info.getPersonReference());
-
-    NotificationChannelManager.applyChannel(
-        builder, mContext, Channel.EXTERNAL_CALL, info.getCall().getDetails().getAccountHandle());
+    if (BuildCompat.isAtLeastO()) {
+      builder.setChannelId(NotificationChannelId.DEFAULT);
+    }
 
     // Where the external call supports being transferred to the local device, add an action
     // to the notification to initiate the call pull process.
@@ -286,20 +286,16 @@
     Notification.Builder publicBuilder = new Notification.Builder(mContext);
     publicBuilder.setSmallIcon(R.drawable.quantum_ic_call_white_24);
     publicBuilder.setColor(mContext.getResources().getColor(R.color.dialer_theme_color));
-
-    NotificationChannelManager.applyChannel(
-        publicBuilder,
-        mContext,
-        Channel.EXTERNAL_CALL,
-        info.getCall().getDetails().getAccountHandle());
+    if (BuildCompat.isAtLeastO()) {
+      publicBuilder.setChannelId(NotificationChannelId.DEFAULT);
+    }
 
     builder.setPublicVersion(publicBuilder.build());
     Notification notification = builder.build();
 
     NotificationManager notificationManager =
         (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
-    notificationManager.notify(
-        String.valueOf(info.getNotificationId()), NOTIFICATION_ID, notification);
+    notificationManager.notify(NOTIFICATION_TAG, info.getNotificationId(), notification);
 
     if (!mShowingSummary && mNotifications.size() > 1) {
       // If the number of notifications shown is > 1, and we're not already showing a group summary,
@@ -310,12 +306,13 @@
       summary.setOngoing(true);
       // Make the notification prioritized over the other normal notifications.
       summary.setPriority(Notification.PRIORITY_HIGH);
-      summary.setGroup(NOTIFICATION_GROUP);
+      summary.setGroup(NOTIFICATION_TAG);
       summary.setGroupSummary(true);
       summary.setSmallIcon(R.drawable.quantum_ic_call_white_24);
-      NotificationChannelManager.applyChannel(
-          summary, mContext, Channel.EXTERNAL_CALL, info.getCall().getDetails().getAccountHandle());
-      notificationManager.notify(NOTIFICATION_GROUP, NOTIFICATION_ID, summary.build());
+      if (BuildCompat.isAtLeastO()) {
+        summary.setChannelId(NotificationChannelId.DEFAULT);
+      }
+      notificationManager.notify(NOTIFICATION_TAG, NOTIFICATION_SUMMARY_ID, summary.build());
       mShowingSummary = true;
     }
   }
@@ -384,11 +381,10 @@
       ContactInfoCache.ContactCacheEntry contactInfo,
       android.telecom.Call call) {
 
-    if (call.getDetails().hasProperty(android.telecom.Call.Details.PROPERTY_CONFERENCE)
-        && !call.getDetails()
-            .hasProperty(android.telecom.Call.Details.PROPERTY_GENERIC_CONFERENCE)) {
-
-      return context.getResources().getString(R.string.conference_call_name);
+    if (call.getDetails().hasProperty(android.telecom.Call.Details.PROPERTY_CONFERENCE)) {
+      return CallerInfoUtils.getConferenceString(
+          context,
+          call.getDetails().hasProperty(android.telecom.Call.Details.PROPERTY_GENERIC_CONFERENCE));
     }
 
     String preferredName =
diff --git a/java/com/android/incallui/InCallActivity.java b/java/com/android/incallui/InCallActivity.java
index cc9a8e4..c95086c 100644
--- a/java/com/android/incallui/InCallActivity.java
+++ b/java/com/android/incallui/InCallActivity.java
@@ -28,16 +28,15 @@
 import android.support.v4.app.FragmentManager;
 import android.support.v4.app.FragmentTransaction;
 import android.support.v4.graphics.ColorUtils;
-import android.telecom.DisconnectCause;
 import android.telephony.TelephonyManager;
 import android.view.KeyEvent;
 import android.view.MenuItem;
 import android.view.MotionEvent;
 import android.view.View;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.ActivityCompat;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
 import com.android.incallui.answer.bindings.AnswerBindings;
@@ -48,6 +47,7 @@
 import com.android.incallui.call.CallList;
 import com.android.incallui.call.DialerCall;
 import com.android.incallui.call.DialerCall.State;
+import com.android.incallui.disconnectdialog.DisconnectMessage;
 import com.android.incallui.incall.bindings.InCallBindings;
 import com.android.incallui.incall.protocol.InCallButtonUiDelegate;
 import com.android.incallui.incall.protocol.InCallButtonUiDelegateFactory;
@@ -393,8 +393,8 @@
     common.showPostCharWaitDialog(callId, chars);
   }
 
-  public void maybeShowErrorDialogOnDisconnect(DisconnectCause disconnectCause) {
-    common.maybeShowErrorDialogOnDisconnect(disconnectCause);
+  public void maybeShowErrorDialogOnDisconnect(DisconnectMessage disconnectMessage) {
+    common.maybeShowErrorDialogOnDisconnect(disconnectMessage);
   }
 
   public void dismissPendingDialogs() {
@@ -630,12 +630,22 @@
       AnswerScreen answerScreen = getAnswerScreen();
       if (answerScreen.getCallId().equals(call.getId())
           && answerScreen.isVideoCall() == call.isVideoCall()
-          && answerScreen.isVideoUpgradeRequest() == isVideoUpgradeRequest) {
+          && answerScreen.isVideoUpgradeRequest() == isVideoUpgradeRequest
+          && !answerScreen.isActionTimeout()) {
+        LogUtil.d(
+            "InCallActivity.showAnswerScreenFragment",
+            "answer fragment exists for same call and has NOT been accepted/rejected/timed out");
         return false;
       }
-      LogUtil.i(
-          "InCallActivity.showAnswerScreenFragment",
-          "answer fragment exists but arguments do not match");
+      if (answerScreen.isActionTimeout()) {
+        LogUtil.i(
+            "InCallActivity.showAnswerScreenFragment",
+            "answer fragment exists but has been accepted/rejected and timed out");
+      } else {
+        LogUtil.i(
+            "InCallActivity.showAnswerScreenFragment",
+            "answer fragment exists but arguments do not match");
+      }
       hideAnswerScreenFragment(transaction);
     }
 
@@ -694,13 +704,8 @@
     if (didShowInCallScreen) {
       return false;
     }
-    InCallScreen inCallScreen = getInCallScreen();
-    if (inCallScreen == null) {
-      inCallScreen = InCallBindings.createInCallScreen();
-      transaction.add(R.id.main, inCallScreen.getInCallScreenFragment(), TAG_IN_CALL_SCREEN);
-    } else {
-      transaction.show(inCallScreen.getInCallScreenFragment());
-    }
+    InCallScreen inCallScreen = InCallBindings.createInCallScreen();
+    transaction.add(R.id.main, inCallScreen.getInCallScreenFragment(), TAG_IN_CALL_SCREEN);
     Logger.get(this).logScreenView(ScreenEvent.Type.INCALL, this);
     didShowInCallScreen = true;
     return true;
@@ -712,7 +717,7 @@
     }
     InCallScreen inCallScreen = getInCallScreen();
     if (inCallScreen != null) {
-      transaction.hide(inCallScreen.getInCallScreenFragment());
+      transaction.remove(inCallScreen.getInCallScreenFragment());
     }
     didShowInCallScreen = false;
     return true;
diff --git a/java/com/android/incallui/InCallActivityCommon.java b/java/com/android/incallui/InCallActivityCommon.java
index 4b0a3cd..3a264be 100644
--- a/java/com/android/incallui/InCallActivityCommon.java
+++ b/java/com/android/incallui/InCallActivityCommon.java
@@ -21,7 +21,6 @@
 import android.app.ActivityManager.TaskDescription;
 import android.app.AlertDialog;
 import android.app.Dialog;
-import android.content.Context;
 import android.content.DialogInterface;
 import android.content.DialogInterface.OnCancelListener;
 import android.content.DialogInterface.OnDismissListener;
@@ -36,10 +35,7 @@
 import android.support.v4.app.FragmentManager;
 import android.support.v4.app.FragmentTransaction;
 import android.support.v4.content.res.ResourcesCompat;
-import android.telecom.DisconnectCause;
 import android.telecom.PhoneAccountHandle;
-import android.text.TextUtils;
-import android.util.Pair;
 import android.view.KeyEvent;
 import android.view.View;
 import android.view.Window;
@@ -62,9 +58,9 @@
 import com.android.incallui.call.DialerCall;
 import com.android.incallui.call.DialerCall.State;
 import com.android.incallui.call.TelecomAdapter;
+import com.android.incallui.disconnectdialog.DisconnectMessage;
 import com.android.incallui.telecomeventui.InternationalCallOnWifiDialogFragment;
 import com.android.incallui.telecomeventui.InternationalCallOnWifiDialogFragment.Callback;
-import com.android.incallui.wifi.EnableWifiCallingPrompt;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.util.ArrayList;
@@ -497,18 +493,15 @@
     }
   }
 
-  public void maybeShowErrorDialogOnDisconnect(DisconnectCause cause) {
+  public void maybeShowErrorDialogOnDisconnect(DisconnectMessage disconnectMessage) {
     LogUtil.i(
-        "InCallActivityCommon.maybeShowErrorDialogOnDisconnect", "disconnect cause: %s", cause);
+        "InCallActivityCommon.maybeShowErrorDialogOnDisconnect",
+        "disconnect cause: %s",
+        disconnectMessage);
 
     if (!inCallActivity.isFinishing()) {
-      if (EnableWifiCallingPrompt.shouldShowPrompt(cause)) {
-        Pair<Dialog, CharSequence> pair =
-            EnableWifiCallingPrompt.createDialog(inCallActivity, cause);
-        showErrorDialog(pair.first, pair.second);
-      } else if (shouldShowDisconnectErrorDialog(cause)) {
-        Pair<Dialog, CharSequence> pair = getDisconnectErrorDialog(inCallActivity, cause);
-        showErrorDialog(pair.first, pair.second);
+      if (disconnectMessage.dialog != null) {
+        showErrorDialog(disconnectMessage.dialog, disconnectMessage.toastMessage);
       }
     }
   }
@@ -557,23 +550,6 @@
     }
   }
 
-  private static boolean shouldShowDisconnectErrorDialog(@NonNull DisconnectCause cause) {
-    return !TextUtils.isEmpty(cause.getDescription())
-        && (cause.getCode() == DisconnectCause.ERROR
-            || cause.getCode() == DisconnectCause.RESTRICTED);
-  }
-
-  private static Pair<Dialog, CharSequence> getDisconnectErrorDialog(
-      @NonNull Context context, @NonNull DisconnectCause cause) {
-    CharSequence message = cause.getDescription();
-    Dialog dialog =
-        new AlertDialog.Builder(context)
-            .setMessage(message)
-            .setPositiveButton(android.R.string.ok, null)
-            .create();
-    return new Pair<>(dialog, message);
-  }
-
   private void showErrorDialog(Dialog dialog, CharSequence message) {
     LogUtil.i("InCallActivityCommon.showErrorDialog", "message: %s", message);
     inCallActivity.dismissPendingDialogs();
diff --git a/java/com/android/incallui/InCallPresenter.java b/java/com/android/incallui/InCallPresenter.java
index 2d6d83c..1528e7d 100644
--- a/java/com/android/incallui/InCallPresenter.java
+++ b/java/com/android/incallui/InCallPresenter.java
@@ -54,6 +54,7 @@
 import com.android.incallui.call.DialerCall;
 import com.android.incallui.call.ExternalCallList;
 import com.android.incallui.call.TelecomAdapter;
+import com.android.incallui.disconnectdialog.DisconnectMessage;
 import com.android.incallui.latencyreport.LatencyReport;
 import com.android.incallui.legacyblocking.BlockedNumberContentObserver;
 import com.android.incallui.spam.SpamCallListListener;
@@ -133,7 +134,9 @@
             android.telecom.Call telecomCall, String remainingPostDialSequence) {
           final DialerCall call = mCallList.getDialerCallFromTelecomCall(telecomCall);
           if (call == null) {
-            Log.w(this, "DialerCall not found in call list: " + telecomCall);
+            LogUtil.w(
+                "InCallPresenter.onPostDialWait",
+                "DialerCall not found in call list: " + telecomCall);
             return;
           }
           onPostDialCharWait(call.getId(), remainingPostDialSequence);
@@ -144,7 +147,9 @@
             android.telecom.Call telecomCall, android.telecom.Call.Details details) {
           final DialerCall call = mCallList.getDialerCallFromTelecomCall(telecomCall);
           if (call == null) {
-            Log.w(this, "DialerCall not found in call list: " + telecomCall);
+            LogUtil.w(
+                "InCallPresenter.onDetailsChanged",
+                "DialerCall not found in call list: " + telecomCall);
             return;
           }
 
@@ -152,7 +157,7 @@
               && !mExternalCallList.isCallTracked(telecomCall)) {
 
             // A regular call became an external call so swap call lists.
-            Log.i(this, "Call became external: " + telecomCall);
+            LogUtil.i("InCallPresenter.onDetailsChanged", "Call became external: " + telecomCall);
             mCallList.onInternalCallMadeExternal(mContext, telecomCall);
             mExternalCallList.onCallAdded(telecomCall);
             return;
@@ -166,7 +171,9 @@
         @Override
         public void onConferenceableCallsChanged(
             android.telecom.Call telecomCall, List<android.telecom.Call> conferenceableCalls) {
-          Log.i(this, "onConferenceableCallsChanged: " + telecomCall);
+          LogUtil.i(
+              "InCallPresenter.onConferenceableCallsChanged",
+              "onConferenceableCallsChanged: " + telecomCall);
           onDetailsChanged(telecomCall, telecomCall.getDetails());
         }
       };
@@ -289,7 +296,8 @@
 
       if ((call.getAccountHandle() == null
           && (phoneAccountHandles == null || phoneAccountHandles.isEmpty()))) {
-        Log.i(InCallPresenter.getInstance(), "No valid accounts for call " + call);
+        LogUtil.i(
+            "InCallPresenter.isCallWithNoValidAccounts", "No valid accounts for call " + call);
         return true;
       }
     }
@@ -314,7 +322,7 @@
       ProximitySensor proximitySensor,
       FilteredNumberAsyncQueryHandler filteredNumberQueryHandler) {
     if (mServiceConnected) {
-      Log.i(this, "New service connection replacing existing one.");
+      LogUtil.i("InCallPresenter.setUp", "New service connection replacing existing one.");
       if (context != mContext || callList != mCallList) {
         throw new IllegalStateException();
       }
@@ -362,7 +370,7 @@
         .getSystemService(TelephonyManager.class)
         .listen(mPhoneStateListener, PhoneStateListener.LISTEN_CALL_STATE);
 
-    Log.d(this, "Finished InCallPresenter.setUp");
+    LogUtil.d("InCallPresenter.setUp", "Finished InCallPresenter.setUp");
   }
 
   /**
@@ -373,7 +381,7 @@
    * secondary method that performs the aforementioned logic.
    */
   public void tearDown() {
-    Log.d(this, "tearDown");
+    LogUtil.d("InCallPresenter.tearDown", "tearDown");
     mCallList.clearOnDisconnect();
 
     mServiceConnected = false;
@@ -388,7 +396,7 @@
 
   private void attemptFinishActivity() {
     final boolean doFinish = (mInCallActivity != null && isActivityStarted());
-    Log.i(this, "Hide in call UI: " + doFinish);
+    LogUtil.i("InCallPresenter.attemptFinishActivity", "Hide in call UI: " + doFinish);
     if (doFinish) {
       mInCallActivity.setExcludeFromRecents(true);
       mInCallActivity.finish();
@@ -404,12 +412,13 @@
       throw new IllegalArgumentException("unregisterActivity cannot be called with null");
     }
     if (mInCallActivity == null) {
-      Log.i(this, "No InCallActivity currently set, no need to unset.");
+      LogUtil.i(
+          "InCallPresenter.unsetActivity", "No InCallActivity currently set, no need to unset.");
       return;
     }
     if (mInCallActivity != inCallActivity) {
-      Log.w(
-          this,
+      LogUtil.w(
+          "InCallPresenter.unsetActivity",
           "Second instance of InCallActivity is trying to unregister when another"
               + " instance is active. Ignoring.");
       return;
@@ -428,7 +437,7 @@
     if (inCallActivity != null) {
       if (mInCallActivity == null) {
         updateListeners = true;
-        Log.i(this, "UI Initialized");
+        LogUtil.i("InCallPresenter.updateActivity", "UI Initialized");
       } else {
         // since setActivity is called onStart(), it can be called multiple times.
         // This is fine and ignorable, but we do not want to update the world every time
@@ -451,12 +460,12 @@
       // NOTE: This code relies on {@link #mInCallActivity} being set so we run it after
       // it has been set.
       if (mInCallState == InCallState.NO_CALLS) {
-        Log.i(this, "UI Initialized, but no calls left.  shut down.");
+        LogUtil.i("InCallPresenter.updateActivity", "UI Initialized, but no calls left. Shut down");
         attemptFinishActivity();
         return;
       }
     } else {
-      Log.i(this, "UI Destroyed");
+      LogUtil.i("InCallPresenter.updateActivity", "UI Destroyed");
       updateListeners = true;
       mInCallActivity = null;
 
@@ -496,7 +505,7 @@
   }
 
   public void onBringToForeground(boolean showDialpad) {
-    Log.i(this, "Bringing UI to foreground.");
+    LogUtil.i("InCallPresenter.onBringToForeground", "Bringing UI to foreground.");
     bringToForeground(showDialpad);
   }
 
@@ -529,11 +538,15 @@
       return false;
     }
     if (TelecomCallUtil.isEmergencyCall(call)) {
-      Log.i(this, "Not attempting to block incoming emergency call");
+      LogUtil.i(
+          "InCallPresenter.shouldAttemptBlocking",
+          "Not attempting to block incoming emergency call");
       return false;
     }
     if (FilteredNumbersUtil.hasRecentEmergencyCall(mContext)) {
-      Log.i(this, "Not attempting to block incoming call due to recent emergency call");
+      LogUtil.i(
+          "InCallPresenter.shouldAttemptBlocking",
+          "Not attempting to block incoming call due to recent emergency call");
       return false;
     }
     if (call.getDetails().hasProperty(CallCompat.Details.PROPERTY_IS_EXTERNAL_CALL)) {
@@ -583,7 +596,7 @@
           @Override
           public void onCheckComplete(final Integer id) {
             if (isReadyForTearDown()) {
-              Log.i(this, "InCallPresenter is torn down, not adding call");
+              LogUtil.i("InCallPresenter.onCheckComplete", "torn down, not adding call");
               return;
             }
             if (!hasTimedOut.get()) {
@@ -595,7 +608,8 @@
                 mCallList.onCallAdded(mContext, call, latencyReport);
               }
             } else if (id == FilteredNumberAsyncQueryHandler.INVALID_ID) {
-              Log.d(this, "checkForBlockedCall: invalid number, skipping block checking");
+              LogUtil.d(
+                  "InCallPresenter.onCheckComplete", "invalid number, skipping block checking");
               if (!hasTimedOut.get()) {
                 handler.removeCallbacks(runnable);
 
@@ -603,7 +617,8 @@
                 mCallList.onCallAdded(mContext, call, latencyReport);
               }
             } else {
-              Log.i(this, "Rejecting incoming call from blocked number");
+              LogUtil.i(
+                  "InCallPresenter.onCheckComplete", "Rejecting incoming call from blocked number");
               call.reject(false, null);
               Logger.get(mContext).logInteraction(InteractionEvent.Type.CALL_BLOCKED);
 
@@ -684,7 +699,9 @@
 
     InCallState newState = getPotentialStateFromCallList(callList);
     InCallState oldState = mInCallState;
-    Log.d(this, "onCallListChange oldState= " + oldState + " newState=" + newState);
+    LogUtil.d(
+        "InCallPresenter.onCallListChange",
+        "onCallListChange oldState= " + oldState + " newState=" + newState);
 
     // If the user placed a call and was asked to choose the account, but then pressed "Home", the
     // incall activity for that call will still exist (even if it's not visible). In the case of
@@ -695,19 +712,27 @@
     if (newState == InCallState.INCOMING
         && (waitingForAccountCall = callList.getWaitingForAccountCall()) != null) {
       waitingForAccountCall.disconnect();
-      mInCallActivity.dismissPendingDialogs();
+      // The InCallActivity might be destroyed or not started yet at this point.
+      if (isActivityStarted()) {
+        mInCallActivity.dismissPendingDialogs();
+      }
     }
 
     newState = startOrFinishUi(newState);
-    Log.d(this, "onCallListChange newState changed to " + newState);
+    LogUtil.d(
+        "InCallPresenter.onCallListChange", "onCallListChange newState changed to " + newState);
 
     // Set the new state before announcing it to the world
-    Log.i(this, "Phone switching state: " + oldState + " -> " + newState);
+    LogUtil.i(
+        "InCallPresenter.onCallListChange",
+        "Phone switching state: " + oldState + " -> " + newState);
     mInCallState = newState;
 
     // notify listeners of new state
     for (InCallStateListener listener : mListeners) {
-      Log.d(this, "Notify " + listener + " of state " + mInCallState.toString());
+      LogUtil.d(
+          "InCallPresenter.onCallListChange",
+          "Notify " + listener + " of state " + mInCallState.toString());
       listener.onStateChange(oldState, mInCallState, callList);
     }
 
@@ -724,7 +749,8 @@
     InCallState newState = startOrFinishUi(InCallState.INCOMING);
     InCallState oldState = mInCallState;
 
-    Log.i(this, "Phone switching state: " + oldState + " -> " + newState);
+    LogUtil.i(
+        "InCallPresenter.onIncomingCall", "Phone switching state: " + oldState + " -> " + newState);
     mInCallState = newState;
 
     for (IncomingCallListener listener : mIncomingCallListeners) {
@@ -838,7 +864,9 @@
   }
 
   public void setBoundAndWaitingForOutgoingCall(boolean isBound, PhoneAccountHandle handle) {
-    Log.i(this, "setBoundAndWaitingForOutgoingCall: " + isBound);
+    LogUtil.i(
+        "InCallPresenter.setBoundAndWaitingForOutgoingCall",
+        "setBoundAndWaitingForOutgoingCall: " + isBound);
     mBoundAndWaitingForOutgoingCall = isBound;
     mThemeColorManager.setPendingPhoneAccountHandle(handle);
     if (isBound && mInCallState == InCallState.NO_CALLS) {
@@ -967,7 +995,9 @@
     if (mInCallActivity != null) {
       mIsChangingConfigurations = mInCallActivity.isChangingConfigurations();
     }
-    Log.v(this, "updateIsChangingConfigurations = " + mIsChangingConfigurations);
+    LogUtil.v(
+        "InCallPresenter.updateIsChangingConfigurations",
+        "updateIsChangingConfigurations = " + mIsChangingConfigurations);
   }
 
   /** Called when the activity goes in/out of the foreground. */
@@ -987,10 +1017,10 @@
       broadcastIntent.putExtra(EXTRA_FIRST_TIME_SHOWN, !mIsActivityPreviouslyStarted);
 
       if (showing) {
-        Log.d(this, "Sending sticky broadcast: ", broadcastIntent);
+        LogUtil.d("InCallPresenter.onUiShowing", "Sending sticky broadcast: ", broadcastIntent);
         mContext.sendStickyBroadcast(broadcastIntent);
       } else {
-        Log.d(this, "Removing sticky broadcast: ", broadcastIntent);
+        LogUtil.d("InCallPresenter.onUiShowing", "Removing sticky broadcast: ", broadcastIntent);
         mContext.removeStickyBroadcast(broadcastIntent);
       }
     }
@@ -1011,6 +1041,13 @@
     }
   }
 
+  public void refreshUi() {
+    if (mInCallActivity != null) {
+      // Re-evaluate which fragment is being shown.
+      mInCallActivity.onPrimaryCallStateChanged();
+    }
+  }
+
   public void addInCallUiListener(InCallUiListener listener) {
     mInCallUiListeners.add(listener);
   }
@@ -1021,7 +1058,7 @@
 
   /*package*/
   void onActivityStarted() {
-    Log.d(this, "onActivityStarted");
+    LogUtil.d("InCallPresenter.onActivityStarted", "onActivityStarted");
     notifyVideoPauseController(true);
     if (mStatusBarNotifier != null) {
       // TODO - b/36649622: Investigate this redundant call
@@ -1031,13 +1068,14 @@
 
   /*package*/
   void onActivityStopped() {
-    Log.d(this, "onActivityStopped");
+    LogUtil.d("InCallPresenter.onActivityStopped", "onActivityStopped");
     notifyVideoPauseController(false);
   }
 
   private void notifyVideoPauseController(boolean showing) {
-    Log.d(
-        this, "notifyVideoPauseController: mIsChangingConfigurations=" + mIsChangingConfigurations);
+    LogUtil.d(
+        "InCallPresenter.notifyVideoPauseController",
+        "mIsChangingConfigurations=" + mIsChangingConfigurations);
     if (!mIsChangingConfigurations) {
       VideoPauseController.getInstance().onUiShowing(showing);
     }
@@ -1096,8 +1134,9 @@
       final boolean canSwap =
           activeCall.can(android.telecom.Call.Details.CAPABILITY_SWAP_CONFERENCE);
 
-      Log.v(
-          this, "activeCall: " + activeCall + ", canMerge: " + canMerge + ", canSwap: " + canSwap);
+      LogUtil.v(
+          "InCallPresenter.handleCallKey",
+          "activeCall: " + activeCall + ", canMerge: " + canMerge + ", canSwap: " + canSwap);
 
       // (2) Attempt actions on conference calls
       if (canMerge) {
@@ -1116,7 +1155,7 @@
       // there is no harm in double checking.
       final boolean canHold = heldCall.can(android.telecom.Call.Details.CAPABILITY_HOLD);
 
-      Log.v(this, "heldCall: " + heldCall + ", canHold: " + canHold);
+      LogUtil.v("InCallPresenter.handleCallKey", "heldCall: " + heldCall + ", canHold: " + canHold);
 
       // (4) unhold call
       if (heldCall.getState() == DialerCall.State.ONHOLD && canHold) {
@@ -1134,7 +1173,7 @@
    * checks to see if there should be any UI left and if not attempts to tear down the UI.
    */
   public void onDismissDialog() {
-    Log.i(this, "Dialog dismissed");
+    LogUtil.i("InCallPresenter.onDismissDialog", "Dialog dismissed");
     if (mInCallState == InCallState.NO_CALLS) {
       attemptFinishActivity();
       attemptCleanup();
@@ -1164,16 +1203,18 @@
    * @param force {@code true} if fullscreen mode should be set regardless of its current state.
    */
   public void setFullScreen(boolean isFullScreen, boolean force) {
-    Log.i(this, "setFullScreen = " + isFullScreen);
+    LogUtil.i("InCallPresenter.setFullScreen", "setFullScreen = " + isFullScreen);
 
     // As a safeguard, ensure we cannot enter fullscreen if the dialpad is shown.
     if (isDialpadVisible()) {
       isFullScreen = false;
-      Log.v(this, "setFullScreen overridden as dialpad is shown = " + isFullScreen);
+      LogUtil.v(
+          "InCallPresenter.setFullScreen",
+          "setFullScreen overridden as dialpad is shown = " + isFullScreen);
     }
 
     if (mIsFullScreen == isFullScreen && !force) {
-      Log.v(this, "setFullScreen ignored as already in that state.");
+      LogUtil.v("InCallPresenter.setFullScreen", "setFullScreen ignored as already in that state.");
       return;
     }
     mIsFullScreen = isFullScreen;
@@ -1209,7 +1250,8 @@
       if (call.getAccountHandle() == null && !call.isConferenceCall()) {
         setDisconnectCauseForMissingAccounts(call);
       }
-      mInCallActivity.maybeShowErrorDialogOnDisconnect(call.getDisconnectCause());
+      mInCallActivity.maybeShowErrorDialogOnDisconnect(
+          new DisconnectMessage(mInCallActivity, call));
     }
   }
 
@@ -1218,7 +1260,8 @@
    * UI needs to be started or finished depending on the new state and does it.
    */
   private InCallState startOrFinishUi(InCallState newState) {
-    Log.d(this, "startOrFinishUi: " + mInCallState + " -> " + newState);
+    LogUtil.d(
+        "InCallPresenter.startOrFinishUi", "startOrFinishUi: " + mInCallState + " -> " + newState);
 
     // TODO: Consider a proper state machine implementation
 
@@ -1300,7 +1343,9 @@
     // up so we aren't going to lose anything by avoiding a second startup here.
     boolean activityIsFinishing = mInCallActivity != null && !isActivityStarted();
     if (activityIsFinishing) {
-      Log.i(this, "Undo the state change: " + newState + " -> " + mInCallState);
+      LogUtil.i(
+          "InCallPresenter.startOrFinishUi",
+          "Undo the state change: " + newState + " -> " + mInCallState);
       return mInCallState;
     }
 
@@ -1315,10 +1360,10 @@
     }
 
     if (showCallUi || showAccountPicker) {
-      Log.i(this, "Start in call UI");
+      LogUtil.i("InCallPresenter.startOrFinishUi", "Start in call UI");
       showInCall(false /* showDialpad */, !showAccountPicker /* newOutgoingCall */);
     } else if (startIncomingCallSequence) {
-      Log.i(this, "Start Full Screen in call UI");
+      LogUtil.i("InCallPresenter.startOrFinishUi", "Start Full Screen in call UI");
 
       mStatusBarNotifier.updateNotification(mCallList);
     } else if (newState == InCallState.NO_CALLS) {
@@ -1371,7 +1416,7 @@
    */
   private void attemptCleanup() {
     if (isReadyForTearDown()) {
-      Log.i(this, "Cleaning up");
+      LogUtil.i("InCallPresenter.attemptCleanup", "Cleaning up");
 
       cleanupSurfaces();
 
@@ -1421,12 +1466,12 @@
       mInCallEventListeners.clear();
       mInCallUiListeners.clear();
 
-      Log.d(this, "Finished InCallPresenter.CleanUp");
+      LogUtil.d("InCallPresenter.attemptCleanup", "finished");
     }
   }
 
   public void showInCall(boolean showDialpad, boolean newOutgoingCall) {
-    Log.i(this, "Showing InCallActivity");
+    LogUtil.i("InCallPresenter.showInCall", "Showing InCallActivity");
     mContext.startActivity(
         InCallActivity.getIntent(
             mContext, showDialpad, newOutgoingCall, false /* forFullScreen */));
@@ -1497,12 +1542,14 @@
    *     InCallOrientationEventListener#SCREEN_ORIENTATION_270}).
    */
   public void onDeviceOrientationChange(@ScreenOrientation int orientation) {
-    Log.d(this, "onDeviceOrientationChange: orientation= " + orientation);
+    LogUtil.d(
+        "InCallPresenter.onDeviceOrientationChange",
+        "onDeviceOrientationChange: orientation= " + orientation);
 
     if (mCallList != null) {
       mCallList.notifyCallsOfDeviceRotation(orientation);
     } else {
-      Log.w(this, "onDeviceOrientationChange: CallList is null.");
+      LogUtil.w("InCallPresenter.onDeviceOrientationChange", "CallList is null.");
     }
 
     // Notify listeners of device orientation changed.
@@ -1520,16 +1567,18 @@
    */
   public void setInCallAllowsOrientationChange(boolean allowOrientationChange) {
     if (mInCallActivity == null) {
-      Log.e(this, "InCallActivity is null. Can't set requested orientation.");
+      LogUtil.e(
+          "InCallPresenter.setInCallAllowsOrientationChange",
+          "InCallActivity is null. Can't set requested orientation.");
       return;
     }
     mInCallActivity.setAllowOrientationChange(allowOrientationChange);
   }
 
   public void enableScreenTimeout(boolean enable) {
-    Log.v(this, "enableScreenTimeout: value=" + enable);
+    LogUtil.v("InCallPresenter.enableScreenTimeout", "enableScreenTimeout: value=" + enable);
     if (mInCallActivity == null) {
-      Log.e(this, "enableScreenTimeout: InCallActivity is null.");
+      LogUtil.e("InCallPresenter.enableScreenTimeout", "InCallActivity is null.");
       return;
     }
 
@@ -1590,7 +1639,8 @@
       throw new IllegalArgumentException("registerActivity cannot be called with null");
     }
     if (mInCallActivity != null && mInCallActivity != inCallActivity) {
-      Log.w(this, "Setting a second activity before destroying the first.");
+      LogUtil.w(
+          "InCallPresenter.setActivity", "Setting a second activity before destroying the first.");
     }
     updateActivity(inCallActivity);
   }
diff --git a/java/com/android/incallui/InCallServiceImpl.java b/java/com/android/incallui/InCallServiceImpl.java
index 4ab92a7..d2b0297 100644
--- a/java/com/android/incallui/InCallServiceImpl.java
+++ b/java/com/android/incallui/InCallServiceImpl.java
@@ -36,6 +36,8 @@
  */
 public class InCallServiceImpl extends InCallService {
 
+  private ReturnToCallController returnToCallController;
+
   @Override
   public void onCallAudioStateChanged(CallAudioState audioState) {
     AudioModeProvider.getInstance().onAudioStateChanged(audioState);
@@ -79,6 +81,9 @@
     InCallPresenter.getInstance().onServiceBind();
     InCallPresenter.getInstance().maybeStartRevealAnimation(intent);
     TelecomAdapter.getInstance().setInCallService(this);
+    if (ReturnToCallController.isEnabled(this)) {
+      returnToCallController = new ReturnToCallController(this);
+    }
 
     return super.onBind(intent);
   }
@@ -98,5 +103,9 @@
     // Tear down the InCall system
     TelecomAdapter.getInstance().clearInCallService();
     InCallPresenter.getInstance().tearDown();
+    if (returnToCallController != null) {
+      returnToCallController.tearDown();
+      returnToCallController = null;
+    }
   }
 }
diff --git a/java/com/android/incallui/ReturnToCallActionReceiver.java b/java/com/android/incallui/ReturnToCallActionReceiver.java
new file mode 100644
index 0000000..b645c15
--- /dev/null
+++ b/java/com/android/incallui/ReturnToCallActionReceiver.java
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2017 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.incallui;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.telecom.CallAudioState;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.incallui.audiomode.AudioModeProvider;
+import com.android.incallui.call.CallList;
+import com.android.incallui.call.DialerCall;
+import com.android.incallui.call.TelecomAdapter;
+
+/** Handles clicks on the return-to-call bubble */
+public class ReturnToCallActionReceiver extends BroadcastReceiver {
+
+  public static final String ACTION_TOGGLE_SPEAKER = "toggleSpeaker";
+  public static final String ACTION_SHOW_AUDIO_ROUTE_SELECTOR = "showAudioRouteSelector";
+  public static final String ACTION_TOGGLE_MUTE = "toggleMute";
+  public static final String ACTION_END_CALL = "endCall";
+
+  @Override
+  public void onReceive(Context context, Intent intent) {
+    switch (intent.getAction()) {
+      case ACTION_TOGGLE_SPEAKER:
+        toggleSpeaker(context);
+        break;
+      case ACTION_SHOW_AUDIO_ROUTE_SELECTOR:
+        showAudioRouteSelector(context);
+        break;
+      case ACTION_TOGGLE_MUTE:
+        toggleMute(context);
+        break;
+      case ACTION_END_CALL:
+        endCall(context);
+        break;
+    }
+  }
+
+  private void toggleSpeaker(Context context) {
+    CallAudioState audioState = AudioModeProvider.getInstance().getAudioState();
+
+    if ((audioState.getSupportedRouteMask() & CallAudioState.ROUTE_BLUETOOTH)
+        == CallAudioState.ROUTE_BLUETOOTH) {
+      LogUtil.w(
+          "ReturnToCallActionReceiver.toggleSpeaker",
+          "toggleSpeaker() called when bluetooth available."
+              + " Probably should have shown audio route selector");
+    }
+
+    DialerCall call = getCall();
+
+    int newRoute;
+    if (audioState.getRoute() == CallAudioState.ROUTE_SPEAKER) {
+      newRoute = CallAudioState.ROUTE_WIRED_OR_EARPIECE;
+      Logger.get(context)
+          .logCallImpression(
+              DialerImpression.Type.BUBBLE_TURN_ON_WIRED_OR_EARPIECE,
+              call != null ? call.getUniqueCallId() : "",
+              call != null ? call.getTimeAddedMs() : 0);
+    } else {
+      newRoute = CallAudioState.ROUTE_SPEAKER;
+      Logger.get(context)
+          .logCallImpression(
+              DialerImpression.Type.BUBBLE_TURN_ON_SPEAKERPHONE,
+              call != null ? call.getUniqueCallId() : "",
+              call != null ? call.getTimeAddedMs() : 0);
+    }
+    TelecomAdapter.getInstance().setAudioRoute(newRoute);
+  }
+
+  public void showAudioRouteSelector(Context context) {
+    context.startActivity(new Intent(context, AudioRouteSelectorActivity.class));
+  }
+
+  private void toggleMute(Context context) {
+    DialerCall call = getCall();
+    boolean shouldMute = !AudioModeProvider.getInstance().getAudioState().isMuted();
+    Logger.get(context)
+        .logCallImpression(
+            shouldMute
+                ? DialerImpression.Type.BUBBLE_MUTE_CALL
+                : DialerImpression.Type.BUBBLE_UNMUTE_CALL,
+            call != null ? call.getUniqueCallId() : "",
+            call != null ? call.getTimeAddedMs() : 0);
+    TelecomAdapter.getInstance().mute(shouldMute);
+  }
+
+  private void endCall(Context context) {
+    DialerCall call = getCall();
+
+    Logger.get(context)
+        .logCallImpression(
+            DialerImpression.Type.BUBBLE_END_CALL,
+            call != null ? call.getUniqueCallId() : "",
+            call != null ? call.getTimeAddedMs() : 0);
+    if (call != null) {
+      call.disconnect();
+    }
+  }
+
+  private DialerCall getCall() {
+    CallList callList = InCallPresenter.getInstance().getCallList();
+    if (callList != null) {
+      DialerCall call = callList.getOutgoingCall();
+      if (call == null) {
+        call = callList.getActiveOrBackgroundCall();
+      }
+      if (call != null) {
+        return call;
+      }
+    }
+    return null;
+  }
+}
diff --git a/java/com/android/incallui/ReturnToCallController.java b/java/com/android/incallui/ReturnToCallController.java
new file mode 100644
index 0000000..33154c5
--- /dev/null
+++ b/java/com/android/incallui/ReturnToCallController.java
@@ -0,0 +1,211 @@
+/*
+ * Copyright (C) 2017 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.incallui;
+
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.drawable.Icon;
+import android.support.annotation.NonNull;
+import android.support.annotation.VisibleForTesting;
+import android.telecom.CallAudioState;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+import com.android.dialer.telecom.TelecomUtil;
+import com.android.dialershared.bubble.Bubble;
+import com.android.dialershared.bubble.BubbleInfo;
+import com.android.dialershared.bubble.BubbleInfo.Action;
+import com.android.incallui.InCallPresenter.InCallUiListener;
+import com.android.incallui.audiomode.AudioModeProvider;
+import com.android.incallui.audiomode.AudioModeProvider.AudioModeListener;
+import com.android.incallui.call.CallList;
+import com.android.incallui.call.CallList.Listener;
+import com.android.incallui.call.DialerCall;
+import com.android.incallui.speakerbuttonlogic.SpeakerButtonInfo;
+import com.android.incallui.speakerbuttonlogic.SpeakerButtonInfo.IconSize;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Listens for events relevant to the return-to-call bubble and updates the bubble's state as
+ * necessary
+ */
+public class ReturnToCallController implements InCallUiListener, Listener, AudioModeListener {
+
+  private final Context context;
+
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  Bubble bubble;
+
+  private CallAudioState audioState;
+
+  private final PendingIntent toggleSpeaker;
+  private final PendingIntent showSpeakerSelect;
+  private final PendingIntent toggleMute;
+  private final PendingIntent endCall;
+
+  public static boolean isEnabled(Context context) {
+    return ConfigProviderBindings.get(context).getBoolean("enable_return_to_call_bubble", false);
+  }
+
+  public ReturnToCallController(Context context) {
+    this.context = context;
+
+    toggleSpeaker = createActionIntent(ReturnToCallActionReceiver.ACTION_TOGGLE_SPEAKER);
+    showSpeakerSelect =
+        createActionIntent(ReturnToCallActionReceiver.ACTION_SHOW_AUDIO_ROUTE_SELECTOR);
+    toggleMute = createActionIntent(ReturnToCallActionReceiver.ACTION_TOGGLE_MUTE);
+    endCall = createActionIntent(ReturnToCallActionReceiver.ACTION_END_CALL);
+
+    InCallPresenter.getInstance().addInCallUiListener(this);
+    CallList.getInstance().addListener(this);
+    AudioModeProvider.getInstance().addListener(this);
+    audioState = AudioModeProvider.getInstance().getAudioState();
+  }
+
+  public void tearDown() {
+    InCallPresenter.getInstance().removeInCallUiListener(this);
+    CallList.getInstance().removeListener(this);
+    AudioModeProvider.getInstance().removeListener(this);
+  }
+
+  @Override
+  public void onUiShowing(boolean showing) {
+    if (showing) {
+      hide();
+    } else {
+      if (TelecomUtil.isInCall(context)) {
+        show();
+      }
+    }
+  }
+
+  private void hide() {
+    if (bubble != null) {
+      bubble.hide();
+    } else {
+      LogUtil.i("ReturnToCallController.hide", "hide() called without calling show()");
+    }
+  }
+
+  private void show() {
+    if (bubble == null) {
+      bubble = startNewBubble();
+    } else {
+      bubble.show();
+    }
+  }
+
+  private Bubble startNewBubble() {
+    if (!Bubble.canShowBubbles(context)) {
+      LogUtil.i("ReturnToCallController.startNewBubble", "can't show bubble, no permission");
+      return null;
+    }
+    Bubble returnToCallBubble = Bubble.createBubble(context, generateBubbleInfo());
+    returnToCallBubble.show();
+    return returnToCallBubble;
+  }
+
+  @Override
+  public void onIncomingCall(DialerCall call) {}
+
+  @Override
+  public void onUpgradeToVideo(DialerCall call) {}
+
+  @Override
+  public void onSessionModificationStateChange(DialerCall call) {}
+
+  @Override
+  public void onCallListChange(CallList callList) {}
+
+  @Override
+  public void onDisconnect(DialerCall call) {
+    if (bubble != null && bubble.isVisible()) {
+      bubble.showText(context.getText(R.string.incall_call_ended));
+    }
+
+    if (!TelecomUtil.isInCall(context)) {
+      hide();
+    }
+  }
+
+  @Override
+  public void onWiFiToLteHandover(DialerCall call) {}
+
+  @Override
+  public void onHandoverToWifiFailed(DialerCall call) {}
+
+  @Override
+  public void onInternationalCallOnWifi(@NonNull DialerCall call) {}
+
+  @Override
+  public void onAudioStateChanged(CallAudioState audioState) {
+    this.audioState = audioState;
+    if (bubble != null) {
+      bubble.updateActions(generateActions());
+    }
+  }
+
+  private BubbleInfo generateBubbleInfo() {
+    Intent activityIntent = InCallActivity.getIntent(context, false, false, false);
+    activityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+    return BubbleInfo.builder()
+        .setPrimaryColor(context.getResources().getColor(R.color.dialer_theme_color, null))
+        .setPrimaryIcon(Icon.createWithResource(context, R.drawable.on_going_call))
+        .setStartingYPosition(
+            context.getResources().getDimensionPixelOffset(R.dimen.return_to_call_initial_offset_y))
+        .setPrimaryIntent(PendingIntent.getActivity(context, 0, activityIntent, 0))
+        .setActions(generateActions())
+        .build();
+  }
+
+  @NonNull
+  private List<Action> generateActions() {
+    List<Action> actions = new ArrayList<>();
+    SpeakerButtonInfo speakerButtonInfo = new SpeakerButtonInfo(audioState, IconSize.SIZE_24_DP);
+
+    actions.add(
+        Action.builder()
+            .setIcon(Icon.createWithResource(context, speakerButtonInfo.icon))
+            .setName(context.getText(speakerButtonInfo.label))
+            .setChecked(speakerButtonInfo.isChecked)
+            .setIntent(speakerButtonInfo.checkable ? toggleSpeaker : showSpeakerSelect)
+            .build());
+
+    actions.add(
+        Action.builder()
+            .setIcon(Icon.createWithResource(context, R.drawable.quantum_ic_mic_off_white_24))
+            .setName(context.getText(R.string.incall_label_mute))
+            .setChecked(audioState.isMuted())
+            .setIntent(toggleMute)
+            .build());
+    actions.add(
+        Action.builder()
+            .setIcon(Icon.createWithResource(context, R.drawable.quantum_ic_call_end_white_24))
+            .setName(context.getText(R.string.incall_label_end_call))
+            .setIntent(endCall)
+            .build());
+    return actions;
+  }
+
+  @NonNull
+  private PendingIntent createActionIntent(String action) {
+    Intent toggleSpeaker = new Intent(context, ReturnToCallActionReceiver.class);
+    toggleSpeaker.setAction(action);
+    return PendingIntent.getBroadcast(context, 0, toggleSpeaker, 0);
+  }
+}
diff --git a/java/com/android/incallui/StatusBarNotifier.java b/java/com/android/incallui/StatusBarNotifier.java
index 165b30b..458df51 100644
--- a/java/com/android/incallui/StatusBarNotifier.java
+++ b/java/com/android/incallui/StatusBarNotifier.java
@@ -28,7 +28,6 @@
 import android.Manifest;
 import android.app.ActivityManager;
 import android.app.Notification;
-import android.app.Notification.Builder;
 import android.app.NotificationManager;
 import android.app.PendingIntent;
 import android.content.Context;
@@ -62,16 +61,15 @@
 import com.android.contacts.common.ContactsUtils;
 import com.android.contacts.common.ContactsUtils.UserType;
 import com.android.contacts.common.lettertiles.LetterTileDrawable;
+import com.android.contacts.common.lettertiles.LetterTileDrawable.ContactType;
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.BitmapUtil;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
 import com.android.dialer.enrichedcall.Session;
 import com.android.dialer.multimedia.MultimediaData;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
+import com.android.dialer.notification.NotificationChannelId;
 import com.android.dialer.oem.MotorolaUtils;
 import com.android.dialer.util.DrawableConverter;
 import com.android.incallui.ContactInfoCache.ContactCacheEntry;
@@ -93,6 +91,9 @@
 public class StatusBarNotifier
     implements InCallPresenter.InCallStateListener, EnrichedCallManager.StateChangedListener {
 
+  private static final String NOTIFICATION_TAG = "STATUS_BAR_NOTIFIER";
+  private static final int NOTIFICATION_ID = 1;
+
   // Notification types
   // Indicates that no notification is currently showing.
   private static final int NOTIFICATION_NONE = 0;
@@ -147,7 +148,7 @@
 
     NotificationManager notificationManager =
         backupContext.getSystemService(NotificationManager.class);
-    notificationManager.cancel(R.id.notification_ongoing_call);
+    notificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_ID);
   }
 
   private static int getWorkStringFromPersonalString(int resId) {
@@ -173,12 +174,6 @@
     return PendingIntent.getBroadcast(context, 0, intent, 0);
   }
 
-  private static void setColorized(@NonNull Builder builder) {
-    if (BuildCompat.isAtLeastO()) {
-      builder.setColorized(true);
-    }
-  }
-
   /** Creates notifications according to the state we receive from {@link InCallPresenter}. */
   @Override
   @RequiresPermission(Manifest.permission.READ_PHONE_STATE)
@@ -226,7 +221,7 @@
     }
     if (mCurrentNotification != NOTIFICATION_NONE) {
       LogUtil.i("StatusBarNotifier.cancelNotification", "cancel");
-      mNotificationManager.cancel(R.id.notification_ongoing_call);
+      mNotificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_ID);
     }
     mCurrentNotification = NOTIFICATION_NONE;
   }
@@ -365,13 +360,13 @@
     LogUtil.i("StatusBarNotifier.buildAndSendNotification", "notificationType=" + notificationType);
     switch (notificationType) {
       case NOTIFICATION_INCOMING_CALL:
-        NotificationChannelManager.applyChannel(
-            builder, mContext, Channel.INCOMING_CALL, accountHandle);
+        if (BuildCompat.isAtLeastO()) {
+          builder.setChannelId(NotificationChannelId.INCOMING_CALL);
+        }
         configureFullScreenIntent(builder, createLaunchPendingIntent(true /* isFullScreen */));
         // Set the notification category and bump the priority for incoming calls
         builder.setCategory(Notification.CATEGORY_CALL);
         // This will be ignored on O+ and handled by the channel
-        //noinspection deprecation
         builder.setPriority(Notification.PRIORITY_MAX);
         if (mCurrentNotification != NOTIFICATION_INCOMING_CALL) {
           LogUtil.i(
@@ -379,18 +374,20 @@
               "Canceling old notification so this one can be noisy");
           // Moving from a non-interuptive notification (or none) to a noisy one. Cancel the old
           // notification (if there is one) so the fullScreenIntent or HUN will show
-          mNotificationManager.cancel(R.id.notification_ongoing_call);
+          mNotificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_ID);
         }
         break;
       case NOTIFICATION_INCOMING_CALL_QUIET:
-        NotificationChannelManager.applyChannel(
-            builder, mContext, Channel.ONGOING_CALL, accountHandle);
+        if (BuildCompat.isAtLeastO()) {
+          builder.setChannelId(NotificationChannelId.ONGOING_CALL);
+        }
         break;
       case NOTIFICATION_IN_CALL:
-        setColorized(publicBuilder);
-        setColorized(builder);
-        NotificationChannelManager.applyChannel(
-            builder, mContext, Channel.ONGOING_CALL, accountHandle);
+        if (BuildCompat.isAtLeastO()) {
+          publicBuilder.setColorized(true);
+          builder.setColorized(true);
+          builder.setChannelId(NotificationChannelId.ONGOING_CALL);
+        }
         break;
     }
 
@@ -436,7 +433,7 @@
         "displaying notification for " + notificationType);
 
     try {
-      mNotificationManager.notify(R.id.notification_ongoing_call, notification);
+      mNotificationManager.notify(NOTIFICATION_TAG, NOTIFICATION_ID, notification);
     } catch (RuntimeException e) {
       // TODO(b/34744003): Move the memory stats into silent feedback PSD.
       ActivityManager activityManager = mContext.getSystemService(ActivityManager.class);
@@ -565,8 +562,9 @@
   @VisibleForTesting
   @Nullable
   String getContentTitle(ContactCacheEntry contactInfo, DialerCall call) {
-    if (call.isConferenceCall() && !call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE)) {
-      return mContext.getResources().getString(R.string.conference_call_name);
+    if (call.isConferenceCall()) {
+      return CallerInfoUtils.getConferenceString(
+          mContext, call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE));
     }
 
     String preferredName =
@@ -604,20 +602,16 @@
     if (contactInfo.photo == null) {
       int width = (int) resources.getDimension(android.R.dimen.notification_large_icon_width);
       int height = (int) resources.getDimension(android.R.dimen.notification_large_icon_height);
-      int contactType = LetterTileDrawable.TYPE_DEFAULT;
+      @ContactType
+      int contactType =
+          LetterTileDrawable.getContactTypeFromPrimitives(
+              CallerInfoUtils.isVoiceMailNumber(context, call),
+              call.isSpam(),
+              contactInfo.isBusiness,
+              call.getNumberPresentation(),
+              call.isConferenceCall() && !call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE));
       LetterTileDrawable lettertile = new LetterTileDrawable(resources);
 
-      // TODO: Deduplicate across Dialer. b/36195917
-      if (CallerInfoUtils.isVoiceMailNumber(context, call)) {
-        contactType = LetterTileDrawable.TYPE_VOICEMAIL;
-      } else if (contactInfo.isBusiness) {
-        contactType = LetterTileDrawable.TYPE_BUSINESS;
-      } else if (call.getNumberPresentation() == TelecomManager.PRESENTATION_RESTRICTED) {
-        contactType = LetterTileDrawable.TYPE_GENERIC_AVATAR;
-      } else if (call.isConferenceCall()
-          && !call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE)) {
-        contactType = LetterTileDrawable.TYPE_CONFERENCE;
-      }
       lettertile.setCanonicalDialerLetterTileDetails(
           contactInfo.namePrimary == null ? contactInfo.number : contactInfo.namePrimary,
           contactInfo.lookupKey,
@@ -663,13 +657,17 @@
       return R.drawable.quantum_ic_videocam_white_24;
     } else if (call.hasProperty(PROPERTY_HIGH_DEF_AUDIO)
         && MotorolaUtils.shouldShowHdIconInNotification(mContext)) {
-      // Normally when a call is ongoing the status bar displays an icon of a phone with animated
-      // lines. This is a helpful hint for users so they know how to get back to the call.
-      // For Sprint HD calls, we replace this icon with an icon of a phone with a HD badge.
-      // This is a carrier requirement.
+      // Normally when a call is ongoing the status bar displays an icon of a phone. This is a
+      // helpful hint for users so they know how to get back to the call. For Sprint HD calls, we
+      // replace this icon with an icon of a phone with a HD badge. This is a carrier requirement.
       return R.drawable.ic_hd_call;
     }
-    return R.anim.on_going_call;
+    // If ReturnToCall is enabled, use the static icon. The animated one will show in the bubble.
+    if (ReturnToCallController.isEnabled(mContext)) {
+      return R.drawable.quantum_ic_call_white_24;
+    } else {
+      return R.drawable.on_going_call;
+    }
   }
 
   /** Returns the message to use with the notification. */
@@ -694,20 +692,10 @@
     }
 
     if (isIncomingOrWaiting) {
-      EnrichedCallManager manager = EnrichedCallComponent.get(mContext).getEnrichedCallManager();
-      Session session = null;
-      if (call.getNumber() != null) {
-        session =
-            manager.getSession(
-                call.getUniqueCallId(),
-                call.getNumber(),
-                manager.createIncomingCallComposerFilter());
-      }
-
       if (call.isSpam()) {
         resId = R.string.notification_incoming_spam_call;
-      } else if (session != null) {
-        resId = getECIncomingCallText(session);
+      } else if (shouldShowEnrichedCallNotification(call.getEnrichedCallSession())) {
+        resId = getECIncomingCallText(call.getEnrichedCallSession());
       } else if (call.hasProperty(Details.PROPERTY_WIFI)) {
         resId = R.string.notification_incoming_call_wifi;
       } else {
@@ -731,6 +719,13 @@
     return mContext.getString(resId);
   }
 
+  private boolean shouldShowEnrichedCallNotification(Session session) {
+    if (session == null) {
+      return false;
+    }
+    return session.getMultimediaData().hasData() || session.getMultimediaData().isImportant();
+  }
+
   private int getECIncomingCallText(Session session) {
     int resId;
     MultimediaData data = session.getMultimediaData();
@@ -756,8 +751,10 @@
         } else {
           resId = R.string.important_notification_incoming_call_with_photo;
         }
-      } else {
+      } else if (hasSubject) {
         resId = R.string.important_notification_incoming_call_with_message;
+      } else {
+        resId = R.string.important_notification_incoming_call;
       }
       if (mContext.getString(resId).length() > 50) {
         resId = R.string.important_notification_incoming_call_attachments;
@@ -827,13 +824,9 @@
         "will show \"answer\" action in the incoming call Notification");
     PendingIntent answerVoicePendingIntent =
         createNotificationPendingIntent(mContext, ACTION_ANSWER_VOICE_INCOMING_CALL);
-    // We put animation resources in "anim" folder instead of "drawable", which causes Android
-    // Studio to complain.
-    // TODO: Move "anim" resources to "drawable" as recommended in AnimationDrawable doc?
-    //noinspection ResourceType
     builder.addAction(
         new Notification.Action.Builder(
-                Icon.createWithResource(mContext, R.anim.on_going_call),
+                Icon.createWithResource(mContext, R.drawable.quantum_ic_call_white_24),
                 getActionText(
                     R.string.notification_action_answer, R.color.notification_action_accept),
                 answerVoicePendingIntent)
@@ -931,7 +924,7 @@
     builder.setOngoing(true);
     builder.setOnlyAlertOnce(true);
     // This will be ignored on O+ and handled by the channel
-    //noinspection deprecation
+    // noinspection deprecation
     builder.setPriority(Notification.PRIORITY_HIGH);
 
     return builder;
@@ -1005,6 +998,9 @@
     @Override
     public void onInternationalCallOnWifi() {}
 
+    @Override
+    public void onEnrichedCallSessionUpdate() {}
+
     /**
      * Responds to changes in the session modification state for the call by dismissing the status
      * bar notification as required.
diff --git a/java/com/android/incallui/VideoCallPresenter.java b/java/com/android/incallui/VideoCallPresenter.java
index 31999ef..bd98370 100644
--- a/java/com/android/incallui/VideoCallPresenter.java
+++ b/java/com/android/incallui/VideoCallPresenter.java
@@ -27,9 +27,9 @@
 import android.view.Surface;
 import android.view.SurfaceView;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.incallui.InCallPresenter.InCallDetailsListener;
 import com.android.incallui.InCallPresenter.InCallOrientationListener;
 import com.android.incallui.InCallPresenter.InCallStateListener;
diff --git a/java/com/android/incallui/VideoPauseController.java b/java/com/android/incallui/VideoPauseController.java
index 2595e2f..36c9ef3 100644
--- a/java/com/android/incallui/VideoPauseController.java
+++ b/java/com/android/incallui/VideoPauseController.java
@@ -66,11 +66,6 @@
     return sVideoPauseController;
   }
 
-  private boolean wasIncomingCall() {
-    return (mPrevCallState == DialerCall.State.CALL_WAITING
-        || mPrevCallState == DialerCall.State.INCOMING);
-  }
-
   /**
    * Determines if a call is in incoming/waiting state.
    *
@@ -198,7 +193,7 @@
     }
     final boolean canVideoPause = videoCanPause(call);
 
-    if ((wasIncomingCall() || wasDialing()) && canVideoPause && !mIsInBackground) {
+    if (canVideoPause && !mIsInBackground) {
       // Send resume request for the active call, if user rejects incoming call, ends dialing
       // call, or the call was previously in a paused state and UI is in the foreground.
       sendRequest(call, true);
diff --git a/java/com/android/incallui/answer/impl/AnswerFragment.java b/java/com/android/incallui/answer/impl/AnswerFragment.java
index 1f0541c4..4431053 100644
--- a/java/com/android/incallui/answer/impl/AnswerFragment.java
+++ b/java/com/android/incallui/answer/impl/AnswerFragment.java
@@ -216,6 +216,7 @@
   private void performAnswerAndRelease() {
     restoreAnswerAndReleaseButtonAnimation();
     answerScreenDelegate.onAnswerAndReleaseCall();
+    buttonAcceptClicked = true;
   }
 
   private void restoreAnswerAndReleaseButtonAnimation() {
@@ -359,6 +360,11 @@
   }
 
   @Override
+  public boolean isActionTimeout() {
+    return (buttonAcceptClicked || buttonRejectClicked) && answerScreenDelegate.isActionTimeout();
+  }
+
+  @Override
   @NonNull
   public String getCallId() {
     return Assert.isNotNull(getArguments().getString(ARG_CALL_ID));
@@ -427,8 +433,10 @@
 
     if (allowAnswerAndRelease()) {
       answerAndReleaseButton.setVisibility(View.VISIBLE);
+      answerScreenDelegate.onAnswerAndReleaseButtonEnabled();
     } else {
       answerAndReleaseButton.setVisibility(View.INVISIBLE);
+      answerScreenDelegate.onAnswerAndReleaseButtonDisabled();
     }
   }
 
@@ -524,6 +532,7 @@
     if (!isAdded()) {
       return;
     }
+    LogUtil.enterBlock("AnswerFragment.updateDataFragment");
     Fragment current = getChildFragmentManager().findFragmentById(R.id.incall_data_container);
     Fragment newFragment = null;
 
@@ -540,6 +549,7 @@
           || !Objects.equals(((MultimediaFragment) current).getSubject(), subject)
           || !Objects.equals(((MultimediaFragment) current).getImageUri(), imageUri)
           || !Objects.equals(((MultimediaFragment) current).getLocation(), location)) {
+        LogUtil.i("AnswerFragment.updateDataFragment", "Replacing multimedia fragment");
         // Needs replacement
         newFragment =
             MultimediaFragment.newInstance(
@@ -551,12 +561,14 @@
     } else if (shouldShowAvatar()) {
       // Needs Avatar
       if (!(current instanceof AvatarFragment)) {
+        LogUtil.i("AnswerFragment.updateDataFragment", "Replacing avatar fragment");
         // Needs replacement
         newFragment = new AvatarFragment();
       }
     } else {
       // Needs empty
       if (current != null) {
+        LogUtil.i("AnswerFragment.updateDataFragment", "Removing current fragment");
         getChildFragmentManager().beginTransaction().remove(current).commitNow();
       }
       contactGridManager.setAvatarImageView(null, 0, false);
@@ -930,7 +942,7 @@
         if (hasCallOnHold()) {
           getAnswerMethod()
               .setHintText(getText(R.string.call_incoming_default_label_answer_and_release_third));
-        } else {
+        } else if (primaryCallState.supportsCallOnHold) {
           getAnswerMethod()
               .setHintText(getText(R.string.call_incoming_default_label_answer_and_release_second));
         }
@@ -1019,7 +1031,7 @@
   }
 
   private void updateImportanceBadgeVisibility() {
-    if (!isAdded()) {
+    if (!isAdded() || getView() == null) {
       return;
     }
 
diff --git a/java/com/android/incallui/answer/impl/PillDrawable.java b/java/com/android/incallui/answer/impl/PillDrawable.java
deleted file mode 100644
index 57d84c4..0000000
--- a/java/com/android/incallui/answer/impl/PillDrawable.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2016 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.incallui.answer.impl;
-
-import android.graphics.Rect;
-import android.graphics.drawable.GradientDrawable;
-
-/** Draws a pill-shaped background */
-public class PillDrawable extends GradientDrawable {
-
-  public PillDrawable() {
-    super();
-    setShape(RECTANGLE);
-  }
-
-  @Override
-  protected void onBoundsChange(Rect r) {
-    super.onBoundsChange(r);
-    setCornerRadius(r.height() / 2);
-  }
-
-  @Override
-  public void setShape(int shape) {
-    if (shape != GradientDrawable.RECTANGLE) {
-      throw new UnsupportedOperationException("PillDrawable must be a rectangle");
-    }
-    super.setShape(shape);
-  }
-}
diff --git a/java/com/android/incallui/answer/impl/answermethod/res/layout/swipe_up_down_method.xml b/java/com/android/incallui/answer/impl/answermethod/res/layout/swipe_up_down_method.xml
index 9a49075..600115e 100644
--- a/java/com/android/incallui/answer/impl/answermethod/res/layout/swipe_up_down_method.xml
+++ b/java/com/android/incallui/answer/impl/answermethod/res/layout/swipe_up_down_method.xml
@@ -41,6 +41,7 @@
         android:layout_marginBottom="116dp"
         android:layout_gravity="center_horizontal"
         android:alpha="0"
+        android:gravity="center_horizontal"
         android:text="@string/call_incoming_will_disconnect"
         android:textColor="@color/blue_grey_100"
         android:textSize="16sp"
@@ -59,6 +60,7 @@
         android:layout_marginBottom="18dp"
         android:layout_gravity="center_horizontal"
         android:focusable="false"
+        android:gravity="center_horizontal"
         android:text="@string/call_incoming_swipe_to_answer"
         android:textAlignment="center"
         android:textAppearance="@style/Dialer.Incall.TextAppearance.Hint"/>
@@ -110,6 +112,7 @@
         android:layout_gravity="center_horizontal"
         android:alpha="0"
         android:focusable="false"
+        android:gravity="center_horizontal"
         android:text="@string/call_incoming_swipe_to_reject"
         android:textAppearance="@style/Dialer.Incall.TextAppearance.Hint"
         tools:alpha="1"/>
diff --git a/java/com/android/incallui/answer/impl/classifier/HumanInteractionClassifier.java b/java/com/android/incallui/answer/impl/classifier/HumanInteractionClassifier.java
index 1d3d7ef..5e83dfc 100644
--- a/java/com/android/incallui/answer/impl/classifier/HumanInteractionClassifier.java
+++ b/java/com/android/incallui/answer/impl/classifier/HumanInteractionClassifier.java
@@ -20,7 +20,7 @@
 import android.hardware.SensorEvent;
 import android.util.DisplayMetrics;
 import android.view.MotionEvent;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 
 /** An classifier trying to determine whether it is a human interacting with the phone or not. */
 class HumanInteractionClassifier extends Classifier {
diff --git a/java/com/android/incallui/answer/impl/hint/AnswerHintFactory.java b/java/com/android/incallui/answer/impl/hint/AnswerHintFactory.java
index 77b45ec..94cf893 100644
--- a/java/com/android/incallui/answer/impl/hint/AnswerHintFactory.java
+++ b/java/com/android/incallui/answer/impl/hint/AnswerHintFactory.java
@@ -23,9 +23,8 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.VisibleForTesting;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProvider;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.util.DialerUtils;
 import com.android.incallui.util.AccessibilityUtil;
 
@@ -35,8 +34,9 @@
  */
 public class AnswerHintFactory {
 
-  private static final String CONFIG_ANSWER_HINT_ANSWERED_THRESHOLD_KEY =
-      "answer_hint_answered_threshold";
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  static final String CONFIG_ANSWER_HINT_ANSWERED_THRESHOLD_KEY = "answer_hint_answered_threshold";
+
   @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
   static final String CONFIG_ANSWER_HINT_WHITELISTED_DEVICES_KEY =
       "answer_hint_whitelisted_devices";
@@ -58,12 +58,7 @@
 
   @NonNull
   public AnswerHint create(Context context, long puckUpDuration, long puckUpDelay) {
-
-    if (shouldShowAnswerHint(
-        context,
-        ConfigProviderBindings.get(context),
-        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context),
-        Build.PRODUCT)) {
+    if (shouldShowAnswerHint(context, Build.PRODUCT)) {
       return new DotAnswerHint(context, puckUpDuration, puckUpDelay);
     }
 
@@ -84,24 +79,23 @@
   }
 
   @VisibleForTesting
-  static boolean shouldShowAnswerHint(
-      Context context,
-      ConfigProvider configProvider,
-      SharedPreferences sharedPreferences,
-      String device) {
+  static boolean shouldShowAnswerHint(Context context, String device) {
     if (AccessibilityUtil.isTouchExplorationEnabled(context)) {
       return false;
     }
     // Devices that has the legacy dialer installed are whitelisted as they are likely to go through
     // a UX change during updates.
-    if (!isDeviceWhitelisted(device, configProvider)) {
+    if (!isDeviceWhitelisted(context, device)) {
       return false;
     }
 
     // If the user has gone through the process a few times we can assume they have learnt the
     // method.
-    int answeredCount = sharedPreferences.getInt(ANSWERED_COUNT_PREFERENCE_KEY, 0);
-    long threshold = configProvider.getLong(CONFIG_ANSWER_HINT_ANSWERED_THRESHOLD_KEY, 3);
+    int answeredCount =
+        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context)
+            .getInt(ANSWERED_COUNT_PREFERENCE_KEY, 0);
+    long threshold =
+        ConfigProviderBindings.get(context).getLong(CONFIG_ANSWER_HINT_ANSWERED_THRESHOLD_KEY, 3);
     LogUtil.i(
         "AnswerHintFactory.shouldShowAnswerHint",
         "answerCount: %d, threshold: %d",
@@ -115,8 +109,8 @@
    * @param configProvider should provide a list of devices quoted with '/' concatenated to a
    *     string.
    */
-  private static boolean isDeviceWhitelisted(String device, ConfigProvider configProvider) {
-    return configProvider
+  private static boolean isDeviceWhitelisted(Context context, String device) {
+    return ConfigProviderBindings.get(context)
         .getString(CONFIG_ANSWER_HINT_WHITELISTED_DEVICES_KEY, DEFAULT_WHITELISTED_DEVICES_CSV)
         .contains("/" + device + "/");
   }
diff --git a/java/com/android/incallui/answer/impl/hint/PawImageLoaderImpl.java b/java/com/android/incallui/answer/impl/hint/PawImageLoaderImpl.java
index 21154ca..05358d8 100644
--- a/java/com/android/incallui/answer/impl/hint/PawImageLoaderImpl.java
+++ b/java/com/android/incallui/answer/impl/hint/PawImageLoaderImpl.java
@@ -24,7 +24,9 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.util.DialerUtils;
+import com.android.incallui.answer.impl.hint.PawSecretCodeListener.PawType;
 
 /** Decrypt the event payload to be shown if in a specific time range and the key is received. */
 @TargetApi(VERSION_CODES.M)
@@ -40,10 +42,25 @@
     if (!preferences.getBoolean(PawSecretCodeListener.PAW_ENABLED_WITH_SECRET_CODE_KEY, false)) {
       return null;
     }
-    int drawableId = preferences.getInt(PawSecretCodeListener.PAW_DRAWABLE_ID_KEY, 0);
-    if (drawableId == 0) {
-      return null;
+    @PawType
+    int pawType =
+        preferences.getInt(PawSecretCodeListener.PAW_TYPE, PawSecretCodeListener.PAW_TYPE_INVALID);
+
+    if (pawType == PawSecretCodeListener.PAW_TYPE_INVALID) {
+      LogUtil.i("PawImageLoaderImpl.loadPayload", "paw type not found, rerolling");
+      PawSecretCodeListener.selectPawType(preferences);
+      pawType =
+          preferences.getInt(
+              PawSecretCodeListener.PAW_TYPE, PawSecretCodeListener.PAW_TYPE_INVALID);
     }
-    return context.getDrawable(drawableId);
+
+    switch (pawType) {
+      case PawSecretCodeListener.PAW_TYPE_CAT:
+        return context.getDrawable(R.drawable.cat_paw);
+      case PawSecretCodeListener.PAW_TYPE_DOG:
+        return context.getDrawable(R.drawable.dog_paw);
+      default:
+        throw Assert.createAssertionFailException("unknown paw type " + pawType);
+    }
   }
 }
diff --git a/java/com/android/incallui/answer/impl/hint/PawSecretCodeListener.java b/java/com/android/incallui/answer/impl/hint/PawSecretCodeListener.java
index a8737c3..204c4e1 100644
--- a/java/com/android/incallui/answer/impl/hint/PawSecretCodeListener.java
+++ b/java/com/android/incallui/answer/impl/hint/PawSecretCodeListener.java
@@ -20,15 +20,16 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.SharedPreferences;
-import android.preference.PreferenceManager;
+import android.support.annotation.IntDef;
 import android.support.annotation.VisibleForTesting;
 import android.text.TextUtils;
 import android.widget.Toast;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.DialerImpression.Type;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.util.DialerUtils;
 import java.util.Random;
 
 /**
@@ -40,7 +41,20 @@
   static final String CONFIG_PAW_SECRET_CODE = "paw_secret_code";
 
   public static final String PAW_ENABLED_WITH_SECRET_CODE_KEY = "paw_enabled_with_secret_code";
-  public static final String PAW_DRAWABLE_ID_KEY = "paw_drawable_id";
+
+  /** Which paw to show, must be {@link PawType} */
+  public static final String PAW_TYPE = "paw_type";
+
+  /** Resource id is not stable across app versions. Use {@link #PAW_TYPE} instead. */
+  @Deprecated public static final String PAW_DRAWABLE_ID_KEY = "paw_drawable_id";
+
+  /** Enum for all paws. */
+  @IntDef({PAW_TYPE_INVALID, PAW_TYPE_CAT, PAW_TYPE_DOG})
+  @interface PawType {}
+
+  public static final int PAW_TYPE_INVALID = 0;
+  public static final int PAW_TYPE_CAT = 1;
+  public static final int PAW_TYPE_DOG = 2;
 
   @Override
   public void onReceive(Context context, Intent intent) {
@@ -54,7 +68,8 @@
     if (!TextUtils.equals(secretCode, host)) {
       return;
     }
-    SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
+    SharedPreferences preferences =
+        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context);
     boolean wasEnabled = preferences.getBoolean(PAW_ENABLED_WITH_SECRET_CODE_KEY, false);
     if (wasEnabled) {
       preferences.edit().putBoolean(PAW_ENABLED_WITH_SECRET_CODE_KEY, false).apply();
@@ -62,20 +77,24 @@
       Logger.get(context).logImpression(Type.EVENT_ANSWER_HINT_DEACTIVATED);
       LogUtil.i("PawSecretCodeListener.onReceive", "PawAnswerHint disabled");
     } else {
-      int drawableId;
-      if (new Random().nextBoolean()) {
-        drawableId = R.drawable.cat_paw;
-      } else {
-        drawableId = R.drawable.dog_paw;
-      }
-      preferences
-          .edit()
-          .putBoolean(PAW_ENABLED_WITH_SECRET_CODE_KEY, true)
-          .putInt(PAW_DRAWABLE_ID_KEY, drawableId)
-          .apply();
+      selectPawType(preferences);
       Toast.makeText(context, R.string.event_activated, Toast.LENGTH_SHORT).show();
       Logger.get(context).logImpression(Type.EVENT_ANSWER_HINT_ACTIVATED);
       LogUtil.i("PawSecretCodeListener.onReceive", "PawAnswerHint enabled");
     }
   }
+
+  public static void selectPawType(SharedPreferences preferences) {
+    @PawType int pawType;
+    if (new Random().nextBoolean()) {
+      pawType = PAW_TYPE_CAT;
+    } else {
+      pawType = PAW_TYPE_DOG;
+    }
+    preferences
+        .edit()
+        .putBoolean(PAW_ENABLED_WITH_SECRET_CODE_KEY, true)
+        .putInt(PAW_TYPE, pawType)
+        .apply();
+  }
 }
diff --git a/java/com/android/incallui/answer/impl/res/values-af/strings.xml b/java/com/android/incallui/answer/impl/res/values-af/strings.xml
index 82a8796..b155ee8 100644
--- a/java/com/android/incallui/answer/impl/res/values-af/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-af/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swiep vanaf ikoon om met boodskap af te wys"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Antwoord en beëindig die voortgesette oproep"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is af"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swiep op met twee vingers om te antwoord. Swiep af met twee vingers om af te wys."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Dringend"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Belangrik"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-am/strings.xml b/java/com/android/incallui/answer/impl/res/values-am/strings.xml
index 4086977..c27705f 100644
--- a/java/com/android/incallui/answer/impl/res/values-am/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-am/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"በመልዕክት ላለመቀበል ከአዶ ያንሸራቱ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ይመልሱ እና በመካሄድ ላይ ያለ ጥሪን ይጨርሱ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ቪዲዮ ጠፍቷል"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ለመመለስ በሁለት ጣት ወደ ላይ ያንሸራቱ። ላለመቀበል በሁለት ጣት ወደ ታች ያንሸራቱ።"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"አስቸኳይ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"አስፈላጊ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ar/strings.xml b/java/com/android/incallui/answer/impl/res/values-ar/strings.xml
index fc29c16..e3f84ff 100644
--- a/java/com/android/incallui/answer/impl/res/values-ar/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ar/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"تمرير سريع من الرمز للرفض مع إرسال رسالة"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"الرد وإنهاء مكالمة جارية"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"الفيديو قيد إيقاف التشغيل"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"مرر بأصبعين لأعلى للرد. مرر بأصبعين لأسفل للرفض."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"عاجل"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"مهم"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-az/strings.xml b/java/com/android/incallui/answer/impl/res/values-az/strings.xml
index fff561d..5d113b4 100644
--- a/java/com/android/incallui/answer/impl/res/values-az/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-az/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Mesaj göndərərək imtina etmək üçün ikonadan sürüşdürün"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Cavab verin və gedən zəngi bitirin"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Videoları deaktivdir"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Cavab vermək üçün iki barmaq ilə yuxarı sürüşdürün. İmtina etmək üçün iki barmaq ilə aşağı sürüşdürün."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Vacib"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Önəmli"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/answer/impl/res/values-b+sr+Latn/strings.xml
index 7b29bfa..3acc576 100644
--- a/java/com/android/incallui/answer/impl/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-b+sr+Latn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Prevucite od ikone da biste odbili porukom"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Javite se i završite poziv koji je u toku"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Kamera je isključena"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Prevucite nagore pomoću dva prsta da biste odgovorili. Prevucite nadole pomoću dva prsta da biste odbili."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Hitno"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Važno"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-be/strings.xml b/java/com/android/incallui/answer/impl/res/values-be/strings.xml
index 228a80f..4f34150 100644
--- a/java/com/android/incallui/answer/impl/res/values-be/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-be/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Правядзіце ад значка, каб адхіліць, адправіўшы SMS"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Адказаць і скончыць бягучы выклік"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Відэа адключана"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Правядзіце двума пальцамі ўверх, каб адказаць; двума пальцамі ўніз – каб адхіліць."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Тэрмінова"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важны"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-bg/strings.xml b/java/com/android/incallui/answer/impl/res/values-bg/strings.xml
index 4e9422f..54a5ab9 100644
--- a/java/com/android/incallui/answer/impl/res/values-bg/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-bg/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Прекарайте пръст от иконата, за да отхвърлите със съобщение"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Отговор и завършване на текущото обаждане"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Видеото е изключено"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Прекарайте два пръста нагоре за отговаряне, надолу за отхвърляне."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Спешно"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важно"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-bn/strings.xml b/java/com/android/incallui/answer/impl/res/values-bn/strings.xml
index 869f7b9..d2aa4c3 100644
--- a/java/com/android/incallui/answer/impl/res/values-bn/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-bn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"বার্তা সহ প্রত্যাখ্যান করতে আইকন থেকে সোয়াইপ করুন"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"উত্তর দিন এবং  চলছে এমন কল কেটে দিন"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ভিডিও বন্ধ আছে"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"উত্তর দিতে উপরের দিকে, প্রত্যাখ্যান করতে নিচের দিকে দুই আঙুল দিয়ে সোয়াইপ করুন৷"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"জরুরি"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"গুরুত্বপূর্ণ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-bs/strings.xml b/java/com/android/incallui/answer/impl/res/values-bs/strings.xml
index b36e178..e175887 100644
--- a/java/com/android/incallui/answer/impl/res/values-bs/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-bs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Prevucite preko ikone da odbijete porukom"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Odgovorite na poziv i završite ga"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Kamera je isključena"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Prevucite pomoću dva prsta prema gore da odgovorite. Prevucite pomoću dva prsta prema dolje da odbijete."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Hitno"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Važno"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ca/strings.xml b/java/com/android/incallui/answer/impl/res/values-ca/strings.xml
index 13b3b32..538e0d3 100644
--- a/java/com/android/incallui/answer/impl/res/values-ca/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ca/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Llisca des de la icona per rebutjar la trucada amb un missatge"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Respon a la trucada i finalitza l\'actual"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"El vídeo està desactivat"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Llisca amb dos dits cap amunt per respondre a la trucada i cap avall per rebutjar-la."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-cs/strings.xml b/java/com/android/incallui/answer/impl/res/values-cs/strings.xml
index 6c69030..626409e 100644
--- a/java/com/android/incallui/answer/impl/res/values-cs/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-cs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Přejetím prstem od ikony hovor odmítnete a pošlete zprávu"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Přijmout hovor a ukončit probíhající hovor"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video je vypnuté"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Přejetím dvěma prsty nahoru hovor přijmete. Přejetím dvěma prsty dolů jej odmítnete."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Naléhavé"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Důležité"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-da/strings.xml b/java/com/android/incallui/answer/impl/res/values-da/strings.xml
index 3a87d44..3870891 100644
--- a/java/com/android/incallui/answer/impl/res/values-da/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-da/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Stryg fra ikonet for at afvise med en besked"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Besvar, og afslut det igangværende opkald"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video er deaktiveret"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Stryg op med to fingre for at besvare. Stryg ned med to fingre for at afvise."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Haster"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Vigtigt"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-de/strings.xml b/java/com/android/incallui/answer/impl/res/values-de/strings.xml
index f4356d2..ab3c33c 100644
--- a/java/com/android/incallui/answer/impl/res/values-de/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-de/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Zum Ablehnen mit Nachricht vom Symbol wegwischen"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Nimm den Anruf an und beende den aktuellen Anruf"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video deaktiviert"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Zum Annehmen mit zwei Fingern nach oben wischen. Zum Ablehnen mit zwei Fingern nach unten wischen."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Dringend"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Wichtig"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-el/strings.xml b/java/com/android/incallui/answer/impl/res/values-el/strings.xml
index 9c9a0f3..d847aac 100644
--- a/java/com/android/incallui/answer/impl/res/values-el/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-el/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Σύρετε από το εικονίδιο προς τα έξω για απόρριψη του μηνύματος"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Απάντηση και τερματισμός κλήσης σε εξέλιξη"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Το βίντεο είναι ανενεργό"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Σύρετε με δύο δάχτυλα, προς τα επάνω για απάντηση και προς τα κάτω για απόρριψη."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Επείγον"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Σημαντικό"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-en-rAU/strings.xml b/java/com/android/incallui/answer/impl/res/values-en-rAU/strings.xml
index fb8d156..fe6aa46 100644
--- a/java/com/android/incallui/answer/impl/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-en-rAU/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swipe from icon to decline with a message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Answer and end ongoing call"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is off"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swipe up with two fingers to answer. Swipe down with two fingers to decline."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-en-rGB/strings.xml b/java/com/android/incallui/answer/impl/res/values-en-rGB/strings.xml
index fb8d156..fe6aa46 100644
--- a/java/com/android/incallui/answer/impl/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-en-rGB/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swipe from icon to decline with a message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Answer and end ongoing call"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is off"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swipe up with two fingers to answer. Swipe down with two fingers to decline."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-en-rIN/strings.xml b/java/com/android/incallui/answer/impl/res/values-en-rIN/strings.xml
index fb8d156..fe6aa46 100644
--- a/java/com/android/incallui/answer/impl/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-en-rIN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swipe from icon to decline with a message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Answer and end ongoing call"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is off"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swipe up with two fingers to answer. Swipe down with two fingers to decline."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-es-rUS/strings.xml b/java/com/android/incallui/answer/impl/res/values-es-rUS/strings.xml
index 14928ee..60fcd01 100644
--- a/java/com/android/incallui/answer/impl/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-es-rUS/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Desliza desde el ícono para rechazar la llamada con un mensaje"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Responder y finalizar la llamada en curso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"El video está desactivado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Desliza dos dedos hacia arriba para responder la llamada o hacia abajo para rechazarla."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-es/strings.xml b/java/com/android/incallui/answer/impl/res/values-es/strings.xml
index 972bbc5..7b2f19a 100644
--- a/java/com/android/incallui/answer/impl/res/values-es/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-es/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Desliza desde el icono para rechazar con mensaje"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Responder a una llamada y finalizar otra en curso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"El vídeo está desconectado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Desliza dos dedos hacia arriba para responder o hacia abajo para rechazar la llamada."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-et/strings.xml b/java/com/android/incallui/answer/impl/res/values-et/strings.xml
index 9e303bb..b4632d1 100644
--- a/java/com/android/incallui/answer/impl/res/values-et/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-et/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Sõnumiga keeldumiseks pühkige ikoonilt eemale"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Vastake ja lõpetage käimasolev kõne"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video on välja lülitatud"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Vastamiseks pühkige kahe sõrmega üles. Keeldumiseks pühkige kahe sõrmega alla."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Kiireloomuline"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Tähtis"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-eu/strings.xml b/java/com/android/incallui/answer/impl/res/values-eu/strings.xml
index a1f6d71..118a2c7 100644
--- a/java/com/android/incallui/answer/impl/res/values-eu/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-eu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Pasatu hatza ikonotik baztertzeko eta mezu bat bidaltzeko"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Erantzun eta amaitu uneko deia"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Desaktibatuta dago kamera"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Pasatu bi hatz gora erantzuteko; eta behera, baztertzeko."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Premiazkoa"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Garrantzitsua"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-fa/strings.xml b/java/com/android/incallui/answer/impl/res/values-fa/strings.xml
index 28cf826..971b172 100644
--- a/java/com/android/incallui/answer/impl/res/values-fa/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-fa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"برای رد کردن با ارسال پیام، انگشتتان را تند از روی نماد بکشید"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"پاسخ دادن به تماس درحال انجام و پایان دادن به آن"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ویدیو خاموش است"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"برای پاسخ‌گویی، دو انگشتتان را تند به بالا بکشید و برای رد کردن به پایین بکشید."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"فوری"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"مهم"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-fi/strings.xml b/java/com/android/incallui/answer/impl/res/values-fi/strings.xml
index 8b8eac9..7ae9a1f 100644
--- a/java/com/android/incallui/answer/impl/res/values-fi/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-fi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Hylkää ja kirjoita viesti pyyhkäisemällä kuvaketta."</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Vastaa puheluun ja lopeta nykyinen puhelu"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Videokuva ei ole käytössä."</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Vastaa pyyhkäisemällä ylös kahdella sormella. Hylkää pyyhkäisemällä alas kahdella sormella."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Kiireellinen"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Tärkeä"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-fr-rCA/strings.xml b/java/com/android/incallui/answer/impl/res/values-fr-rCA/strings.xml
index 9ea27b8..ce454b5 100644
--- a/java/com/android/incallui/answer/impl/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-fr-rCA/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Balayez à partir de l\'icône pour refuser avec un message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Répondre et mettre fin à l\'appel en cours"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"La vidéo est désactivée"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Balayez vers le haut avec deux doigts pour répondre. Balayez vers le bas avec deux doigts pour refuser."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-fr/strings.xml b/java/com/android/incallui/answer/impl/res/values-fr/strings.xml
index 3aa3c12..7f77ed0 100644
--- a/java/com/android/incallui/answer/impl/res/values-fr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-fr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Appuyer sur l\'icône, puis balayer l\'écran pour refuser l\'appel en envoyant un message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Répondre ou mettre fin à l\'appel en cours"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"La vidéo est désactivée."</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Balayez l\'écran avec deux doigts vers le haut pour répondre, ou vers le bas pour refuser l\'appel."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importants"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-gl/strings.xml b/java/com/android/incallui/answer/impl/res/values-gl/strings.xml
index 16c0f69..07e0c51 100644
--- a/java/com/android/incallui/answer/impl/res/values-gl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-gl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Pasar o dedo desde a icona para rexeitar cunha mensaxe"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Responde á chamada entrante e finaliza a chamada en curso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"O vídeo está desactivado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Pasa dous dedos cara arriba para responder a chamada ou cara abaixo para rexeitala."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urxente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-gu/strings.xml b/java/com/android/incallui/answer/impl/res/values-gu/strings.xml
index 3f99c71..845e9de 100644
--- a/java/com/android/incallui/answer/impl/res/values-gu/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-gu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"સંદેશ સાથે નકારવા માટે આઇકનથી સ્વાઇપ કરો"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"જવાબ આપો અને ચાલુ કૉલ સમાપ્ત કરો"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"વિડિઓ બંધ છે"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"જવાબ આપવા માટે બે આંગળી ઉપર સ્વાઇપ કરો. નકારવા માટે બે આંગળી નીચે સ્વાઇપ કરો."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"તાત્કાલિક"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"મહત્વપૂર્ણ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-hi/strings.xml b/java/com/android/incallui/answer/impl/res/values-hi/strings.xml
index f28505f..e8e3c75 100644
--- a/java/com/android/incallui/answer/impl/res/values-hi/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-hi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"संदेश के साथ अस्वीकार करने के लिए आइकन से स्वाइप करें"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"कॉल का जवाब दें और जारी कॉल समाप्त करें"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"वीडियो बंद है"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"जवाब देने के लिए दो अंगुलियों से ऊपर स्वाइप करें. अस्वीकार करने के लिए दो अंगुलियों से नीचे स्वाइप करें."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"बहुत ज़रूरी"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"महत्वपूर्ण"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-hr/strings.xml b/java/com/android/incallui/answer/impl/res/values-hr/strings.xml
index 2807439..ffd0c9b 100644
--- a/java/com/android/incallui/answer/impl/res/values-hr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-hr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Prijeđite prstom od ikone da biste odbili poruku"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Odgovorite na poziv i prekinite poziv u tijeku"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Videokamera je isključena"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Prijeđite dvama prstima prema gore za odgovor, a dvama prstima prema dolje za odbijanje."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Hitno"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Važno"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-hu/strings.xml b/java/com/android/incallui/answer/impl/res/values-hu/strings.xml
index d7dacbf..13ec7da 100644
--- a/java/com/android/incallui/answer/impl/res/values-hu/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-hu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Csúsztassa el az ujját az ikonról az üzenettel való elutasításhoz"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Hívásfogadás és a folyamatban lévő hívás befejezése"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"A videokép ki van kapcsolva"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Csúsztassa felfelé két ujját a hívás fogadásához. Csúsztassa lefelé két ujját a hívás elutasításához."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Sürgős"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Fontos"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-hy/strings.xml b/java/com/android/incallui/answer/impl/res/values-hy/strings.xml
index 4492833..7fb7ef4 100644
--- a/java/com/android/incallui/answer/impl/res/values-hy/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-hy/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Զանգը մերժելու և հաղորդագրություն ուղարկելու համար պատկերակից մատով մի կողմ սահեցրեք"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Պատասխանել և ավարտել ընթացիկ զանգը"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Տեսախցիկն անջատած է"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Պատասխանելու համար երկու մատով սահեցրեք վերև, մերժելու համար՝ ներքև:"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Շտապ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Կարևոր"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-in/strings.xml b/java/com/android/incallui/answer/impl/res/values-in/strings.xml
index a1fd19f..48d71af 100644
--- a/java/com/android/incallui/answer/impl/res/values-in/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-in/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Gesek dari ikon untuk menolak dengan pesan"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Menjawab dan mengakhiri panggilan yang sedang berlangsung"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video nonaktif"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Geser ke atas dengan dua jari untuk menjawab. Geser ke bawah dengan dua jari untuk menolak."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Penting"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Penting"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-is/strings.xml b/java/com/android/incallui/answer/impl/res/values-is/strings.xml
index c4f9eb4..a92a411 100644
--- a/java/com/android/incallui/answer/impl/res/values-is/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-is/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Strjúktu frá tákninu til að hafna með skilaboðum"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Svara og ljúka yfirstandandi símtali"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Slökkt á myndavél"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Strjúktu upp með tveimur fingrum til að svara. Strjúktu niður með tveimur fingrum til að hafna."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Áríðandi"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Mikilvægt"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-it/strings.xml b/java/com/android/incallui/answer/impl/res/values-it/strings.xml
index 70e9722..b29bca7 100644
--- a/java/com/android/incallui/answer/impl/res/values-it/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-it/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Fai scorrere dall\'icona per rifiutare e inviare un messaggio"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Rispondi e termina la chiamata in corso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Il video è disattivato"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Fai scorrere con due dita verso l\'alto per rispondere e verso il basso per rifiutare."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-iw/strings.xml b/java/com/android/incallui/answer/impl/res/values-iw/strings.xml
index 08c02e3..6544e8f 100644
--- a/java/com/android/incallui/answer/impl/res/values-iw/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-iw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"החלק מהסמל כדי לדחות עם הודעה"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"מענה וסיום שיחה"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"הווידאו מושבת"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"החלק עם שתי אצבעות למעלה כדי לענות או למטה כדי לדחות."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"דחופה"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"חשוב"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ja/strings.xml b/java/com/android/incallui/answer/impl/res/values-ja/strings.xml
index b7bd65b..83f8f09 100644
--- a/java/com/android/incallui/answer/impl/res/values-ja/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ja/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"アイコンをスワイプして着信を拒否し、メッセージを送信"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"通話に応答し、進行中の通話を終了"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ビデオ: OFF"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"応答するには 2 本の指で上にスワイプ、拒否するには 2 本の指で下にスワイプします。"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"緊急"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"重要"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ka/strings.xml b/java/com/android/incallui/answer/impl/res/values-ka/strings.xml
index 6813067..4a1120c 100644
--- a/java/com/android/incallui/answer/impl/res/values-ka/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ka/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"გადაუსვით ხატულადან შეტყობინებით უარყოფისთვის"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"პასუხი და მიმდინარე ზარის დასრულება"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ვიდეო გამორთულია"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"საპასუხოდ გადაფურცლეთ ზემოთ ორი თითით. უარყოფისთვის გადაფურცლეთ ქვემოთ ორი თითით."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"სასწრაფო"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"მნიშვნელოვანი"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-kk/strings.xml b/java/com/android/incallui/answer/impl/res/values-kk/strings.xml
index 3d18633..69cf949 100644
--- a/java/com/android/incallui/answer/impl/res/values-kk/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-kk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Қабылдамай, жай хабар жіберу үшін, белгішеден әрі қарай сырғытыңыз"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Қоңырауға жауап беру және ағымдағы қоңырауды аяқтау"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Бейне өшірулі"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Жауап беру үшін екі саусақпен жоғары сырғытылады. Қабылдамау үшін екі саусақпен төмен сырғытылады."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Шұғыл"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Маңызды"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-km/strings.xml b/java/com/android/incallui/answer/impl/res/values-km/strings.xml
index 89f9031..db65a97 100644
--- a/java/com/android/incallui/answer/impl/res/values-km/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-km/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"អូស​ចេញ​ពី​រូបតំណាង​ដើម្បី​បដិសេធ​​ដោយ​មាន​សារ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ឆ្លើយ និង​បញ្ចប់​ការ​ហៅ​ទូរសព្ទ​ដែល​កំពុង​ដំណើរការ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"វីដេអូត្រូវបានបិទ"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"អូស​ម្រាម​ដៃ​ពីរ​ឡើងលើ​ ដើម្បី​ឆ្លើយ។ អូស​ម្រាមដៃ​ពីរ​ចុះ​ក្រោម​ ដើម្បី​បដិសេធ។"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"បន្ទាន់"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"សំខាន់"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-kn/strings.xml b/java/com/android/incallui/answer/impl/res/values-kn/strings.xml
index f02a6b8..8426aef 100644
--- a/java/com/android/incallui/answer/impl/res/values-kn/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-kn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"ಸಂದೇಶದ ಜೊತೆಗೆ ನಿರಾಕರಿಸಲು ಐಕಾನ್‌ನಿಂದ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕರೆಗೆ ಉತ್ತರಿಸಿ ಮತ್ತು ಅಂತ್ಯಗೊಳಿಸಿ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ವೀಡಿಯೊ ಆಫ್ ಆಗಿದೆ"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ಉತ್ತರಿಸಲು ಎರಡು ಬೆರಳಿನಿಂದ ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ. ನಿರಾಕರಿಸಲು ಎರಡು ಬೆರಳಿನಿಂದ ಕೆಳಗೆ ಸ್ವೈಪ್ ಮಾಡಿ."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ತುರ್ತು"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"ಪ್ರಮುಖ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ko/strings.xml b/java/com/android/incallui/answer/impl/res/values-ko/strings.xml
index 850b440..6b6beff 100644
--- a/java/com/android/incallui/answer/impl/res/values-ko/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ko/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"메시지를 거부하려면 아이콘에서 스와이프하세요."</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"현재 통화를 종료하고 전화 받기"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"동영상이 꺼져 있습니다."</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"받으려면 두 손가락을 위로 스와이프하고 거부하려면 두 손가락을 아래로 스와이프하세요."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"긴급"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"중요"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ky/strings.xml b/java/com/android/incallui/answer/impl/res/values-ky/strings.xml
index dc08e84..6dd5a2d 100644
--- a/java/com/android/incallui/answer/impl/res/values-ky/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ky/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Чалууну билдирүү менен четке кагуу үчүн сүрөтчөнү сүрүңүз"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Чалууга жооп бериңиз же учурдагы чалууну аяктаңыз"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Видео өчүк"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Жооп берүү үчүн экранды өйдө сүрүп, четке кагуу үчүн ылдый сүрүп коюңуз."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Шашылыш"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Маанилүү"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-lo/strings.xml b/java/com/android/incallui/answer/impl/res/values-lo/strings.xml
index 06ad00c..776c027 100644
--- a/java/com/android/incallui/answer/impl/res/values-lo/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-lo/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"ປັດຈາກໄອຄອນເພື່ອປະຕິເສດຂໍ້ຄວາມ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ຮັບສາຍ ແລະ ວາງສາຍທີ່ກຳລັງໂທອອກ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ວິດີໂອປິດຢູ່"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ປັດສອງນິ້ວຂຶ້ນເພື່ອຮັບສາຍ. ປັດສອງນິ້ວລົງເພື່ອປະຕິເສດ."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ດ່ວນ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"ສຳຄັນ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-lt/strings.xml b/java/com/android/incallui/answer/impl/res/values-lt/strings.xml
index 3366e33..2ef70ea 100644
--- a/java/com/android/incallui/answer/impl/res/values-lt/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-lt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Perbraukite iš piktogramos, kad atmestumėte išsiųsdami pranešimą"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atsakykite ir užbaikite vykstantį skambutį"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Vaizdas išjungtas"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Perbraukite dviem pirštais aukštyn, kad atsakytumėte. Perbraukite dviem pirštais žemyn, kad atmestumėte."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Skubus"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Svarbu"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-lv/strings.xml b/java/com/android/incallui/answer/impl/res/values-lv/strings.xml
index 49d1dc9..3fc754d 100644
--- a/java/com/android/incallui/answer/impl/res/values-lv/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-lv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Lai noraidītu, izmantojot ziņojumu, velciet no ikonas"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atbildiet un beidziet notiekošo zvanu"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video ir izslēgts"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Ar diviem pirkstiem velciet augšup, lai atbildētu. Ar diviem pirkstiem velciet lejup, lai noraidītu."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Steidzams"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Svarīgs"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-mk/strings.xml b/java/com/android/incallui/answer/impl/res/values-mk/strings.xml
index c068f66..deeba45 100644
--- a/java/com/android/incallui/answer/impl/res/values-mk/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-mk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Повлечете од иконата за да одбиете со порака"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Одговорете и завршете го тековниот повик"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Видеото е исклучено"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Повлечете нагоре со два прста за да одговорите. Повлечете надолу со два прста за да одбиете."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Итно"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важно"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ml/strings.xml b/java/com/android/incallui/answer/impl/res/values-ml/strings.xml
index 8e1d492..d8ce90d 100644
--- a/java/com/android/incallui/answer/impl/res/values-ml/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ml/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"സന്ദേശമയച്ചുകൊണ്ട് നിരസിക്കാൻ ഐക്കണിൽ നിന്ന് സ്വൈപ്പുചെയ്യുക"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"മറുപടി നൽകുകയും നിലവിലുള്ള കോൾ അവസാനിപ്പിക്കുകയും ചെയ്യൂ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"വീഡിയോ ഓഫാണ്"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"മറുപടി നൽകാൻ രണ്ടുവിരലുകൾ ഉപയോഗിച്ച് മുകളിലേക്ക് സ്വൈപ്പുചെയ്യുക. നിരസിക്കാൻ രണ്ടുവിരലുകൾ ഉപയോഗിച്ച് താഴേക്ക് സ്വൈപ്പുചെയ്യുക."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"അടിയന്തിര പ്രാധാന്യം"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"പ്രധാനപ്പെട്ടവ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-mn/strings.xml b/java/com/android/incallui/answer/impl/res/values-mn/strings.xml
index 4bdd912..aaa1621 100644
--- a/java/com/android/incallui/answer/impl/res/values-mn/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-mn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Зурвас явуулангаа татгалзах бол дүрснээс шударна уу"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Ирсэн дуудлагыг авч, одоогийн дуудлагыг таслах"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Видео идэвхгүй байна"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Хариулах бол хоёр хуруугаар дээш шударна уу. Таслах бол хоёр хуруугаар доош шударна уу."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Яаралтай"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Чухал"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-mr/strings.xml b/java/com/android/incallui/answer/impl/res/values-mr/strings.xml
index 11c8268..eea662f 100644
--- a/java/com/android/incallui/answer/impl/res/values-mr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-mr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"संदेशासह नाकारण्यासाठी आयकॉनपासून स्वाइप करा"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"उत्तर द्या आणि सुरु असलेला कॉल बंद करा"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"व्हिडिओ बंद आहे"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"उत्तर देण्यासाठी दोन बोटांनी वर स्वाइप करा. नकार देण्यासाठी दोन बोटांनी खाली स्वाइप करा."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"त्वरित"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"महत्त्वाचे"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ms/strings.xml b/java/com/android/incallui/answer/impl/res/values-ms/strings.xml
index 36ede75..04b054e 100644
--- a/java/com/android/incallui/answer/impl/res/values-ms/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ms/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Leret dari ikon untuk menolak dengan mesej"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Jawab dan tamatkan panggilan yang sedang berlangsung"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video dimatikan"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Leret dua jari ke atas untuk menjawab. Leret dua jari ke bawah untuk menolak."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Segera"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Penting"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-my/strings.xml b/java/com/android/incallui/answer/impl/res/values-my/strings.xml
index 5ad7a82..f3d6a2e 100644
--- a/java/com/android/incallui/answer/impl/res/values-my/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-my/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"မက်ဆေ့ဂျ်ဖြင့်ငြင်းပယ်ရန် သင်္ကေတမှ ပွတ်ဆွဲပါ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ဖြေကြားပြီး လက်ရှိခေါ်ဆိုမှုကို အပြီးသတ်ပါ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ဗီဒီယို ပိတ်ထားပါသည်"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ဖြေကြားရန် လက်နှစ်ချောင်းဖြင့် အပေါ်သို့ ပွတ်ဆွဲပါ။ ငြင်းပယ်ရန် လက်နှစ်ချောင်းဖြင့် အောက်သို့ ပွတ်ဆွဲပါ။"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"အရေးတကြီး"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"အရေးကြီး"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-nb/strings.xml b/java/com/android/incallui/answer/impl/res/values-nb/strings.xml
index b1c32be..42ff3d0 100644
--- a/java/com/android/incallui/answer/impl/res/values-nb/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-nb/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Sveip fra ikonet for å avslå med en melding"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Svar, og avslutt samtalen som er i gang"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video er av"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Sveip oppover med to fingre for å svare. Sveip nedover med to fingre for å avvise."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Haster"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Viktig"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ne/strings.xml b/java/com/android/incallui/answer/impl/res/values-ne/strings.xml
index 40ef7b6..f0b8641 100644
--- a/java/com/android/incallui/answer/impl/res/values-ne/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ne/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"सन्देश सहित अस्वीकार गर्न आइकनबाट स्वाइप गर्नुहोस्"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"जवाफ फर्काउनुहोस् र जारी कललाई अन्त्य गर्नुहोस्"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"भिडियो निष्क्रिय छ"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"जवाफ दिन दुई औंलाले माथितिर स्वाइप गर्नुहोस्। अस्वीकार गर्न दुई औंलाले तलतिर स्वाइप गर्नुहोस्।"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"जरुरी"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"महत्त्वपूर्ण"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-nl/strings.xml b/java/com/android/incallui/answer/impl/res/values-nl/strings.xml
index b2f619f..89c956a 100644
--- a/java/com/android/incallui/answer/impl/res/values-nl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-nl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Veeg vanaf pictogram om te weigeren met bericht"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Opnemen en actieve oproep beëindigen"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is uit"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Veeg met twee vingers omhoog om te beantwoorden. Veeg met twee vingers omlaag om te weigeren."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Belangrijk"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-no/strings.xml b/java/com/android/incallui/answer/impl/res/values-no/strings.xml
index b1c32be..42ff3d0 100644
--- a/java/com/android/incallui/answer/impl/res/values-no/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-no/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Sveip fra ikonet for å avslå med en melding"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Svar, og avslutt samtalen som er i gang"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video er av"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Sveip oppover med to fingre for å svare. Sveip nedover med to fingre for å avvise."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Haster"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Viktig"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pa/strings.xml b/java/com/android/incallui/answer/impl/res/values-pa/strings.xml
index d2b1452..3772f29 100644
--- a/java/com/android/incallui/answer/impl/res/values-pa/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"ਸੁਨੇਹੇ ਦੇ ਨਾਲ ਅਸਵੀਕਾਰ ਕਰਨ ਲਈ ਚਿੰਨ੍ਹ ਤੋਂ ਸਵਾਈਪ ਕਰੋ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ਜਵਾਬ ਦਿਓ ਅਤੇ ਜਾਰੀ ਕਾਲ ਨੂੰ ਸਮਾਪਤ ਕਰੋ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ਵੀਡੀਓ ਬੰਦ ਹੈ"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ਜਵਾਬ ਦੇਣ ਲਈ ਦੋ ਉਂਗਲਾਂ ਨਾਲ ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰੋ। ਅਸਵੀਕਾਰ ਕਰਨ ਲਈ ਦੋ ਉਂਗਲਾਂ ਨਾਲ ਹੇਠਾਂ ਵੱਲ ਸਵਾਈਪ ਕਰੋ।"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ਜ਼ਰੂਰੀ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"ਮਹੱਤਵਪੂਰਨ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pl/strings.xml b/java/com/android/incallui/answer/impl/res/values-pl/strings.xml
index b0c44e7..f6e1f1b 100644
--- a/java/com/android/incallui/answer/impl/res/values-pl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Przesuń palcem od ikony, aby odrzucić połączenie i wysłać wiadomość"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Odbierz połączenie i zakończ trwającą rozmowę"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Wideo jest wyłączone"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Przesuń dwoma palcami w górę, aby odebrać. Przesuń dwoma palcami w dół, aby odrzucić."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Pilne"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Ważne"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pt-rBR/strings.xml b/java/com/android/incallui/answer/impl/res/values-pt-rBR/strings.xml
index fe1c89d..1ed2451 100644
--- a/java/com/android/incallui/answer/impl/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pt-rBR/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Deslize a partir do ícone para recusar com uma mensagem"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atender e encerrar a chamada em andamento"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"O vídeo está desativado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Deslize com dois dedos para cima para atender. Deslize com dois dedos para baixo para recusar."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pt-rPT/strings.xml b/java/com/android/incallui/answer/impl/res/values-pt-rPT/strings.xml
index 1a23a4a..f1e17a1 100644
--- a/java/com/android/incallui/answer/impl/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pt-rPT/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Deslize rapidamente a partir do ícone para recusar com uma mensagem"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atender e terminar uma chamada em curso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"O vídeo está desativado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Deslize rapidamente com dois dedos para cima para responder. Deslize rapidamente com dois dedos para baixo para recusar."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pt/strings.xml b/java/com/android/incallui/answer/impl/res/values-pt/strings.xml
index fe1c89d..1ed2451 100644
--- a/java/com/android/incallui/answer/impl/res/values-pt/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Deslize a partir do ícone para recusar com uma mensagem"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atender e encerrar a chamada em andamento"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"O vídeo está desativado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Deslize com dois dedos para cima para atender. Deslize com dois dedos para baixo para recusar."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ro/strings.xml b/java/com/android/incallui/answer/impl/res/values-ro/strings.xml
index 6c8bafa..0b1f4f4 100644
--- a/java/com/android/incallui/answer/impl/res/values-ro/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ro/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Glisați de pe pictogramă pentru a respinge cu un mesaj"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Răspundeți și încheiați apelul în curs"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Camera video este dezactivată."</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Glisați cu două degete în sus pentru a răspunde și în jos pentru a respinge."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ru/strings.xml b/java/com/android/incallui/answer/impl/res/values-ru/strings.xml
index 67ff06a..d1fdcf7 100644
--- a/java/com/android/incallui/answer/impl/res/values-ru/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ru/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Чтобы отклонить вызов и отправить SMS, проведите пальцем от значка"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Ответить и завершить текущий вызов"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Камера выключена"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Проведите двумя пальцами по экрану вверх, чтобы ответить, или вниз, чтобы отклонить вызов."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Срочно"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важный звонок"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-si/strings.xml b/java/com/android/incallui/answer/impl/res/values-si/strings.xml
index ae3c080..99f4989 100644
--- a/java/com/android/incallui/answer/impl/res/values-si/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-si/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"පණිවිඩය සහිතව ප්‍රතික්ෂේප කිරීමට නිරූපකයේ සිට ස්වයිප් කරන්න"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"යන අැමතුමට පිළිතරු දී අවසන් කරන්න"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"වීඩියෝව ක්‍රියාවිරහිතයි"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"පිළිතුරු දීමට ඇඟිලි දෙකකින් ඉහළට ස්වයිප් කරන්න, ප්‍රතික්ෂේප කිරීමට ඇඟිලි දෙකකින් පහළට ස්වයිප් කරන්න."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"හදිසි"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"වැදගත්"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sk/strings.xml b/java/com/android/incallui/answer/impl/res/values-sk/strings.xml
index 179be7b..fa00ac4 100644
--- a/java/com/android/incallui/answer/impl/res/values-sk/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Prejdením prstom od ikony odmietnuť so správou"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Prijať hovor a ukončiť prebiehajúci hovor"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video je vypnuté"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Ak chcete hovor prijať, prejdite dvomi prstami nahor. Ak ho chcete odmietnuť, prejdite dvomi prstami nadol."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Naliehavé"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Dôležité"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sl/strings.xml b/java/com/android/incallui/answer/impl/res/values-sl/strings.xml
index 5f658be..147a098 100644
--- a/java/com/android/incallui/answer/impl/res/values-sl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Povlecite z ikone, da klic zavrnete s sporočilom"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Sprejmi klic in končaj aktivni klic"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video je izklopljen"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Z dvema prstoma povlecite navzgor, da sprejmete klic. Z dvema prstoma povlecite navzdol, da zavrnete klic."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Nujno"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Pomembno"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sq/strings.xml b/java/com/android/incallui/answer/impl/res/values-sq/strings.xml
index 1de60c9..e71691a 100644
--- a/java/com/android/incallui/answer/impl/res/values-sq/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sq/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Rrëshqit nga ikona për të refuzuar me mesazh"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Përgjigju dhe mbyll telefonatën në vazhdim"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Videoja është joaktive"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Rrëshqit dy gishta lart për t\'u përgjigjur. Rrëshqit dy gishta poshtë për të refuzuar."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgjente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"E rëndësishme"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sr/strings.xml b/java/com/android/incallui/answer/impl/res/values-sr/strings.xml
index 4d6ef56..c802b0e 100644
--- a/java/com/android/incallui/answer/impl/res/values-sr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Превуците од иконе да бисте одбили поруком"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Јавите се и завршите позив који је у току"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Камера је искључена"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Превуците нагоре помоћу два прста да бисте одговорили. Превуците надоле помоћу два прста да бисте одбили."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Хитно"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важно"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sv/strings.xml b/java/com/android/incallui/answer/impl/res/values-sv/strings.xml
index e47b4e0..2265dc4 100644
--- a/java/com/android/incallui/answer/impl/res/values-sv/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Svep från ikonen för att avvisa med meddelande"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Svara och avsluta pågående samtal"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video avstängd"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Dra två fingrar uppåt för att svara och två nedåt för att avvisa."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Brådskande"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Viktigt"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sw/strings.xml b/java/com/android/incallui/answer/impl/res/values-sw/strings.xml
index 1e58966..26e1b7a 100644
--- a/java/com/android/incallui/answer/impl/res/values-sw/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Telezesha kidole ukianzia kwenye aikoni ili utume ujumbe wa kukataa"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Jibu na ukate simu inayoendelea"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video imezimwa"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Telezesha juu kwa vidole viwili ili uijibu. Telezesha chini kwa vidole viwili ili uikate."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Dharura"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Muhimu"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ta/strings.xml b/java/com/android/incallui/answer/impl/res/values-ta/strings.xml
index 847936f..453781d 100644
--- a/java/com/android/incallui/answer/impl/res/values-ta/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ta/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"செய்தியுடன் நிராகரிக்க, ஐகானிலிருந்து ஸ்வைப் செய்யவும்"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"உள்வரும் அழைப்பிற்குப் பதிலளித்து, செயலில் உள்ள அழைப்பை முடிக்கும்"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"வீடியோ முடக்கப்பட்டுள்ளது"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"பதிலளிக்க, இரு விரல்களால் மேலே ஸ்வைப் செய்யவும். நிராகரிக்க, இரு விரல்களால் கீழே ஸ்வைப் செய்யவும்."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"அவசரம்"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"முக்கிய அழைப்பு"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-te/strings.xml b/java/com/android/incallui/answer/impl/res/values-te/strings.xml
index abc3902..e0e5087 100644
--- a/java/com/android/incallui/answer/impl/res/values-te/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-te/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"సందేశంతో తిరస్కరించడానికి చిహ్నం నుండి స్వైప్ చేయండి"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"సమాధానం ఇస్తుంది మరియు కొనసాగుతున్న కాల్‌ను ముగిస్తుంది"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"వీడియో ఆఫ్‌లో ఉంది"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"సమాధానం ఇవ్వడానికి రెండు వేళ్లతో పైకి స్వైప్ చేయండి. తిరస్కరించడానికి రెండు వేళ్లతో క్రిందికి స్వైప్ చేయండి."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"అత్యవసరం"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"ముఖ్యమైనది"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-th/strings.xml b/java/com/android/incallui/answer/impl/res/values-th/strings.xml
index 54069b3..695da74 100644
--- a/java/com/android/incallui/answer/impl/res/values-th/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-th/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"เลื่อนไอคอนเพื่อปฏิเสธสายด้วยข้อความ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"รับและวางสาย"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"วิดีโอปิดอยู่"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ใช้สองนิ้วเลื่อนขึ้นเพื่อรับสายและเลื่อนลงเพื่อตัดสาย"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ด่วน"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"สำคัญ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-tl/strings.xml b/java/com/android/incallui/answer/impl/res/values-tl/strings.xml
index 8f87b56..6128d6f 100644
--- a/java/com/android/incallui/answer/impl/res/values-tl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-tl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"I-swipe mula sa icon upang tanggihan gamit ang mensahe"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Sagutin at tapusin ang kasalukuyang tawag"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Naka-off ang video"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"I-swipe nang pataas gamit ang dalawang daliri upang sagutin. I-swipe nang pababa gamit ang dalawang daliri upang tanggihan."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Apurahan"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Mahalaga"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-tr/strings.xml b/java/com/android/incallui/answer/impl/res/values-tr/strings.xml
index 53f5eb9..87583c0 100644
--- a/java/com/android/incallui/answer/impl/res/values-tr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-tr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Mesajla reddetmek için, simgeden hızlıca kaydırın"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Bir çağrı cevaplanır ve devam eden çağrı sona erdirilir"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video kapalı"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Cevaplamak için iki parmağınızla hızlıca yukarı kaydırın. Reddetmek içinse iki parmağınızla hızlıca aşağı kaydırın."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Acil"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Önemli"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-uk/strings.xml b/java/com/android/incallui/answer/impl/res/values-uk/strings.xml
index a0332d3..76eb2b0 100644
--- a/java/com/android/incallui/answer/impl/res/values-uk/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-uk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Проведіть пальцем убік від значка, щоб відхилити з повідомленням"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Відповісти на виклик, завершивши поточний"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Відео вимкнено"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Проведіть двома пальцями вгору, щоб відповісти, або вниз, щоб відхилити дзвінок."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Терміново"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важливо"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ur/strings.xml b/java/com/android/incallui/answer/impl/res/values-ur/strings.xml
index e1813cb..2a44e90 100644
--- a/java/com/android/incallui/answer/impl/res/values-ur/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ur/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"پیغام کے ساتھ رد کرنے کیلئے آئیکن سے سوائپ کریں"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"جواب دیں اور جاری کال ختم کریں"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ویڈیو آف ہے"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"جواب دینے کیلئے دوانگلیوں کے ساتھ اوپر سوائپ کریں۔ مسترد کرنے کیلئے دو انگلیوں کے ساتھ نیچے سوائپ کریں۔"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ارجنٹ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"اہم"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-uz/strings.xml b/java/com/android/incallui/answer/impl/res/values-uz/strings.xml
index b83abcc..f348a49 100644
--- a/java/com/android/incallui/answer/impl/res/values-uz/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-uz/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Qo‘ng‘iroqni SMS bilan rad etish uchun nishonchadan suring."</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Kiruvchi chaqiruvga javob berish va joriy qo‘ng‘iroqni tugatish"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Kamera o‘chiq"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Chaqiruvga javob berish uchun ikki barmoq bilan tepaga, rad etish uchun ikki barmoq bilan pastga suring."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Juda muhim"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Muhim qo‘ng‘iroq"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-vi/strings.xml b/java/com/android/incallui/answer/impl/res/values-vi/strings.xml
index 94dd1c3..f4dfa5b 100644
--- a/java/com/android/incallui/answer/impl/res/values-vi/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-vi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Vuốt từ biểu tượng để từ chối kèm thông báo"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Trả lời và kết thúc cuộc gọi đang diễn ra"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video đã tắt"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Vuốt hai ngón tay lên để trả lời. Vuốt hai ngón tay xuống để từ chối."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Khẩn cấp"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Quan trọng"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-zh-rCN/strings.xml b/java/com/android/incallui/answer/impl/res/values-zh-rCN/strings.xml
index fc7ce64..9698aa0 100644
--- a/java/com/android/incallui/answer/impl/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-zh-rCN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"滑动图标即可拒接来电并发送信息"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"接听并结束当前通话"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"摄像头处于关闭状态"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"双指向上滑动即可接听，向下滑动则可拒接。"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"紧急"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"重要"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-zh-rHK/strings.xml b/java/com/android/incallui/answer/impl/res/values-zh-rHK/strings.xml
index 9795539..81a8815 100644
--- a/java/com/android/incallui/answer/impl/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-zh-rHK/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"從圖示快速滑動即可透過訊息拒絕"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"接聽及結束進行中的通話"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"視像已關閉"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"兩指向上滑動可接聽，向下滑動則可拒接。"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"緊急"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"重要事項"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-zh-rTW/strings.xml b/java/com/android/incallui/answer/impl/res/values-zh-rTW/strings.xml
index f27e5ae..8f04992 100644
--- a/java/com/android/incallui/answer/impl/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-zh-rTW/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"滑動圖示即可拒接來電並傳送簡訊"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"接聽來電及結束進行中的通話"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"已關閉攝影機"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"用雙指向上滑動可接聽，向下滑動可拒接。"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"緊急"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"重要"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-zu/strings.xml b/java/com/android/incallui/answer/impl/res/values-zu/strings.xml
index 52f2400..23c988e 100644
--- a/java/com/android/incallui/answer/impl/res/values-zu/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-zu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swayipha isithonjana ukuze wenqabe ngomlayezo"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Phendula uphinde uqede ikholi eqhubekayo"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Ividiyo ivaliwe"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swayiphela iminwe emibili phezulu ukuze uphendule. Swayiphela iminwe emibili phansi ukuze wenqabe."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Okuphuthumayo"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Kubalulekile"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values/strings.xml b/java/com/android/incallui/answer/impl/res/values/strings.xml
index 2359220..de5ee6e 100644
--- a/java/com/android/incallui/answer/impl/res/values/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values/strings.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
 <resources>
   <string name="call_incoming_swipe_to_decline_with_message">Swipe from icon to decline with message</string>
   <string name="call_incoming_swipe_to_answer_video_as_audio">Swipe from icon to answer as an audio call</string>
@@ -26,5 +41,5 @@
   <!-- Voice prompt of swipe gesture when accessibility is turned on. -->
   <string description="The message announced to accessibility assistance on incoming call."
     name="a11y_incoming_call_swipe_gesture_prompt">Two finger swipe up to answer. Two finger swipe down to decline.</string>
-  <string name="call_incoming_important">Urgent</string>
+  <string name="call_incoming_important">Important</string>
 </resources>
diff --git a/java/com/android/incallui/answer/protocol/AnswerScreen.java b/java/com/android/incallui/answer/protocol/AnswerScreen.java
index 8bcad6e..5ad5002 100644
--- a/java/com/android/incallui/answer/protocol/AnswerScreen.java
+++ b/java/com/android/incallui/answer/protocol/AnswerScreen.java
@@ -30,6 +30,8 @@
 
   boolean allowAnswerAndRelease();
 
+  boolean isActionTimeout();
+
   void setTextResponses(List<String> textResponses);
 
   boolean hasPendingDialogs();
diff --git a/java/com/android/incallui/answer/protocol/AnswerScreenDelegate.java b/java/com/android/incallui/answer/protocol/AnswerScreenDelegate.java
index 9815981..5d2c415 100644
--- a/java/com/android/incallui/answer/protocol/AnswerScreenDelegate.java
+++ b/java/com/android/incallui/answer/protocol/AnswerScreenDelegate.java
@@ -32,6 +32,10 @@
   void onReject();
 
   void onAnswerAndReleaseCall();
+
+  void onAnswerAndReleaseButtonEnabled();
+
+  void onAnswerAndReleaseButtonDisabled();
   /**
    * Sets the window background color based on foreground call's theme and the given progress. This
    * is called from the answer UI to animate the accept and reject action.
@@ -42,4 +46,7 @@
    * @param progress float from -1 to 1. -1 is fully rejected, 1 is fully accepted, and 0 is neutral
    */
   void updateWindowBackgroundColor(@FloatRange(from = -1f, to = 1.0f) float progress);
+
+  /** Returns true if any answer/reject action timed out. */
+  boolean isActionTimeout();
 }
diff --git a/java/com/android/incallui/answerproximitysensor/AnswerProximitySensor.java b/java/com/android/incallui/answerproximitysensor/AnswerProximitySensor.java
index 24fbfc4..536a470 100644
--- a/java/com/android/incallui/answerproximitysensor/AnswerProximitySensor.java
+++ b/java/com/android/incallui/answerproximitysensor/AnswerProximitySensor.java
@@ -20,8 +20,8 @@
 import android.hardware.display.DisplayManager;
 import android.os.PowerManager;
 import android.view.Display;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.incallui.call.DialerCall;
 import com.android.incallui.call.DialerCall.State;
 import com.android.incallui.call.DialerCallListener;
@@ -143,6 +143,9 @@
   public void onInternationalCallOnWifi() {}
 
   @Override
+  public void onEnrichedCallSessionUpdate() {}
+
+  @Override
   public void onDialerCallSessionModificationStateChange() {}
 
   @Override
diff --git a/java/com/android/incallui/audioroute/AudioRouteSelectorDialogFragment.java b/java/com/android/incallui/audioroute/AudioRouteSelectorDialogFragment.java
index c757477..c7a9d63 100644
--- a/java/com/android/incallui/audioroute/AudioRouteSelectorDialogFragment.java
+++ b/java/com/android/incallui/audioroute/AudioRouteSelectorDialogFragment.java
@@ -18,6 +18,7 @@
 
 import android.app.Dialog;
 import android.content.Context;
+import android.content.DialogInterface;
 import android.content.res.ColorStateList;
 import android.graphics.PorterDuff.Mode;
 import android.os.Bundle;
@@ -41,6 +42,8 @@
   /** Called when an audio route is picked */
   public interface AudioRouteSelectorPresenter {
     void onAudioRouteSelected(int audioRoute);
+
+    void onAudioRouteSelectorDismiss();
   }
 
   public static AudioRouteSelectorDialogFragment newInstance(CallAudioState audioState) {
@@ -91,6 +94,14 @@
     return view;
   }
 
+  @Override
+  public void onDismiss(DialogInterface dialogInterface) {
+    super.onDismiss(dialogInterface);
+    FragmentUtils.getParentUnsafe(
+            AudioRouteSelectorDialogFragment.this, AudioRouteSelectorPresenter.class)
+        .onAudioRouteSelectorDismiss();
+  }
+
   private void initItem(TextView item, final int itemRoute, CallAudioState audioState) {
     int selectedColor = getResources().getColor(R.color.dialer_theme_color);
     if ((audioState.getSupportedRouteMask() & itemRoute) == 0) {
diff --git a/java/com/android/incallui/bindings/InCallUiBindings.java b/java/com/android/incallui/bindings/InCallUiBindings.java
index d3d3a8b..5c6aef4 100644
--- a/java/com/android/incallui/bindings/InCallUiBindings.java
+++ b/java/com/android/incallui/bindings/InCallUiBindings.java
@@ -19,7 +19,6 @@
 import android.content.Context;
 import android.content.Intent;
 import android.support.annotation.Nullable;
-import com.android.dialer.common.ConfigProvider;
 
 /** This interface allows the container application to customize the in call UI. */
 public interface InCallUiBindings {
@@ -37,12 +36,4 @@
    */
   @Nullable
   Intent getCallStateButtonBroadcastIntent(Context context);
-
-  @Nullable
-  DistanceHelper newDistanceHelper(Context context, DistanceHelper.Listener listener);
-
-  @Nullable
-  ContactUtils getContactUtilsInstance(Context context);
-
-  ConfigProvider getConfigProvider();
 }
diff --git a/java/com/android/incallui/bindings/InCallUiBindingsStub.java b/java/com/android/incallui/bindings/InCallUiBindingsStub.java
index 7b42fb3..3a005b0 100644
--- a/java/com/android/incallui/bindings/InCallUiBindingsStub.java
+++ b/java/com/android/incallui/bindings/InCallUiBindingsStub.java
@@ -19,11 +19,9 @@
 import android.content.Context;
 import android.content.Intent;
 import android.support.annotation.Nullable;
-import com.android.dialer.common.ConfigProvider;
 
 /** Default implementation for InCallUi bindings. */
 public class InCallUiBindingsStub implements InCallUiBindings {
-  private ConfigProvider configProvider;
 
   @Override
   @Nullable
@@ -42,40 +40,4 @@
   public Intent getCallStateButtonBroadcastIntent(Context context) {
     return null;
   }
-
-  @Override
-  @Nullable
-  public DistanceHelper newDistanceHelper(Context context, DistanceHelper.Listener listener) {
-    return null;
-  }
-
-  @Override
-  @Nullable
-  public ContactUtils getContactUtilsInstance(Context context) {
-    return null;
-  }
-
-  @Override
-  public ConfigProvider getConfigProvider() {
-    if (configProvider == null) {
-      configProvider =
-          new ConfigProvider() {
-            @Override
-            public String getString(String key, String defaultValue) {
-              return defaultValue;
-            }
-
-            @Override
-            public long getLong(String key, long defaultValue) {
-              return defaultValue;
-            }
-
-            @Override
-            public boolean getBoolean(String key, boolean defaultValue) {
-              return defaultValue;
-            }
-          };
-    }
-    return configProvider;
-  }
 }
diff --git a/java/com/android/incallui/call/CallList.java b/java/com/android/incallui/call/CallList.java
index 34f0cc0..269fcd6 100644
--- a/java/com/android/incallui/call/CallList.java
+++ b/java/com/android/incallui/call/CallList.java
@@ -32,6 +32,8 @@
 import com.android.dialer.blocking.FilteredNumbersUtil;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.enrichedcall.EnrichedCallComponent;
+import com.android.dialer.enrichedcall.EnrichedCallManager;
 import com.android.dialer.location.GeoUtil;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
@@ -117,6 +119,10 @@
         new DialerCall(context, this, telecomCall, latencyReport, true /* registerCallback */);
     logSecondIncomingCall(context, call);
 
+    EnrichedCallManager manager = EnrichedCallComponent.get(context).getEnrichedCallManager();
+    manager.registerCapabilitiesListener(call);
+    manager.registerStateChangedListener(call);
+
     final DialerCallListenerImpl dialerCallListener = new DialerCallListenerImpl(call);
     call.addListener(dialerCallListener);
     LogUtil.d("CallList.onCallAdded", "callState=" + call.getState());
@@ -278,6 +284,10 @@
       DialerCall call = mCallByTelecomCall.get(telecomCall);
       Assert.checkArgument(!call.isExternalCall());
 
+      EnrichedCallManager manager = EnrichedCallComponent.get(context).getEnrichedCallManager();
+      manager.unregisterCapabilitiesListener(call);
+      manager.unregisterStateChangedListener(call);
+
       // Don't log an already logged call. logCall() might be called multiple times
       // for the same call due to b/24109437.
       if (call.getLogState() != null && !call.getLogState().isLogged) {
@@ -289,6 +299,8 @@
         LogUtil.w(
             "CallList.onCallRemoved", "Removing call not previously disconnected " + call.getId());
       }
+
+      call.onRemovedFromCallList();
     }
 
     if (!hasLiveCall()) {
@@ -556,7 +568,8 @@
    *
    * @param call The call to update.
    */
-  private void onUpdateCall(DialerCall call) {
+  @VisibleForTesting
+  void onUpdateCall(DialerCall call) {
     LogUtil.d("CallList.onUpdateCall", String.valueOf(call));
     if (!mCallById.containsKey(call.getId()) && call.isExternalCall()) {
       // When a regular call becomes external, it is removed from the call list, and there may be
@@ -793,6 +806,9 @@
     }
 
     @Override
+    public void onEnrichedCallSessionUpdate() {}
+
+    @Override
     public void onDialerCallSessionModificationStateChange() {
       for (Listener listener : mListeners) {
         listener.onSessionModificationStateChange(mCall);
diff --git a/java/com/android/incallui/call/DialerCall.java b/java/com/android/incallui/call/DialerCall.java
index acedf41..88e0dbb 100644
--- a/java/com/android/incallui/call/DialerCall.java
+++ b/java/com/android/incallui/call/DialerCall.java
@@ -47,10 +47,14 @@
 import com.android.dialer.callintent.CallIntentParser;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.enrichedcall.EnrichedCallCapabilities;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
+import com.android.dialer.enrichedcall.EnrichedCallManager;
+import com.android.dialer.enrichedcall.EnrichedCallManager.CapabilitiesListener;
+import com.android.dialer.enrichedcall.EnrichedCallManager.Filter;
+import com.android.dialer.enrichedcall.EnrichedCallManager.StateChangedListener;
 import com.android.dialer.enrichedcall.Session;
 import com.android.dialer.lightbringer.LightbringerComponent;
 import com.android.dialer.logging.ContactLookupResult;
@@ -77,7 +81,7 @@
 import java.util.concurrent.TimeUnit;
 
 /** Describes a single call and its state. */
-public class DialerCall implements VideoTechListener {
+public class DialerCall implements VideoTechListener, StateChangedListener, CapabilitiesListener {
 
   public static final int CALL_HISTORY_STATUS_UNKNOWN = 0;
   public static final int CALL_HISTORY_STATUS_PRESENT = 1;
@@ -143,6 +147,12 @@
   private EnrichedCallCapabilities mEnrichedCallCapabilities;
   private Session mEnrichedCallSession;
 
+  private int answerAndReleaseButtonDisplayedTimes = 0;
+  private boolean releasedByAnsweringSecondCall = false;
+  // Times when a second call is received but AnswerAndRelease button is not shown
+  // since it's not supported.
+  private int secondCallWithoutAnswerAndReleasedButtonTimes = 0;
+
   public static String getNumberFromHandle(Uri handle) {
     return handle == null ? "" : handle.getSchemeSpecificPart();
   }
@@ -153,6 +163,9 @@
    */
   private boolean isRemotelyHeld;
 
+  /** Indicates whether this call is currently in the process of being merged into a conference. */
+  private boolean isMergeInProcess;
+
   /**
    * Indicates whether the phone account associated with this call supports specifying a call
    * subject.
@@ -255,6 +268,14 @@
             case TelephonyManagerCompat.EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC:
               notifyInternationalCallOnWifi();
               break;
+            case TelephonyManagerCompat.EVENT_MERGE_START:
+              LogUtil.i("DialerCall.onConnectionEvent", "merge start");
+              isMergeInProcess = true;
+              break;
+            case TelephonyManagerCompat.EVENT_MERGE_COMPLETE:
+              LogUtil.i("DialerCall.onConnectionEvent", "merge complete");
+              isMergeInProcess = false;
+              break;
             default:
               break;
           }
@@ -292,6 +313,8 @@
 
     mTimeAddedMs = System.currentTimeMillis();
     parseCallSpecificAppData();
+
+    updateEnrichedCallSession();
   }
 
   private static int translateState(int state) {
@@ -413,6 +436,12 @@
       for (DialerCallListener listener : mListeners) {
         listener.onDialerCallDisconnect();
       }
+      EnrichedCallComponent.get(mContext)
+          .getEnrichedCallManager()
+          .unregisterCapabilitiesListener(this);
+      EnrichedCallComponent.get(mContext)
+          .getEnrichedCallManager()
+          .unregisterCapabilitiesListener(this);
     } else {
       for (DialerCallListener listener : mListeners) {
         listener.onDialerCallUpdate();
@@ -952,6 +981,10 @@
     return isRemotelyHeld;
   }
 
+  public boolean isMergeInProcess() {
+    return isMergeInProcess;
+  }
+
   public boolean isIncoming() {
     return mLogState.isIncoming;
   }
@@ -960,6 +993,30 @@
     return mLatencyReport;
   }
 
+  public int getAnswerAndReleaseButtonDisplayedTimes() {
+    return answerAndReleaseButtonDisplayedTimes;
+  }
+
+  public void increaseAnswerAndReleaseButtonDisplayedTimes() {
+    answerAndReleaseButtonDisplayedTimes++;
+  }
+
+  public boolean getReleasedByAnsweringSecondCall() {
+    return releasedByAnsweringSecondCall;
+  }
+
+  public void setReleasedByAnsweringSecondCall(boolean releasedByAnsweringSecondCall) {
+    this.releasedByAnsweringSecondCall = releasedByAnsweringSecondCall;
+  }
+
+  public int getSecondCallWithoutAnswerAndReleasedButtonTimes() {
+    return secondCallWithoutAnswerAndReleasedButtonTimes;
+  }
+
+  public void increaseSecondCallWithoutAnswerAndReleasedButtonTimes() {
+    secondCallWithoutAnswerAndReleasedButtonTimes++;
+  }
+
   @Nullable
   public EnrichedCallCapabilities getEnrichedCallCapabilities() {
     return mEnrichedCallCapabilities;
@@ -1172,6 +1229,71 @@
     TelecomAdapter.getInstance().setAudioRoute(CallAudioState.ROUTE_SPEAKER);
   }
 
+  @Override
+  public void onCapabilitiesUpdated() {
+    if (getNumber() == null) {
+      return;
+    }
+    EnrichedCallCapabilities capabilities =
+        EnrichedCallComponent.get(mContext).getEnrichedCallManager().getCapabilities(getNumber());
+    if (capabilities != null) {
+      setEnrichedCallCapabilities(capabilities);
+      update();
+    }
+  }
+
+  @Override
+  public void onEnrichedCallStateChanged() {
+    updateEnrichedCallSession();
+  }
+
+  private void updateEnrichedCallSession() {
+    if (getNumber() == null) {
+      return;
+    }
+    if (getEnrichedCallSession() != null) {
+      // State changes to existing sessions are currently handled by the UI components (which have
+      // their own listeners). Someday instead we could remove those and just call update() here and
+      // have the usual onDialerCallUpdate update the UI.
+      dispatchOnEnrichedCallSessionUpdate();
+      return;
+    }
+
+    EnrichedCallManager manager = EnrichedCallComponent.get(mContext).getEnrichedCallManager();
+
+    Filter filter =
+        isIncoming()
+            ? manager.createIncomingCallComposerFilter()
+            : manager.createOutgoingCallComposerFilter();
+
+    Session session = manager.getSession(getUniqueCallId(), getNumber(), filter);
+    if (session == null) {
+      return;
+    }
+
+    session.setUniqueDialerCallId(getUniqueCallId());
+    setEnrichedCallSession(session);
+
+    LogUtil.i(
+        "DialerCall.updateEnrichedCallSession",
+        "setting session %d's dialer id to %s",
+        session.getSessionId(),
+        getUniqueCallId());
+
+    dispatchOnEnrichedCallSessionUpdate();
+  }
+
+  private void dispatchOnEnrichedCallSessionUpdate() {
+    for (DialerCallListener listener : mListeners) {
+      listener.onEnrichedCallSessionUpdate();
+    }
+  }
+
+  void onRemovedFromCallList() {
+    // Ensure we clean up when this call is removed.
+    mVideoTechManager.dispatchRemovedFromCallList();
+  }
+
   /**
    * Specifies whether a number is in the call history or not. {@link #CALL_HISTORY_STATUS_UNKNOWN}
    * means there is no result.
@@ -1372,6 +1494,7 @@
 
       String phoneNumber = call.getNumber();
       phoneNumber = phoneNumber != null ? phoneNumber : "";
+      phoneNumber = phoneNumber.replaceAll("[^+0-9]", "");
 
       // Insert order here determines the priority of that video tech option
       videoTechs = new ArrayList<>();
@@ -1390,7 +1513,10 @@
 
       videoTechs.add(
           new LightbringerTech(
-              LightbringerComponent.get(call.mContext).getLightbringer(), call, phoneNumber));
+              LightbringerComponent.get(call.mContext).getLightbringer(),
+              call,
+              call.mTelecomCall,
+              phoneNumber));
     }
 
     VideoTech getVideoTech() {
@@ -1414,6 +1540,12 @@
         videoTech.onCallStateChanged(context, newState);
       }
     }
+
+    void dispatchRemovedFromCallList() {
+      for (VideoTech videoTech : videoTechs) {
+        videoTech.onRemovedFromCallList();
+      }
+    }
   }
 
   /** Called when canned text responses have been loaded. */
diff --git a/java/com/android/incallui/call/DialerCallListener.java b/java/com/android/incallui/call/DialerCallListener.java
index ed321be..5d24a4d 100644
--- a/java/com/android/incallui/call/DialerCallListener.java
+++ b/java/com/android/incallui/call/DialerCallListener.java
@@ -36,4 +36,6 @@
   void onHandoverToWifiFailure();
 
   void onInternationalCallOnWifi();
+
+  void onEnrichedCallSessionUpdate();
 }
diff --git a/java/com/android/incallui/call/TelecomAdapter.java b/java/com/android/incallui/call/TelecomAdapter.java
index ebf4ecf..4fc9f81 100644
--- a/java/com/android/incallui/call/TelecomAdapter.java
+++ b/java/com/android/incallui/call/TelecomAdapter.java
@@ -20,12 +20,13 @@
 import android.content.Intent;
 import android.os.Looper;
 import android.support.annotation.MainThread;
+import android.support.annotation.VisibleForTesting;
 import android.telecom.InCallService;
 import com.android.dialer.common.LogUtil;
 import java.util.List;
 
 /** Wrapper around Telecom APIs. */
-public final class TelecomAdapter implements InCallServiceListener {
+public class TelecomAdapter implements InCallServiceListener {
 
   private static final String ADD_CALL_MODE_KEY = "add_call_mode";
 
@@ -45,6 +46,11 @@
     return sInstance;
   }
 
+  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+  public static void setInstanceForTesting(TelecomAdapter telecomAdapter) {
+    sInstance = telecomAdapter;
+  }
+
   @Override
   public void setInCallService(InCallService inCallService) {
     mInCallService = inCallService;
diff --git a/java/com/android/incallui/calllocation/impl/DownloadMapImageTask.java b/java/com/android/incallui/calllocation/impl/DownloadMapImageTask.java
index 801b0d3..b093a1b 100644
--- a/java/com/android/incallui/calllocation/impl/DownloadMapImageTask.java
+++ b/java/com/android/incallui/calllocation/impl/DownloadMapImageTask.java
@@ -21,6 +21,7 @@
 import android.net.TrafficStats;
 import android.os.AsyncTask;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.constants.TrafficStatsTags;
 import com.android.incallui.calllocation.impl.LocationPresenter.LocationUi;
 import java.io.InputStream;
 import java.lang.ref.WeakReference;
diff --git a/java/com/android/incallui/calllocation/impl/LocationHelper.java b/java/com/android/incallui/calllocation/impl/LocationHelper.java
index 3a14789..99a759b 100644
--- a/java/com/android/incallui/calllocation/impl/LocationHelper.java
+++ b/java/com/android/incallui/calllocation/impl/LocationHelper.java
@@ -24,6 +24,7 @@
 import android.os.Handler;
 import android.support.annotation.IntDef;
 import android.support.annotation.MainThread;
+import android.support.v4.os.UserManagerCompat;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.util.PermissionsUtil;
@@ -87,6 +88,12 @@
       LogUtil.i("LocationHelper.canGetLocation", "location service is disabled.");
       return false;
     }
+
+    if (!UserManagerCompat.isUserUnlocked(context)) {
+      LogUtil.i("LocationHelper.canGetLocation", "location unavailable in FBE mode.");
+      return false;
+    }
+
     return true;
   }
 
diff --git a/java/com/android/incallui/calllocation/impl/ReverseGeocodeTask.java b/java/com/android/incallui/calllocation/impl/ReverseGeocodeTask.java
index eb5957b..060ec0b 100644
--- a/java/com/android/incallui/calllocation/impl/ReverseGeocodeTask.java
+++ b/java/com/android/incallui/calllocation/impl/ReverseGeocodeTask.java
@@ -20,6 +20,7 @@
 import android.net.TrafficStats;
 import android.os.AsyncTask;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.constants.TrafficStatsTags;
 import com.android.incallui.calllocation.impl.LocationPresenter.LocationUi;
 import java.lang.ref.WeakReference;
 import org.json.JSONArray;
diff --git a/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java b/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java
deleted file mode 100644
index 02cc2e0..0000000
--- a/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright (C) 2017 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.incallui.calllocation.impl;
-
-/** Constants used for logging */
-public class TrafficStatsTags {
-
-  /**
-   * Must be greater than {@link com.android.contacts.common.util.TrafficStatsTags#TAG_MAX}, to
-   * respect the namespace of the tags in ContactsCommon.
-   */
-  public static final int DOWNLOAD_LOCATION_MAP_TAG = 0xd000;
-
-  public static final int REVERSE_GEOCODE_TAG = 0xd001;
-}
diff --git a/java/com/android/incallui/commontheme/res/anim/blinking.xml b/java/com/android/incallui/commontheme/res/anim/blinking.xml
deleted file mode 100644
index 4b921c6..0000000
--- a/java/com/android/incallui/commontheme/res/anim/blinking.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<set xmlns:android="http://schemas.android.com/apk/res/android">
-  <alpha
-    android:duration="800"
-    android:fromAlpha="0.26"
-    android:interpolator="@android:anim/linear_interpolator"
-    android:repeatCount="infinite"
-    android:repeatMode="reverse"
-    android:toAlpha="0.6"/>
-</set>
\ No newline at end of file
diff --git a/java/com/android/incallui/commontheme/res/drawable-hdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-hdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index 26f3fe0..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-hdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/drawable-mdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-mdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index 5b0a9d6..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-mdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/drawable-xhdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-xhdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index d595b19..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-xhdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/drawable-xxhdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-xxhdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index fb7cf16..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-xxhdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/drawable-xxxhdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-xxxhdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index 4bb58d9..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-xxxhdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/values-af/strings.xml b/java/com/android/incallui/commontheme/res/values-af/strings.xml
index 0dfdbc7..0721869 100644
--- a/java/com/android/incallui/commontheme/res/values-af/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-af/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Beëindig oproep"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video aan"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video af"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Verwissel video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Luidspreker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Klank"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-am/strings.xml b/java/com/android/incallui/commontheme/res/values-am/strings.xml
index 3155c39..9d748e3 100644
--- a/java/com/android/incallui/commontheme/res/values-am/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-am/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ጥሪ ጨርስ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ቪዲዮ በርቷል"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ቪዲዮ ጠፍቷል"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ቪዲዮ አገላብጥ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"የድምጽ ማጉያ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ድምፅ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ar/strings.xml b/java/com/android/incallui/commontheme/res/values-ar/strings.xml
index ecb3608..693bfc5 100644
--- a/java/com/android/incallui/commontheme/res/values-ar/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ar/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"إنهاء المكالمة"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"الفيديو قيد التشغيل"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"الفيديو ليس قيد التشغيل"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"تبديل الفيديو"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"مكبر الصوت"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"صوت"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-az/strings.xml b/java/com/android/incallui/commontheme/res/values-az/strings.xml
index d935a6c..a1d88ce 100644
--- a/java/com/android/incallui/commontheme/res/values-az/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-az/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Zəngi sonlandırın"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video aktivdir"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video deaktivdir"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Videonu dəyişdirin"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Dinamik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Səs"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/commontheme/res/values-b+sr+Latn/strings.xml
index 36430c4..05ae59c 100644
--- a/java/com/android/incallui/commontheme/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-b+sr+Latn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Završi poziv"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Uključi video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Isključi video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zameni video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Zvučnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-be/strings.xml b/java/com/android/incallui/commontheme/res/values-be/strings.xml
index 9609a63..e772e27 100644
--- a/java/com/android/incallui/commontheme/res/values-be/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-be/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Завяршыць выклік"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Відэа ўкл."</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Відэа выкл."</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Пераключыць відэа"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Вонк.дынамік"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Гук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-bg/strings.xml b/java/com/android/incallui/commontheme/res/values-bg/strings.xml
index 1a0f3e3..63364f8 100644
--- a/java/com/android/incallui/commontheme/res/values-bg/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-bg/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Край на обаждането"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Видеото е включено"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Видеото е изключено"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Размяна на видеото"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Високогов."</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-bn/strings.xml b/java/com/android/incallui/commontheme/res/values-bn/strings.xml
index ef2408f..9871ea4 100644
--- a/java/com/android/incallui/commontheme/res/values-bn/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-bn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"কল কেটে দিন"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ভিডিও চালু আছে"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ভিডিও বন্ধ আছে"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ভিডিও অদল বদল করুন"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"স্পিকার"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"শব্দ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-bs/strings.xml b/java/com/android/incallui/commontheme/res/values-bs/strings.xml
index bfaff98..76f991d 100644
--- a/java/com/android/incallui/commontheme/res/values-bs/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-bs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Prekini poziv"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Kamera je uključena"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Kamera je isključena"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zamijeni kameru"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Zvučnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ca/strings.xml b/java/com/android/incallui/commontheme/res/values-ca/strings.xml
index 1b6ed44..832027d 100644
--- a/java/com/android/incallui/commontheme/res/values-ca/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ca/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Finalitza la trucada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo activat"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desactivat"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Canvia de vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altaveu"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"So"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-cs/strings.xml b/java/com/android/incallui/commontheme/res/values-cs/strings.xml
index 1f10d85..7afdcba 100644
--- a/java/com/android/incallui/commontheme/res/values-cs/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-cs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Ukončit hovor"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Zapnuté video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vypnuté video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Přepnout video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Reproduktor"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-da/strings.xml b/java/com/android/incallui/commontheme/res/values-da/strings.xml
index 35d01e3..bd26e90 100644
--- a/java/com/android/incallui/commontheme/res/values-da/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-da/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Afslut opkald"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video til"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video fra"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Byt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Højttaler"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Lyd"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-de/strings.xml b/java/com/android/incallui/commontheme/res/values-de/strings.xml
index 57a95b7..3fd10f0 100644
--- a/java/com/android/incallui/commontheme/res/values-de/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-de/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Anruf beenden"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video an"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video aus"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Video wechseln"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Lautsprecher"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Tonausgabe"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-el/strings.xml b/java/com/android/incallui/commontheme/res/values-el/strings.xml
index 6bb9edc..71c0be9 100644
--- a/java/com/android/incallui/commontheme/res/values-el/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-el/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Τερματισμός"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Εικόνα βίντεο ενεργοποιημένη"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Εικόνα βίντεο απενεργοποιημένη"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Εναλλαγή βίντεο"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Ηχείο"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ήχος"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-en-rAU/strings.xml b/java/com/android/incallui/commontheme/res/values-en-rAU/strings.xml
index 8133185..4869c3f 100644
--- a/java/com/android/incallui/commontheme/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-en-rAU/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"End call"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video on"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video off"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Swap video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sound"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-en-rGB/strings.xml b/java/com/android/incallui/commontheme/res/values-en-rGB/strings.xml
index 8133185..4869c3f 100644
--- a/java/com/android/incallui/commontheme/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-en-rGB/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"End call"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video on"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video off"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Swap video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sound"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-en-rIN/strings.xml b/java/com/android/incallui/commontheme/res/values-en-rIN/strings.xml
index 8133185..4869c3f 100644
--- a/java/com/android/incallui/commontheme/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-en-rIN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"End call"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video on"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video off"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Swap video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sound"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-es-rUS/strings.xml b/java/com/android/incallui/commontheme/res/values-es-rUS/strings.xml
index 45f2e2f..a9596d9 100644
--- a/java/com/android/incallui/commontheme/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-es-rUS/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Finalizar llamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video activado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video desactivado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Intercambiar video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altavoz"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sonido"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-es/strings.xml b/java/com/android/incallui/commontheme/res/values-es/strings.xml
index 56c8b28..aa84c62 100644
--- a/java/com/android/incallui/commontheme/res/values-es/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-es/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Finalizar llamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo activado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desactivado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Cambiar de vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altavoz"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sonido"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-et/strings.xml b/java/com/android/incallui/commontheme/res/values-et/strings.xml
index 069f3b5..ae2e1ba 100644
--- a/java/com/android/incallui/commontheme/res/values-et/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-et/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Kõne lõpetamine"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video on sees"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video on väljas"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Video vahetamine"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Kõlar"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Heli"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-eu/strings.xml b/java/com/android/incallui/commontheme/res/values-eu/strings.xml
index bbcf5dc..0dd126c 100644
--- a/java/com/android/incallui/commontheme/res/values-eu/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-eu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Amaitu deia"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Aktibatuta dago bideoa"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Desaktibatuta dago bideoa"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Aldatu bideoa"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Bozgorailua"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Soinua"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-fa/strings.xml b/java/com/android/incallui/commontheme/res/values-fa/strings.xml
index ea967bb..1996ad4 100644
--- a/java/com/android/incallui/commontheme/res/values-fa/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-fa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"پایان تماس"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ویدئو فعال"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ویدئو غیرفعال"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"جابه‌جایی ویدئو"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"بلندگو"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"صدا"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-fi/strings.xml b/java/com/android/incallui/commontheme/res/values-fi/strings.xml
index f0da44f..5a57981 100644
--- a/java/com/android/incallui/commontheme/res/values-fi/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-fi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Päätä puhelu"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Videokuva käytössä"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Videokuva poissa käytöstä"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Vaihda videota"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Kaiutin"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ääni"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-fr-rCA/strings.xml b/java/com/android/incallui/commontheme/res/values-fr-rCA/strings.xml
index bf74dfb..a1db306 100644
--- a/java/com/android/incallui/commontheme/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-fr-rCA/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Mettre fin à l\'appel"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vidéo activée"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vidéo désactivée"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Permuter la vidéo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Haut-parleur"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Son"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-fr/strings.xml b/java/com/android/incallui/commontheme/res/values-fr/strings.xml
index fb674a4..e169a3d 100644
--- a/java/com/android/incallui/commontheme/res/values-fr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-fr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Mettre fin à l\'appel"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vidéo activée"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vidéo désactivée"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Permuter la vidéo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Haut-parleur"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Audio"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-gl/strings.xml b/java/com/android/incallui/commontheme/res/values-gl/strings.xml
index c7e2214..ba98a98 100644
--- a/java/com/android/incallui/commontheme/res/values-gl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-gl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Finalizar chamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo activado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desactivado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Alternar vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altofalante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Son"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-gu/strings.xml b/java/com/android/incallui/commontheme/res/values-gu/strings.xml
index 75584ea..194590c 100644
--- a/java/com/android/incallui/commontheme/res/values-gu/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-gu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"કૉલ સમાપ્ત કરો"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"વિડિઓ ચાલુ"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"વિડિઓ બંધ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"વિડિઓ સ્વેપ કરો"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"સ્પીકર"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ધ્વનિ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-hi/strings.xml b/java/com/android/incallui/commontheme/res/values-hi/strings.xml
index f7ea68a..207bbf2 100644
--- a/java/com/android/incallui/commontheme/res/values-hi/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-hi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"कॉल समाप्त करें"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"वीडियो चालू"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"वीडियो बंद"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"वीडियो स्वैप करें"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"स्‍पीकर"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ध्वनि"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-hr/strings.xml b/java/com/android/incallui/commontheme/res/values-hr/strings.xml
index c30f397..c58ab85 100644
--- a/java/com/android/incallui/commontheme/res/values-hr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-hr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Prekid poziva"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Videopoziv uključen"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Videopoziv isključen"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zamijeni videopoziv"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Zvučnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-hu/strings.xml b/java/com/android/incallui/commontheme/res/values-hu/strings.xml
index 9ee2300..ba7fec7 100644
--- a/java/com/android/incallui/commontheme/res/values-hu/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-hu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Hívás befejezése"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Videó be"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Videó ki"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Videó cseréje"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Hangszóró"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Hang"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-hy/strings.xml b/java/com/android/incallui/commontheme/res/values-hy/strings.xml
index 96a0cab..81262e4 100644
--- a/java/com/android/incallui/commontheme/res/values-hy/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-hy/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Ավարտել զանգը"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Տեսախցիկը միացած է"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Տեսախցիկն անջատած է"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Փոխարկել խցիկը"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Բարձրախոս"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ձայն"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-in/strings.xml b/java/com/android/incallui/commontheme/res/values-in/strings.xml
index 4536f5d..fb3fc56 100644
--- a/java/com/android/incallui/commontheme/res/values-in/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-in/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Akhiri panggilan"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video aktif"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video nonaktif"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Tukar Video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Suara"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-is/strings.xml b/java/com/android/incallui/commontheme/res/values-is/strings.xml
index 357f90e..438b143 100644
--- a/java/com/android/incallui/commontheme/res/values-is/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-is/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Ljúka símtali"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Kveikja á mynd"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Slökkva á mynd"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Skipta um mynd"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Hátalari"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Hljóð"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-it/strings.xml b/java/com/android/incallui/commontheme/res/values-it/strings.xml
index a63d314..b7c1d3f 100644
--- a/java/com/android/incallui/commontheme/res/values-it/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-it/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Termina chiamata"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video attivo"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video non attivo"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Scambia video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altoparlante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Suono"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-iw/strings.xml b/java/com/android/incallui/commontheme/res/values-iw/strings.xml
index 1e2b7f2..cbd6d75 100644
--- a/java/com/android/incallui/commontheme/res/values-iw/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-iw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"סיים שיחה"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"הווידאו מופעל"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"הווידאו מושבת"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"החלף וידאו"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"רמקול"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"קול"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ja/strings.xml b/java/com/android/incallui/commontheme/res/values-ja/strings.xml
index 658b513..4ea9495 100644
--- a/java/com/android/incallui/commontheme/res/values-ja/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ja/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"通話を終了"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ビデオが ON になっています"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ビデオが OFF になっています"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ビデオを切り替える"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"スピーカー"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"音声"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ka/strings.xml b/java/com/android/incallui/commontheme/res/values-ka/strings.xml
index ffba7ce..3163476 100644
--- a/java/com/android/incallui/commontheme/res/values-ka/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ka/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ზარის დასრულება"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ვიდეო ჩართულია"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ვიდეო გამორთულია"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ვიდეოს შენაცვლება"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"სპიკერი"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ხმა"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-kk/strings.xml b/java/com/android/incallui/commontheme/res/values-kk/strings.xml
index ace83ec..23b3a2a 100644
--- a/java/com/android/incallui/commontheme/res/values-kk/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-kk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Қоңырауды аяқтау"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Бейне қосулы"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Бейне өшірулі"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Бейнені ауыстыру"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Динамик"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Дыбыс"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-km/strings.xml b/java/com/android/incallui/commontheme/res/values-km/strings.xml
index e28f120..55cfa0a 100644
--- a/java/com/android/incallui/commontheme/res/values-km/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-km/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"បញ្ចប់​ការ​ហៅ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"បើក​វីដេអូ​"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"បិទ​វីដេអូ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ប្ដូរ​វីដេអូ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ឧបករណ៍​បំពង​សំឡេង"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"សំឡេង"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-kn/strings.xml b/java/com/android/incallui/commontheme/res/values-kn/strings.xml
index 59186e0..685ef64 100644
--- a/java/com/android/incallui/commontheme/res/values-kn/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-kn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ಕರೆ ಅಂತ್ಯಗೊಳಿಸಿ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ವೀಡಿಯೊ ಆನ್"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ವೀಡಿಯೊ ಆಫ್"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ವೀಡಿಯೊ ಬದಲಾಯಿಸಿ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ಸ್ಪೀಕರ್‌"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ಶಬ್ದ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ko/strings.xml b/java/com/android/incallui/commontheme/res/values-ko/strings.xml
index 0a0e3c9..088746d 100644
--- a/java/com/android/incallui/commontheme/res/values-ko/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ko/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"통화 종료"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"동영상 켜짐"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"동영상 꺼짐"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"동영상 전환"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"스피커"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"소리"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ky/strings.xml b/java/com/android/incallui/commontheme/res/values-ky/strings.xml
index ac697e4..5dd4d0c 100644
--- a/java/com/android/incallui/commontheme/res/values-ky/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ky/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Чалууну бүтүрүү"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Видео күйүк"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Видео өчүк"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Видеону иштетүү/өчүрүү"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Катуу сүйлөткүч"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Добуш"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-lo/strings.xml b/java/com/android/incallui/commontheme/res/values-lo/strings.xml
index da2050a..2f0b94b 100644
--- a/java/com/android/incallui/commontheme/res/values-lo/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-lo/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ວາງສາຍ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ວິດີໂອເປີດ"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ວິດີໂອປິດ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ສະຫຼັບວິດີໂອ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ລຳໂພງ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ສຽງ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-lt/strings.xml b/java/com/android/incallui/commontheme/res/values-lt/strings.xml
index bda53d6..d0a5e0d 100644
--- a/java/com/android/incallui/commontheme/res/values-lt/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-lt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Baigti skambutį"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vaizdas įjungtas"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vaizdas išjungtas"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Sukeisti vaizdą"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Garsiakalbis"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Garsas"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-lv/strings.xml b/java/com/android/incallui/commontheme/res/values-lv/strings.xml
index beaf35c..443ac5e 100644
--- a/java/com/android/incallui/commontheme/res/values-lv/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-lv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Beigt zvanu"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video ieslēgts"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video izslēgts"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Mainīt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Skaļrunis"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Skaņa"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-mk/strings.xml b/java/com/android/incallui/commontheme/res/values-mk/strings.xml
index 5b4f6d0..d9a339e 100644
--- a/java/com/android/incallui/commontheme/res/values-mk/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-mk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Завршете го повикот"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Видеото е вклучено"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Видеото е исклучено"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Заменете го видеото"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Звучник"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ml/strings.xml b/java/com/android/incallui/commontheme/res/values-ml/strings.xml
index 0242667..0f2d889 100644
--- a/java/com/android/incallui/commontheme/res/values-ml/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ml/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"കോള്‍ അവസാനിപ്പിക്കൂ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"വീഡിയോ ഓണാണ്"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"വീഡിയോ ഓഫാണ്"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"വീഡിയോ സ്വാപ്പുചെയ്യുക"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"സ്പീക്കർ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ശബ്‌ദം"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-mn/strings.xml b/java/com/android/incallui/commontheme/res/values-mn/strings.xml
index cd286ed..3665fcf 100644
--- a/java/com/android/incallui/commontheme/res/values-mn/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-mn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Дуудлагыг таслах"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Видео идэвхтэй"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Видео идэвхгүй"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Видеог солих"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Чанга яригч"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Дуу"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-mr/strings.xml b/java/com/android/incallui/commontheme/res/values-mr/strings.xml
index 2c626ed..f749809 100644
--- a/java/com/android/incallui/commontheme/res/values-mr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-mr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"कॉल समाप्त करा"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"व्हिडिओ चालू"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"व्हिडिओ बंद"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"व्हिडिओ बदला"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"स्पीकर"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ध्वनी"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ms/strings.xml b/java/com/android/incallui/commontheme/res/values-ms/strings.xml
index f6c358d..fb38fa9d 100644
--- a/java/com/android/incallui/commontheme/res/values-ms/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ms/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Tamatkan panggilan"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video dihidupkan"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video dimatikan"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Silih video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Pmbsr suara"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Bunyi"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-my/strings.xml b/java/com/android/incallui/commontheme/res/values-my/strings.xml
index 6b6614c..5b396be 100644
--- a/java/com/android/incallui/commontheme/res/values-my/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-my/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ခေါ်ဆိုမှုအပြီးသတ်ရန်"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ဗီဒီယိုဖွင့်ထားသည်"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ဗီဒီယိုပိတ်ထားသည်"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ဗီဒီယိုဖလှယ်ရန်"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"စပီကာ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"အသံ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-nb/strings.xml b/java/com/android/incallui/commontheme/res/values-nb/strings.xml
index 4974411..506b15e 100644
--- a/java/com/android/incallui/commontheme/res/values-nb/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-nb/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Avslutt samtalen"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video på"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video av"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Bytt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Høyttaler"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Lyd"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ne/strings.xml b/java/com/android/incallui/commontheme/res/values-ne/strings.xml
index 5cd91b3..fa9d87f 100644
--- a/java/com/android/incallui/commontheme/res/values-ne/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ne/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"कल अन्त्य गर्नुहोस्"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"सक्रिय भिडियो"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"निष्क्रिय भिडियो"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"भिडियो साट्नुहोस्"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"स्पिकर"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"आवाज"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-nl/strings.xml b/java/com/android/incallui/commontheme/res/values-nl/strings.xml
index d33d600..192c47b 100644
--- a/java/com/android/incallui/commontheme/res/values-nl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-nl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Oproep beëindigen"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video aan"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video uit"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Video wisselen"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Luidspreker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Geluid"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-no/strings.xml b/java/com/android/incallui/commontheme/res/values-no/strings.xml
index 4974411..506b15e 100644
--- a/java/com/android/incallui/commontheme/res/values-no/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-no/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Avslutt samtalen"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video på"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video av"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Bytt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Høyttaler"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Lyd"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pa/strings.xml b/java/com/android/incallui/commontheme/res/values-pa/strings.xml
index 7e59e61..77ceb25 100644
--- a/java/com/android/incallui/commontheme/res/values-pa/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ਕਾਲ ਸਮਾਪਤ ਕਰੋ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ਵੀਡੀਓ ਚਾਲੂ"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ਵੀਡੀਓ ਬੰਦ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ਵੀਡੀਓ ਦੀ ਅਦਲਾ ਬਦਲੀ ਕਰੋ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ਸਪੀਕਰ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ਧੁਨੀ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pl/strings.xml b/java/com/android/incallui/commontheme/res/values-pl/strings.xml
index 4ab1d24..d9b037e 100644
--- a/java/com/android/incallui/commontheme/res/values-pl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Zakończ połączenie"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Wideo włączone"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Wideo wyłączone"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Przełącz wideo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Głośnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Dźwięk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pt-rBR/strings.xml b/java/com/android/incallui/commontheme/res/values-pt-rBR/strings.xml
index 67f3674..2c1834e 100644
--- a/java/com/android/incallui/commontheme/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pt-rBR/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Encerrar chamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo ativado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desativado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Trocar vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Alto-falante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Som"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pt-rPT/strings.xml b/java/com/android/incallui/commontheme/res/values-pt-rPT/strings.xml
index 27c5649..f0c14d0 100644
--- a/java/com/android/incallui/commontheme/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pt-rPT/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Terminar chamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo ativado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desativado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Alternar vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altifalante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Som"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pt/strings.xml b/java/com/android/incallui/commontheme/res/values-pt/strings.xml
index 67f3674..2c1834e 100644
--- a/java/com/android/incallui/commontheme/res/values-pt/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Encerrar chamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo ativado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desativado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Trocar vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Alto-falante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Som"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ro/strings.xml b/java/com/android/incallui/commontheme/res/values-ro/strings.xml
index b7fec9a..f7c8f72 100644
--- a/java/com/android/incallui/commontheme/res/values-ro/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ro/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Încheiați apelul"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Imaginea video este activată"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Imaginea video este dezactivată"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Schimbați imaginea video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Difuzor"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sunet"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ru/strings.xml b/java/com/android/incallui/commontheme/res/values-ru/strings.xml
index 5d1807f..1853ad2 100644
--- a/java/com/android/incallui/commontheme/res/values-ru/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ru/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Завершить вызов"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Камера включена"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Камера выключена"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Включить/выключить камеру"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Динамик"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-si/strings.xml b/java/com/android/incallui/commontheme/res/values-si/strings.xml
index 0a0f35c..ae13cc4 100644
--- a/java/com/android/incallui/commontheme/res/values-si/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-si/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ඇමතුම අවසන් කරන්න"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"වීඩියෝව ක්‍රියාත්මකයි"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"වීඩියෝව ක්‍රියාවිරහිතයි"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"වීඩියෝව මාරු කරන්න"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ස්පීකරය"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"හඬ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sk/strings.xml b/java/com/android/incallui/commontheme/res/values-sk/strings.xml
index 97eabeb..cd9aa99 100644
--- a/java/com/android/incallui/commontheme/res/values-sk/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Ukončiť hovor"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video je zapnuté"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video je vypnuté"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zameniť video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Reproduktor"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sl/strings.xml b/java/com/android/incallui/commontheme/res/values-sl/strings.xml
index 46cf2e8..0aa6e69 100644
--- a/java/com/android/incallui/commontheme/res/values-sl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Končaj klic"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vklopi video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Izklopi video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zamenjaj video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Zvočnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvok"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sq/strings.xml b/java/com/android/incallui/commontheme/res/values-sq/strings.xml
index 17ec081..b9c97d1 100644
--- a/java/com/android/incallui/commontheme/res/values-sq/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sq/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Mbylle telefonatën"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Videoja aktive"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Videoja joaktive"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Shkëmbe video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altoparlanti"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Tingulli"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sr/strings.xml b/java/com/android/incallui/commontheme/res/values-sr/strings.xml
index 2928bc9..67586b7 100644
--- a/java/com/android/incallui/commontheme/res/values-sr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Заврши позив"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Укључи видео"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Искључи видео"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Замени видео"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Звучник"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sv/strings.xml b/java/com/android/incallui/commontheme/res/values-sv/strings.xml
index 17b5d37..957a2f8 100644
--- a/java/com/android/incallui/commontheme/res/values-sv/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Avsluta samtal"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video på"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video av"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Byt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Högtalare"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ljud"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sw/strings.xml b/java/com/android/incallui/commontheme/res/values-sw/strings.xml
index 165d576..8752c2d 100644
--- a/java/com/android/incallui/commontheme/res/values-sw/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Kata simu"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Washa video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Zima video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Badilisha video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Spika"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sauti"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ta/strings.xml b/java/com/android/incallui/commontheme/res/values-ta/strings.xml
index fa2dfb2..69258d2 100644
--- a/java/com/android/incallui/commontheme/res/values-ta/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ta/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"அழைப்பைத் துண்டிக்கும்"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"வீடியோ இயக்கப்பட்டது"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"வீடியோ முடக்கப்பட்டது"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"வீடியோவிற்கு மாற்றும்"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ஸ்பீக்கர்"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ஒலி"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-te/strings.xml b/java/com/android/incallui/commontheme/res/values-te/strings.xml
index 3ce431c..9454e15 100644
--- a/java/com/android/incallui/commontheme/res/values-te/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-te/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"కాల్‌ను ముగిస్తుంది"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"వీడియో ఆన్‌లో ఉంది"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"వీడియో ఆఫ్‌లో ఉంది"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"వీడియోను మారుస్తుంది"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"స్పీకర్"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ధ్వని"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-th/strings.xml b/java/com/android/incallui/commontheme/res/values-th/strings.xml
index 1fa145c..8235310 100644
--- a/java/com/android/incallui/commontheme/res/values-th/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-th/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"วางสาย"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"เปิดวิดีโอ"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ปิดวิดีโอ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"สลับวิดีโอ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ลำโพง"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"เสียง"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-tl/strings.xml b/java/com/android/incallui/commontheme/res/values-tl/strings.xml
index a53e11c..f368e3a 100644
--- a/java/com/android/incallui/commontheme/res/values-tl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-tl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Tapusin ang tawag"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Naka-on ang video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Naka-off ang video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Pagpalitin ang video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Tunog"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-tr/strings.xml b/java/com/android/incallui/commontheme/res/values-tr/strings.xml
index 0955273..cbf5502 100644
--- a/java/com/android/incallui/commontheme/res/values-tr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-tr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Çağrıyı sonlandırın"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video açık"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video kapalı"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Videoyu değiştirin"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Hoparlör"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ses"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-uk/strings.xml b/java/com/android/incallui/commontheme/res/values-uk/strings.xml
index e17e781..2bcd04c 100644
--- a/java/com/android/incallui/commontheme/res/values-uk/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-uk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Завершити виклик"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Відео ввімкнено"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Відео вимкнено"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Поміняти відео"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Динамік"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ur/strings.xml b/java/com/android/incallui/commontheme/res/values-ur/strings.xml
index 5082e9d..bd8cf68 100644
--- a/java/com/android/incallui/commontheme/res/values-ur/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ur/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"کال ختم کریں"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ویڈیو آن ہے"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ویڈیو آف ہے"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ویڈیو کا تبادلہ کریں"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"اسپیکر"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"آواز"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-uz/strings.xml b/java/com/android/incallui/commontheme/res/values-uz/strings.xml
index d349d3f..9bc995d 100644
--- a/java/com/android/incallui/commontheme/res/values-uz/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-uz/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Qo‘ng‘iroqni tugatish"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video yoniq"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video o‘chiq"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Videoni yoqish/ochirish"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Karnay"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Tovush"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-vi/strings.xml b/java/com/android/incallui/commontheme/res/values-vi/strings.xml
index 3bd39ae..caf8f34 100644
--- a/java/com/android/incallui/commontheme/res/values-vi/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-vi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Kết thúc cuộc gọi"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Bật video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Tắt video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Hoán đổi video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Loa"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Âm báo"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-zh-rCN/strings.xml b/java/com/android/incallui/commontheme/res/values-zh-rCN/strings.xml
index 0f57120..4d8bda6 100644
--- a/java/com/android/incallui/commontheme/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-zh-rCN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"结束通话"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"视频已开启"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"视频已关闭"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"切换视频"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"免提"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"音频路径"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-zh-rHK/strings.xml b/java/com/android/incallui/commontheme/res/values-zh-rHK/strings.xml
index a3809eb..175b3e6 100644
--- a/java/com/android/incallui/commontheme/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-zh-rHK/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"結束通話"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"視像已開啟"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"視像已關閉"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"切換視像"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"喇叭"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"音效"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-zh-rTW/strings.xml b/java/com/android/incallui/commontheme/res/values-zh-rTW/strings.xml
index 983dddd..dee1b9c 100644
--- a/java/com/android/incallui/commontheme/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-zh-rTW/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"結束通話"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"開啟視訊畫面"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"關閉視訊畫面"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"切換視訊畫面"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"擴音"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"音訊"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-zu/strings.xml b/java/com/android/incallui/commontheme/res/values-zu/strings.xml
index 2dd2c89..9535962 100644
--- a/java/com/android/incallui/commontheme/res/values-zu/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-zu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Qeda ikholi"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Ividiyo ivuliwe"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Ividiyo ivaliwe"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Shintsha ividiyo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Isipikha"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Umsindo"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values/strings.xml b/java/com/android/incallui/commontheme/res/values/strings.xml
index 6f346a3..94a8c90 100644
--- a/java/com/android/incallui/commontheme/res/values/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values/strings.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
 <resources>
 
   <string name="incall_content_description_end_call">End call</string>
@@ -32,4 +47,11 @@
 
   <string name="incall_content_description_swap_video">Swap video</string>
 
+  <!-- Button shown during a phone to route audio from earpiece to speaker phone.
+     [CHAR LIMIT=12] -->
+  <string name="incall_label_speaker">Speaker</string>
+  <!-- Button shown during a phone to switch the audio route.
+     [CHAR LIMIT=12] -->
+  <string name="incall_label_audio">Sound</string>
+
 </resources>
diff --git a/java/com/android/incallui/contactgrid/BottomRow.java b/java/com/android/incallui/contactgrid/BottomRow.java
index 228c786..76e0289 100644
--- a/java/com/android/incallui/contactgrid/BottomRow.java
+++ b/java/com/android/incallui/contactgrid/BottomRow.java
@@ -22,7 +22,6 @@
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
-import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.incallui.call.DialerCall.State;
 import com.android.incallui.incall.protocol.PrimaryCallState;
 import com.android.incallui.incall.protocol.PrimaryInfo;
@@ -125,7 +124,7 @@
     if (primaryInfo.location != null) {
       return primaryInfo.location;
     }
-    if (!TextUtils.isEmpty(primaryInfo.number)) {
+    if (!primaryInfo.nameIsNumber && !TextUtils.isEmpty(primaryInfo.number)) {
       CharSequence spannedNumber = spanDisplayNumber(primaryInfo.number);
       if (primaryInfo.label == null) {
         return spannedNumber;
@@ -137,7 +136,7 @@
   }
 
   private static CharSequence spanDisplayNumber(String displayNumber) {
-    return PhoneNumberUtilsCompat.createTtsSpannable(
+    return PhoneNumberUtils.createTtsSpannable(
         BidiFormatter.getInstance().unicodeWrap(displayNumber, TextDirectionHeuristics.LTR));
   }
 
diff --git a/java/com/android/incallui/contactgrid/ContactGridManager.java b/java/com/android/incallui/contactgrid/ContactGridManager.java
index 1322d58..502cc52 100644
--- a/java/com/android/incallui/contactgrid/ContactGridManager.java
+++ b/java/com/android/incallui/contactgrid/ContactGridManager.java
@@ -20,10 +20,8 @@
 import android.graphics.drawable.Animatable;
 import android.graphics.drawable.Drawable;
 import android.os.SystemClock;
-import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.v4.view.ViewCompat;
-import android.telecom.TelecomManager;
 import android.text.TextUtils;
 import android.view.View;
 import android.view.accessibility.AccessibilityEvent;
@@ -78,6 +76,7 @@
   private boolean hideAvatar;
   private boolean showAnonymousAvatar;
   private boolean middleRowVisible = true;
+  private boolean isTimerStarted;
 
   private PrimaryInfo primaryInfo = PrimaryInfo.createEmptyPrimaryInfo();
   private PrimaryCallState primaryCallState = PrimaryCallState.createEmptyPrimaryCallState();
@@ -105,6 +104,7 @@
 
     contactGridLayout = (View) contactNameTextView.getParent();
     letterTile = new LetterTileDrawable(context.getResources());
+    isTimerStarted = false;
   }
 
   public void show() {
@@ -213,7 +213,7 @@
    * </ul>
    */
   private void updateTopRow() {
-    TopRow.Info info = TopRow.getInfo(context, primaryCallState);
+    TopRow.Info info = TopRow.getInfo(context, primaryCallState, primaryInfo);
     if (TextUtils.isEmpty(info.label)) {
       // Use INVISIBLE here to prevent the rows below this one from moving up and down.
       statusTextView.setVisibility(View.INVISIBLE);
@@ -233,26 +233,6 @@
   }
 
   /**
-   * Returns the appropriate LetterTileDrawable.TYPE_ based on a given call state.
-   *
-   * <p>If no special state is detected, yields TYPE_DEFAULT.
-   */
-  private static @LetterTileDrawable.ContactType int getContactTypeForPrimaryCallState(
-      @NonNull PrimaryCallState callState, @NonNull PrimaryInfo primaryInfo) {
-    if (callState.isVoiceMailNumber) {
-      return LetterTileDrawable.TYPE_VOICEMAIL;
-    } else if (callState.isBusinessNumber) {
-      return LetterTileDrawable.TYPE_BUSINESS;
-    } else if (primaryInfo.numberPresentation == TelecomManager.PRESENTATION_RESTRICTED) {
-      return LetterTileDrawable.TYPE_GENERIC_AVATAR;
-    } else if (callState.isConference) {
-      return LetterTileDrawable.TYPE_CONFERENCE;
-    } else {
-      return LetterTileDrawable.TYPE_DEFAULT;
-    }
-  }
-
-  /**
    * Updates row 1. For example:
    *
    * <ul>
@@ -295,8 +275,12 @@
               primaryInfo.name,
               primaryInfo.contactInfoLookupKey,
               LetterTileDrawable.SHAPE_CIRCLE,
-              getContactTypeForPrimaryCallState(primaryCallState, primaryInfo));
-
+              LetterTileDrawable.getContactTypeFromPrimitives(
+                  primaryCallState.isVoiceMailNumber,
+                  primaryInfo.isSpam,
+                  primaryCallState.isBusinessNumber,
+                  primaryInfo.numberPresentation,
+                  primaryCallState.isConference));
           // By invalidating the avatarImageView we force a redraw of the letter tile.
           // This is required to properly display the updated letter tile iconography based on the
           // contact type, because the background drawable reference cached in the view, and the
@@ -363,15 +347,19 @@
     }
 
     if (info.isTimerVisible) {
-      bottomTextSwitcher.setDisplayedChild(1);
-      bottomTimerView.setBase(
-          primaryCallState.connectTimeMillis
-              - System.currentTimeMillis()
-              + SystemClock.elapsedRealtime());
-      bottomTimerView.start();
+      if (!isTimerStarted) {
+        bottomTextSwitcher.setDisplayedChild(1);
+        bottomTimerView.setBase(
+            primaryCallState.connectTimeMillis
+                - System.currentTimeMillis()
+                + SystemClock.elapsedRealtime());
+        bottomTimerView.start();
+        isTimerStarted = true;
+      }
     } else {
       bottomTextSwitcher.setDisplayedChild(0);
       bottomTimerView.stop();
+      isTimerStarted = false;
     }
   }
 }
diff --git a/java/com/android/incallui/contactgrid/TopRow.java b/java/com/android/incallui/contactgrid/TopRow.java
index 8c3d6b0..ab00357 100644
--- a/java/com/android/incallui/contactgrid/TopRow.java
+++ b/java/com/android/incallui/contactgrid/TopRow.java
@@ -19,10 +19,14 @@
 import android.content.Context;
 import android.graphics.drawable.Drawable;
 import android.support.annotation.Nullable;
+import android.telephony.PhoneNumberUtils;
+import android.text.BidiFormatter;
+import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
 import com.android.dialer.common.Assert;
 import com.android.incallui.call.DialerCall.State;
 import com.android.incallui.incall.protocol.PrimaryCallState;
+import com.android.incallui.incall.protocol.PrimaryInfo;
 import com.android.incallui.videotech.utils.SessionModificationState;
 import com.android.incallui.videotech.utils.VideoUtils;
 
@@ -55,7 +59,7 @@
 
   private TopRow() {}
 
-  public static Info getInfo(Context context, PrimaryCallState state) {
+  public static Info getInfo(Context context, PrimaryCallState state, PrimaryInfo primaryInfo) {
     CharSequence label = null;
     Drawable icon = state.connectionIcon;
     boolean labelIsSingleLine = true;
@@ -73,6 +77,11 @@
         labelIsSingleLine = false;
       } else {
         label = getLabelForIncoming(context, state);
+        // Show phone number if it's not displayed in name (center row) or location field (bottom
+        // row).
+        if (shouldShowNumber(primaryInfo)) {
+          label = TextUtils.concat(label, " ", spanDisplayNumber(primaryInfo.number));
+        }
       }
     } else if (VideoUtils.hasSentVideoUpgradeRequest(state.sessionModificationState)
         || VideoUtils.hasReceivedVideoUpgradeRequest(state.sessionModificationState)) {
@@ -85,6 +94,8 @@
       label = getLabelForDialing(context, state);
     } else if (state.state == State.ACTIVE && state.isRemotelyHeld) {
       label = context.getString(R.string.incall_remotely_held);
+    } else if (state.state == State.ACTIVE && shouldShowNumber(primaryInfo)) {
+      label = spanDisplayNumber(primaryInfo.number);
     } else {
       // Video calling...
       // [Wi-Fi icon] Starbucks Wi-Fi
@@ -94,9 +105,27 @@
     return new Info(label, icon, labelIsSingleLine);
   }
 
+  private static CharSequence spanDisplayNumber(String displayNumber) {
+    return PhoneNumberUtils.createTtsSpannable(
+        BidiFormatter.getInstance().unicodeWrap(displayNumber, TextDirectionHeuristics.LTR));
+  }
+
+  private static boolean shouldShowNumber(PrimaryInfo primaryInfo) {
+    if (primaryInfo.nameIsNumber) {
+      return false;
+    }
+    if (primaryInfo.location == null) {
+      return false;
+    }
+    if (TextUtils.isEmpty(primaryInfo.number)) {
+      return false;
+    }
+    return true;
+  }
+
   private static CharSequence getLabelForIncoming(Context context, PrimaryCallState state) {
     if (state.isVideoCall) {
-      return getLabelForIncomingVideo(context, state.isWifi);
+      return getLabelForIncomingVideo(context, state.sessionModificationState, state.isWifi);
     } else if (state.isWifi && !TextUtils.isEmpty(state.connectionLabel)) {
       return state.connectionLabel;
     } else if (isAccount(state)) {
@@ -108,11 +137,20 @@
     }
   }
 
-  private static CharSequence getLabelForIncomingVideo(Context context, boolean isWifi) {
-    if (isWifi) {
-      return context.getString(R.string.contact_grid_incoming_wifi_video_call);
+  private static CharSequence getLabelForIncomingVideo(
+      Context context, @SessionModificationState int sessionModificationState, boolean isWifi) {
+    if (sessionModificationState == SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST) {
+      if (isWifi) {
+        return context.getString(R.string.contact_grid_incoming_wifi_video_request);
+      } else {
+        return context.getString(R.string.contact_grid_incoming_video_request);
+      }
     } else {
-      return context.getString(R.string.contact_grid_incoming_video_call);
+      if (isWifi) {
+        return context.getString(R.string.contact_grid_incoming_wifi_video_call);
+      } else {
+        return context.getString(R.string.contact_grid_incoming_video_call);
+      }
     }
   }
 
@@ -154,7 +192,7 @@
       case SessionModificationState.UPGRADE_TO_VIDEO_REQUEST_TIMED_OUT:
         return context.getString(R.string.incall_video_call_request_timed_out);
       case SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST:
-        return getLabelForIncomingVideo(context, state.isWifi);
+        return getLabelForIncomingVideo(context, state.sessionModificationState, state.isWifi);
       case SessionModificationState.NO_REQUEST:
       default:
         Assert.fail();
diff --git a/java/com/android/incallui/contactgrid/res/values-af/strings.xml b/java/com/android/incallui/contactgrid/res/values-af/strings.xml
index 95ec39b..75a8bf3 100644
--- a/java/com/android/incallui/contactgrid/res/values-af/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-af/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Bel via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Hou aan"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video-oproep vanaf"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-video-oproep vanaf"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Versoekvorm vir video-opgradering"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Versoekvorm vir Wi-Fi-video-opgradering"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Oproep vanaf"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Werkoproep vanaf"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Inkomend via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-am/strings.xml b/java/com/android/incallui/contactgrid/res/values-am/strings.xml
index d8060c9..3d11f73 100644
--- a/java/com/android/incallui/contactgrid/res/values-am/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-am/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"በ<xliff:g id="PROVIDER_NAME">%s</xliff:g> በኩል በመደወል ላይ"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ያዝና ቆይ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ቪዲዮ ጥሪ ከ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi ቪዲዮ ጥሪ ከ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"የቪዲዮ ማሻሻል ጥያቄ ከ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"የWi-Fi ቪዲዮ ማሻሻል ጥያቄ ከ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ጥሪ ከ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"የሥራ ጥሪ ከ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"በ<xliff:g id="PROVIDER_NAME">%s</xliff:g> በኩል የገባ"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ar/strings.xml b/java/com/android/incallui/contactgrid/res/values-ar/strings.xml
index 30fd32c..cddd1ec 100644
--- a/java/com/android/incallui/contactgrid/res/values-ar/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ar/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"الاتصال عبر <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"معلقة"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"مكالمة فيديو من"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"‏مكالمة فيديو عبر Wi-Fi من"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"طلب ترقية الفيديو من"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"‏طلب ترقية فيديو Wi-Fi من"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"اتصال من"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"مكالمة عمل من"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"واردة عبر <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-az/strings.xml b/java/com/android/incallui/contactgrid/res/values-az/strings.xml
index 4fe79ee..8c1993d 100644
--- a/java/com/android/incallui/contactgrid/res/values-az/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-az/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> vasitəsilə zəng edilir"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Gözləmədə"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video zəng edən"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video zəng edən"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video təkmilləşdirilməsi üçün təklif"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video təkmilləşdirilməsi üçün təklif"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Zəng edən"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"İş zəngi edən"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> vasitəsilə gələn"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/contactgrid/res/values-b+sr+Latn/strings.xml
index f1a938e..caa61bd 100644
--- a/java/com/android/incallui/contactgrid/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-b+sr+Latn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Pozivamo preko <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Na čekanju"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video poziv od"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video poziv od"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Zahtev za prelazak na video poziv od"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Zahtev za prelazak na video poziv preko Wi-Fi-ja od"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Poziv od"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Poslovni poziv od"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Dolazni poziv preko <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-be/strings.xml b/java/com/android/incallui/contactgrid/res/values-be/strings.xml
index aec3a31..51f7ea9 100644
--- a/java/com/android/incallui/contactgrid/res/values-be/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-be/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Званкі праз <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"На ўтрыманні"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Відэавыклік ад"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Відэавыклік праз Wi-Fi ад"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Запыт на абнаўленне да відэавыкліка ад"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Запыт на абнаўленне да відэавыкліка па Wi-Fi ад"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Выклік ад"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Рабочы выклік ад"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Уваходны выклік праз <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-bg/strings.xml b/java/com/android/incallui/contactgrid/res/values-bg/strings.xml
index f162e4c..4e313d4 100644
--- a/java/com/android/incallui/contactgrid/res/values-bg/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-bg/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Обаждане чрез <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Задържано"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видеообаждане от"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Видеообаждане по Wi-Fi от"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Заявка за преминаване към видеообаждане от"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Заявка за преминаване към видеообаждане през Wi-Fi от"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Обаждане от"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Служебно обаждане от"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Входящо обаждане чрез <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-bn/strings.xml b/java/com/android/incallui/contactgrid/res/values-bn/strings.xml
index 6d3a50c..8fce2e4 100644
--- a/java/com/android/incallui/contactgrid/res/values-bn/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-bn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> এর মাধ্যমে কল করা হচ্ছে"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"হোল্ডে রয়েছে"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"এর থেকে আগত ভিডিও কল"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"এর থেকে আগত Wi-Fi ভিডিও কল"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"এর থেকে ভিডিও আপগ্রেড করার অনুরোধ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"এর থেকে ওয়াই-ফাই ভিডিও আপগ্রেড করার অনুরোধ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"এর থেকে আগত কল"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"এর থেকে আগত কর্মক্ষেত্রের কল"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> এর মাধ্যমে আগত কল"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-bs/strings.xml b/java/com/android/incallui/contactgrid/res/values-bs/strings.xml
index 2587992..0d4dfb3 100644
--- a/java/com/android/incallui/contactgrid/res/values-bs/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-bs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Pozivanje putem mreže <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Na čekanju"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videopoziv od"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi videopoziv od"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Zahtjev za nadogradnju na videozapis od pozivaoca"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Zahtjev za nadogradnju na Wi-Fi videozapis od pozivaoca"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Poziv od"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Poslovni poziv od"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Dolazni poziv putem <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ca/strings.xml b/java/com/android/incallui/contactgrid/res/values-ca/strings.xml
index 07598a2..b4aa2dd 100644
--- a/java/com/android/incallui/contactgrid/res/values-ca/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ca/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"S\'està trucant amb <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videotrucada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videotrucada per Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Sol·licitud d\'actualització a videotrucada procedent de:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Sol·licitud d\'actualització a videotrucada per Wi-Fi procedent de:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Trucada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Trucada de feina de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Entrant via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-cs/strings.xml b/java/com/android/incallui/contactgrid/res/values-cs/strings.xml
index d27a028..b8698f0 100644
--- a/java/com/android/incallui/contactgrid/res/values-cs/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-cs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Volání přes poskytovatele <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Podrženo"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Příchozí videohovor:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Příchozí videohovor přes Wi-Fi:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Žádost o upgrade na videohovor od uživatele"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Žádost o upgrade na videohovor přes Wi-Fi od uživatele"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Příchozí hovor:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Příchozí pracovní hovor:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Příchozí hovor přes poskytovatele <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-da/strings.xml b/java/com/android/incallui/contactgrid/res/values-da/strings.xml
index 555a2ac..71a651f 100644
--- a/java/com/android/incallui/contactgrid/res/values-da/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-da/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ringer via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"I venteposition"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoopkald fra"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videoopkald fra"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Anmodning om opgradering til et videoopkald fra"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Anmodning om opgradering til et Wi-Fi-videoopkald fra"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Opkald fra"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Arbejdsopkald fra"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Indgående opkald via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-de/strings.xml b/java/com/android/incallui/contactgrid/res/values-de/strings.xml
index 3d3838c..d69e0f6 100644
--- a/java/com/android/incallui/contactgrid/res/values-de/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-de/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Anruf über <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Anruf wird gehalten"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoanruf von"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"WLAN-Videoanruf von"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Anfrage für Upgrade auf Videoanruf von"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Anfrage für Upgrade auf Videoanruf über WLAN von"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Anruf von"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Geschäftlicher Anruf von"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Eingehender Anruf über <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-el/strings.xml b/java/com/android/incallui/contactgrid/res/values-el/strings.xml
index 337da7b..954e7b7 100644
--- a/java/com/android/incallui/contactgrid/res/values-el/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-el/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Κλήση μέσω <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Σε αναμονή"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Βιντεοκλήση από"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Βιντεοκλήση μέσω Wi-Fi από"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Αίτημα αναβάθμισης βίντεο από"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Αίτημα αναβάθμισης βίντεο Wi-Fi από"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Κλήση από"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Κλήση από το γραφείο από"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Εισερχόμενη κλήση μέσω <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-en-rAU/strings.xml b/java/com/android/incallui/contactgrid/res/values-en-rAU/strings.xml
index 3748db2..a1402ff 100644
--- a/java/com/android/incallui/contactgrid/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-en-rAU/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Calling via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"On hold"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call from"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video call from"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video upgrade request from"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video upgrade request from"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Call from"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Work call from"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Incoming via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-en-rGB/strings.xml b/java/com/android/incallui/contactgrid/res/values-en-rGB/strings.xml
index 3748db2..a1402ff 100644
--- a/java/com/android/incallui/contactgrid/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-en-rGB/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Calling via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"On hold"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call from"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video call from"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video upgrade request from"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video upgrade request from"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Call from"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Work call from"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Incoming via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-en-rIN/strings.xml b/java/com/android/incallui/contactgrid/res/values-en-rIN/strings.xml
index 3748db2..a1402ff 100644
--- a/java/com/android/incallui/contactgrid/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-en-rIN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Calling via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"On hold"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call from"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video call from"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video upgrade request from"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video upgrade request from"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Call from"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Work call from"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Incoming via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-es-rUS/strings.xml b/java/com/android/incallui/contactgrid/res/values-es-rUS/strings.xml
index fa56849..abb2b01 100644
--- a/java/com/android/incallui/contactgrid/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-es-rUS/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Llamada por medio de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videollamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videollamada con Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Actualización a video solicitada por"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Actualización a video con Wi-Fi solicitada por"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Llamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Llamada laboral de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Entrante por medio de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-es/strings.xml b/java/com/android/incallui/contactgrid/res/values-es/strings.xml
index 1d57f9c..ef7c457 100644
--- a/java/com/android/incallui/contactgrid/res/values-es/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-es/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Llamada a través de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videollamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videollamada por Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitud de actualización de videollamada de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitud de actualización de videollamada por Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Llamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Llamada de trabajo de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Recibida a través de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-et/strings.xml b/java/com/android/incallui/contactgrid/res/values-et/strings.xml
index 2d81062..b91f073 100644
--- a/java/com/android/incallui/contactgrid/res/values-et/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-et/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Kõne edastab <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Ootel"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videokõne kontaktilt"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"WiFi-videokõne kontaktilt"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video täiendamise taotlus:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"WiFi kaudu video täiendamise taotlus:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Kõne kontaktilt"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Töökõne kontaktilt"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Sissetulev kõne teenusepakkuja <xliff:g id="PROVIDER_NAME">%s</xliff:g> kaudu"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-eu/strings.xml b/java/com/android/incallui/contactgrid/res/values-eu/strings.xml
index f08347b..ba7995a 100644
--- a/java/com/android/incallui/contactgrid/res/values-eu/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-eu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> bidez deitzen"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Zain"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Bideo-deia:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi bidezko bideo-deia:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Bideo-dei bat egiteko eskaera bidali dizu erabiltzaile honek:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi bidezko bideo-dei bat egiteko eskaera bidali dizu erabiltzaile honek:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Deia:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Laneko deia:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> bidez jasotzen"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-fa/strings.xml b/java/com/android/incallui/contactgrid/res/values-fa/strings.xml
index 0dfc0f4..40873ca 100644
--- a/java/com/android/incallui/contactgrid/res/values-fa/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-fa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"تماس از طریق <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"درانتظار"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"تماس ویدئویی از"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"‏تماس ویدئویی Wi-Fi از"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"درخواست ارتقای تماس ویدیویی از"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"‏در خواست ارتقای تماس ویدیویی Wi-Fi از"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"تماس از"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"تماس کاری از"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"تماس‌های ورودی ازطریق <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-fi/strings.xml b/java/com/android/incallui/contactgrid/res/values-fi/strings.xml
index 00503bf..241fef5 100644
--- a/java/com/android/incallui/contactgrid/res/values-fi/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-fi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Käytetään operaattoria <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Pidossa"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videopuhelu henkilöltä"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videopuhelu henkilöltä"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Videoon siirtymispyyntö, jonka lähettäjä on"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi-videopuheluun siirtymispyyntö, jonka lähettäjän on"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Puhelu henkilöltä"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Työpuhelu henkilöltä"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Saapuva puhelu (<xliff:g id="PROVIDER_NAME">%s</xliff:g>)"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-fr-rCA/strings.xml b/java/com/android/incallui/contactgrid/res/values-fr-rCA/strings.xml
index ee0196d..3ffc1e9 100644
--- a/java/com/android/incallui/contactgrid/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-fr-rCA/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Appel par <xliff:g id="PROVIDER_NAME">%s</xliff:g> en cours…"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En attente"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Appel vidéo de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Appel vidéo Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Demande de mise à niveau vidéo de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Demande de mise à niveau vidéo Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Appel de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Appel professionnel de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Appel entrant par <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-fr/strings.xml b/java/com/android/incallui/contactgrid/res/values-fr/strings.xml
index 9849ad6..0db6ae0 100644
--- a/java/com/android/incallui/contactgrid/res/values-fr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-fr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Appel via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En attente"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Appel vidéo de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Appel vidéo Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Demande de passage en mode vidéo par"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Demande de passage en mode vidéo Wi-Fi par"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Appel de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Appel professionnel de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Appel entrant via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-gl/strings.xml b/java/com/android/incallui/contactgrid/res/values-gl/strings.xml
index c85f336..2970014 100644
--- a/java/com/android/incallui/contactgrid/res/values-gl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-gl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Chamando a través de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochamada por wifi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitude de actualización a videochamada de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitude de actualización a videochamada por wifi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chamada de traballo de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Chamada entrante a través de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-gu/strings.xml b/java/com/android/incallui/contactgrid/res/values-gu/strings.xml
index 5179cc0..220bebe 100644
--- a/java/com/android/incallui/contactgrid/res/values-gu/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-gu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> મારફતે કૉલ કરી રહ્યાં છે"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"હોલ્ડ પર"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"આમના તરફથી વિડિઓ કૉલ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"આમના તરફથી Wi-Fi વિડિઓ કૉલ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"આમના તરફથી વિડિઓ અપગ્રેડની વિનંતી"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"આમના તરફથી Wi-Fi વિડિઓ અપગ્રેડની વિનંતી"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"આમના તરફથી કૉલ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"આમના તરફથી કાર્ય કૉલ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> મારફતે ઇનકમિંગ"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-hi/strings.xml b/java/com/android/incallui/contactgrid/res/values-hi/strings.xml
index dec7b62..da128b6 100644
--- a/java/com/android/incallui/contactgrid/res/values-hi/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-hi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> के माध्यम से कॉल किया जा रहा है"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"होल्ड पर"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"इससे वीडियो कॉल"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"इससे वाई-फ़ाई वीडियो कॉल"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"इसकी ओर से वीडियो में अपग्रेड करने का अनुरोध"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"इसकी ओर से वाई-फ़ाई वीडियो में अपग्रेड करने का अनुरोध"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"इससे कॉल"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"इससे कार्य संबंधी कॉल"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> की ओर से इनकमिंग"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-hr/strings.xml b/java/com/android/incallui/contactgrid/res/values-hr/strings.xml
index d7023ac..24429a2 100644
--- a/java/com/android/incallui/contactgrid/res/values-hr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-hr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Pozivanje putem operatera <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Na čekanju"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videopoziv s broja"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videopoziv putem Wi-Fi veze s broja"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video upgrade request from"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video upgrade request from"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Poziv s broja"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Poslovni poziv s broja"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Dolazni pozivi putem davatelja <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-hu/strings.xml b/java/com/android/incallui/contactgrid/res/values-hu/strings.xml
index f7da923..600b69f 100644
--- a/java/com/android/incallui/contactgrid/res/values-hu/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-hu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Hívás a(z) <xliff:g id="PROVIDER_NAME">%s</xliff:g> szolgáltatón keresztül"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Várakoztatva"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videohívás a következőtől:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videohívás a következőtől:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Videófrissítési kérelem a következőtől"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi-videófrissítési kérelem a következőtől"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Hívás a következőtől:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Munkahelyi hívás a következőről:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Bejövő hívás a következőn keresztül: <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-hy/strings.xml b/java/com/android/incallui/contactgrid/res/values-hy/strings.xml
index 6384fa9..88a49eb 100644
--- a/java/com/android/incallui/contactgrid/res/values-hy/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-hy/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Զանգում է <xliff:g id="PROVIDER_NAME">%s</xliff:g>-ի միջոցով"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Սպասում"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Տեսազանգ հետևյալ բաժանորդից՝"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi տեսազանգ հետևյալ բաժանորդից՝"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Տեսազանգին անցնելու խնդրանք հետևյալ օգտատիրոջից՝"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi-ի միջոցով տեսազանգին անցնելու խնդրանք հետևյալ օգտատիրոջից՝"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Զանգ հետևյալ բաժանորդից՝"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Գործնական զանգ հետևյալ բաժանորդից՝"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Մուտքային զանգ <xliff:g id="PROVIDER_NAME">%s</xliff:g> ցանցից"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-in/strings.xml b/java/com/android/incallui/contactgrid/res/values-in/strings.xml
index 7556838..f673583 100644
--- a/java/com/android/incallui/contactgrid/res/values-in/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-in/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Menelepon melalui <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Ditangguhkan"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call dari"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Video call Wi-Fi dari"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Permintaan upgrade video dari"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Permintaan upgrade video Wi-Fi dari"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Telepon dari"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Panggilan telepon kerja dari"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Masuk melalui <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-is/strings.xml b/java/com/android/incallui/contactgrid/res/values-is/strings.xml
index 86d577c..9e83031 100644
--- a/java/com/android/incallui/contactgrid/res/values-is/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-is/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Hringt í gegnum <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Í bið"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Myndsímtal berst frá"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi myndsímtal berst frá"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Beiðni um að uppfæra í myndsímtal frá"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Beiðni um að uppfæra í Wi-Fi myndsímtal frá"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Símtal berst frá"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Vinnusímtal berst frá"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Berst í gegnum <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-it/strings.xml b/java/com/android/incallui/contactgrid/res/values-it/strings.xml
index 9576a6d..76958cf 100644
--- a/java/com/android/incallui/contactgrid/res/values-it/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-it/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Chiamate tramite <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"In attesa"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochiamata da"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochiamata Wi-Fi da"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Upgrade della videochiamata richiesto da"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Upgrade della videochiamata Wi-Fi richiesto da"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chiamata da"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chiamata di lavoro da"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"In arrivo tramite <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-iw/strings.xml b/java/com/android/incallui/contactgrid/res/values-iw/strings.xml
index 62771d1..b06c321 100644
--- a/java/com/android/incallui/contactgrid/res/values-iw/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-iw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"שיחה באמצעות <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"בהמתנה"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"שיחת וידאו מאת"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"‏שיחת וידאו ב-Wi-Fi מאת"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"בקשה לשדרוג לשיחת וידאו מאת"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"‏בקשת לשדרוג לשיחת וידאו ברשת Wi-Fi מאת"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"שיחה מאת"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"שיחת עבודה מאת"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"שיחה נכנסת באמצעות <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ja/strings.xml b/java/com/android/incallui/contactgrid/res/values-ja/strings.xml
index a5d958c..a2fce09 100644
--- a/java/com/android/incallui/contactgrid/res/values-ja/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ja/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> で発信中"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"保留中"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ビデオハングアウトの着信"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi ビデオハングアウトの着信"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ビデオハングアウトへの変更リクエスト"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi ビデオハングアウトへの変更リクエスト"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"着信"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"仕事の通話の着信"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> から着信"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ka/strings.xml b/java/com/android/incallui/contactgrid/res/values-ka/strings.xml
index 7848f59..cb0094d 100644
--- a/java/com/android/incallui/contactgrid/res/values-ka/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ka/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"მიმდინარეობს დარეკვა <xliff:g id="PROVIDER_NAME">%s</xliff:g>-ის მეშვეობით"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"მოცდის რეჟიმში"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ვიდეოზარი აბონენტისგან"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi ვიდეოზარი აბონენტისგან"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ვიდეოზარზე გადასვლის მოთხოვნა კონტაქტისგან:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi ვიდეოზარზე გადასვლის მოთხოვნა კონტაქტისგან:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ზარი აბონენტისგან"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"სამსახურებრივი ზარი აბონენტისგან"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"შემომავალი, <xliff:g id="PROVIDER_NAME">%s</xliff:g>-იდან"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-kk/strings.xml b/java/com/android/incallui/contactgrid/res/values-kk/strings.xml
index aaf260b..3fc68c2 100644
--- a/java/com/android/incallui/contactgrid/res/values-kk/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-kk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> арқылы қоңырау шалу"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Күтуде"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Бейне қоңырау шалушы:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi бейне қоңырау шалушы:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Бейне қоңырауға ауысу өтініші:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi арқылы бейне қоңырауға ауысу өтініші:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Қоңырау шалушы:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Жұмыстан қоңырау шалушы:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> арқылы кіріс"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-km/strings.xml b/java/com/android/incallui/contactgrid/res/values-km/strings.xml
index b2bfc96..7ee21ba 100644
--- a/java/com/android/incallui/contactgrid/res/values-km/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-km/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"កំពុង​ហៅតាម <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"កំពុង​រង់ចាំ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ការ​ហៅ​ជា​វីដេអូ​ពី"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"ការ​ហៅ​ជា​វីដេអូ​តាម Wi-Fi ពី"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ស្នើ​ដំឡើង​កំណែ​វីដេអូ​ពី"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ស្នើ​ដំឡើង​កំណែ​វីដេអូតាម Wi-Fi ពី"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ការ​ហៅ​ពី"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"ការ​ហៅ​ការងារ​ពី"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"ការ​ហៅ​ចូល​តាម <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-kn/strings.xml b/java/com/android/incallui/contactgrid/res/values-kn/strings.xml
index 0ee73ba..e90bd6b 100644
--- a/java/com/android/incallui/contactgrid/res/values-kn/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-kn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ಮೂಲಕ ಕರೆ ಮಾಡಲಾಗುತ್ತಿದೆ"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ಹೋಲ್ಡ್‌ ಮಾಡಲಾಗಿದೆ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ಇವರಿಂದ ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"ಇವರಿಂದ ವೈ-ಫೈ ವೀಡಿಯೊ ಕರೆ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ಇದರಿಂದ ವೀಡಿಯೊ ಅಪ್‌ಗ್ರೇಡ್ ವಿನಂತಿ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ಇದರಿಂದ ವೈಫೈ ವೀಡಿಯೊ ಅಪ್‌ಗ್ರೇಡ್ ವಿನಂತಿ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ಇವರಿಂದ ಕರೆ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"ಇವರಿಂದ ಕೆಲಸದ ಕರೆ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ಮೂಲಕ ಒಳಬರುತ್ತಿರುವ ಕರೆ"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ko/strings.xml b/java/com/android/incallui/contactgrid/res/values-ko/strings.xml
index a5a34e3..85dd613 100644
--- a/java/com/android/incallui/contactgrid/res/values-ko/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ko/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g>을(를) 통해 거는 전화"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"대기 중"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"화상 통화 발신:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi 화상 통화 발신:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"화상 통화로의 업그레이드를 요청한 사용자:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi 화상 통화로의 업그레이드를 요청한 사용자:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"통화 발신:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"업무 통화 발신:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g>을(를) 통해 걸려온 전화"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ky/strings.xml b/java/com/android/incallui/contactgrid/res/values-ky/strings.xml
index a020e70..6028022 100644
--- a/java/com/android/incallui/contactgrid/res/values-ky/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ky/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> аркылуу чалуу"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Күтүү режиминде"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видео чалуу"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi аркылуу видео чалуу:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Видеону кийинки версияга көтөрүү сурамы:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi аркылуу видеомаектешүү сурамы:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Чалып жатат:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Иш боюнча чалып жатат:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> аркылуу чалып жатат"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-lo/strings.xml b/java/com/android/incallui/contactgrid/res/values-lo/strings.xml
index 96c1dcf..6ad1178 100644
--- a/java/com/android/incallui/contactgrid/res/values-lo/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-lo/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"ກຳລັງໂທຜ່ານ <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ຖືສາຍລໍຖ້າ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ການໂທວິດີໂອຈາກ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video call from"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ຄຳຮ້ອງອັບເກຣດວິດີໂອຈາກ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ຄຳຮ້ອງອັບເກຣດວິດີໂອ Wi-Fi ຈາກ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ການໂທຈາກ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Work call from"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"ສາຍໂທເຂົ້າ​ຈາກ <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-lt/strings.xml b/java/com/android/incallui/contactgrid/res/values-lt/strings.xml
index e8e42fc..3cca55c 100644
--- a/java/com/android/incallui/contactgrid/res/values-lt/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-lt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Skambinama naudojantis „<xliff:g id="PROVIDER_NAME">%s</xliff:g>“ paslaugomis"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Sulaikytas"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Vaizdo skambutis nuo"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"„Wi-Fi“ vaizdo skambutis nuo"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Vaizdo skambučio naujovinimo užklausa nuo"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"„Wi-Fi“ vaizdo skambučio naujovinimo užklausa nuo"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Skambutis nuo"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Darbo skambutis nuo"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Gaunama per „<xliff:g id="PROVIDER_NAME">%s</xliff:g>“"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-lv/strings.xml b/java/com/android/incallui/contactgrid/res/values-lv/strings.xml
index 1b3823f..87e5c90 100644
--- a/java/com/android/incallui/contactgrid/res/values-lv/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-lv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Zvanu nodrošina <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Aizturēts"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videozvans no:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi videozvans no:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Videozvana jaunināšanas pieprasījums no:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi videozvana jaunināšanas pieprasījums no:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Zvans no:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Darba zvans no:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Ienākošie zvani, ko nodrošina <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-mk/strings.xml b/java/com/android/incallui/contactgrid/res/values-mk/strings.xml
index 1044683..fcab8f4 100644
--- a/java/com/android/incallui/contactgrid/res/values-mk/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-mk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Повикување преку <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"На чекање"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видеоповик од"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Видеоповик преку Wi-Fi од"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Барање за надградба на видеоповик од"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Барање за надградба на видеоповик преку Wi-Fi од"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Повик од"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Работен повик од"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Дојдовни повици преку <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ml/strings.xml b/java/com/android/incallui/contactgrid/res/values-ml/strings.xml
index 519e9f4..1dfb46a 100644
--- a/java/com/android/incallui/contactgrid/res/values-ml/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ml/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> മുഖേന വിളിക്കുന്നു"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ഹോള്‍ഡിലാണ്"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ഈ വ്യക്തിയിൽ നിന്നുള്ള വീഡിയോ കോൾ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"ഈ വ്യക്തിയിൽ നിന്നുള്ള Wi-Fi വീഡിയോ കോൾ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ഇനിപ്പറയുന്നതിൽ നിന്നുള്ള വീഡിയോ അപ്‌ഗ്രേഡ് അഭ്യർത്ഥന"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ഇനിപ്പറയുന്നതിൽ നിന്നുള്ള Wi-Fi വീഡിയോ അപ്‌ഗ്രേഡ് അഭ്യർത്ഥന"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ഈ വ്യക്തിയിൽ നിന്നുള്ള കോൾ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"ഈ വ്യക്തിയിൽ നിന്നുള്ള ഔദ്യോഗിക കോൾ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> മുഖേനയുള്ള ഇൻകമിംഗ്"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-mn/strings.xml b/java/com/android/incallui/contactgrid/res/values-mn/strings.xml
index c87e071..c93bd46 100644
--- a/java/com/android/incallui/contactgrid/res/values-mn/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-mn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g>-р залгаж байна"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Хүлээлгэнд байгаа"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видео дуудлага"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi видео дуудлага"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Видеог сайжруулах хүсэлт"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi видеог сайжруулах хүсэлт"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Дуудлага"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Ажлын дуудлага"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g>-р ирж байна"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-mr/strings.xml b/java/com/android/incallui/contactgrid/res/values-mr/strings.xml
index 6a01817..81d76dd 100644
--- a/java/com/android/incallui/contactgrid/res/values-mr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-mr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> द्वारे कॉल करीत आहे"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"होल्ड वर"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"यावरून व्हिडिओ कॉल"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi व्हिडिओ कॉल"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"याकडून व्हिडिओ श्रेणीसुधारणेची विनंती"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"याकडून Wi-Fi व्हिडिओ श्रेणीसुधारणेची विनंती"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"यावरील कॉल"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"कडून कार्य कॉल"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> द्वारे येणारे"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ms/strings.xml b/java/com/android/incallui/contactgrid/res/values-ms/strings.xml
index 17ca753..815df79 100644
--- a/java/com/android/incallui/contactgrid/res/values-ms/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ms/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Memanggil melalui <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Panggilan ditahan"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Panggilan video daripada"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Panggilan video Wi-Fi daripada"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Permintaan peningkatan video daripada"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Permintaan peningkatan video Wi-Fi daripada"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Panggilan daripada"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Panggilan kerja daripada"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Panggilan masuk melalui <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-my/strings.xml b/java/com/android/incallui/contactgrid/res/values-my/strings.xml
index 14770cf..3c8a88e 100644
--- a/java/com/android/incallui/contactgrid/res/values-my/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-my/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> မှတစ်ဆင့် ခေါ်ဆိုနေသည်"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ဖုန်းကိုင်ထားသည်"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"အောက်ပါထံမှ ဗီဒီယိုခေါ်ဆိုမှု"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"အောက်ပါထံမှ Wi-Fi ဗီဒီယိုခေါ်ဆိုမှု"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"အောက်ပါထံမှ ဗီဒီယိုအဆင့်မြှင့်ခြင်းတောင်းဆိုချက်"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"အောက်ပါထံမှ Wi-Fi ဗီဒီယိုအဆင့်မြှင့်ခြင်းတောင်းဆိုချက်"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"အောက်ပါထံမှ ခေါ်ဆိုမှု"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"အောက်ပါထံမှ အလုပ်ခေါ်ဆိုမှု"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> မှတစ်ဆင့် အဝင်ခေါ်ဆိုမှု"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-nb/strings.xml b/java/com/android/incallui/contactgrid/res/values-nb/strings.xml
index fbf9895..9ad8d0d 100644
--- a/java/com/android/incallui/contactgrid/res/values-nb/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-nb/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ringer via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"På vent"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoanrop fra"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videoanrop fra"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Forespørsel om videooppdatering fra"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Forespørsel om Wi-Fi-videooppdatering fra"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Anrop fra"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Jobbrelatert anrop fra"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Innkommende via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ne/strings.xml b/java/com/android/incallui/contactgrid/res/values-ne/strings.xml
index d618af4..e6e65c5 100644
--- a/java/com/android/incallui/contactgrid/res/values-ne/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ne/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> मार्फत कल गर्दै"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"होल्डमा छ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"निम्नबाट भिडियो कल आएको छ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"निम्नबाट Wi-Fi मार्फत गरिएको भिडियो कल आएको छ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"निम्नबाट आएको भिडियो अपग्रेडसम्बन्धी अनुरोध"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"निम्नबाट आएको Wi-Fi मार्फत भिडियो अपग्रेडसम्बन्धी अनुरोध"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"निम्नबाट कल आएको छ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"निम्नबाट कार्य सम्बन्धी कल आएको छ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> मार्फत गरिएको आगमन कल"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-nl/strings.xml b/java/com/android/incallui/contactgrid/res/values-nl/strings.xml
index 10dcd13..828a7a2 100644
--- a/java/com/android/incallui/contactgrid/res/values-nl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-nl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Bellen via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"In de wacht"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videogesprek van"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wifi-videogesprek van"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Upgradeverzoek voor videogesprek van"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Upgradeverzoek voor wifi-videogesprek van"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Oproep van"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Zakelijke oproep van"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Inkomend via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-no/strings.xml b/java/com/android/incallui/contactgrid/res/values-no/strings.xml
index fbf9895..9ad8d0d 100644
--- a/java/com/android/incallui/contactgrid/res/values-no/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-no/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ringer via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"På vent"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoanrop fra"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videoanrop fra"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Forespørsel om videooppdatering fra"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Forespørsel om Wi-Fi-videooppdatering fra"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Anrop fra"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Jobbrelatert anrop fra"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Innkommende via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pa/strings.xml b/java/com/android/incallui/contactgrid/res/values-pa/strings.xml
index fb261d6..1d4801c 100644
--- a/java/com/android/incallui/contactgrid/res/values-pa/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ਰਾਹੀਂ ਕਾਲ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ਰੋਕ ਕੇ ਰੱਖੀ ਗਈ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ਇਸ ਤੋਂ ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"ਇਸ ਤੋਂ Wi-Fi ਵੀਡੀਓ ਕਾਲ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ਇਸ ਤੋਂ ਵੀਡੀਓ ਅੱਪਗ੍ਰੇਡ ਬੇਨਤੀ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ਇਸ ਤੋਂ Wi-Fi ਵੀਡੀਓ ਅੱਪਗ੍ਰੇਡ ਬੇਨਤੀ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ਇਸ ਤੋਂ ਕਾਲ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"ਇਸ ਤੋਂ ਕੰਮ ਸਬੰਧੀ ਕਾਲ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ਰਾਹੀਂ ਇਨਕਮਿੰਗ"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pl/strings.xml b/java/com/android/incallui/contactgrid/res/values-pl/strings.xml
index 998e49e..586f39e 100644
--- a/java/com/android/incallui/contactgrid/res/values-pl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Dzwonię przez <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Oczekujące"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Rozmowa wideo z:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Rozmowa wideo przez Wi-Fi z:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Prośba o przejście na rozmowę wideo wysłana przez:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Prośba o przejście na rozmowę wideo przez Wi-Fi wysłana przez:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Połączenie z:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Połączenie służbowe z:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Przychodzące z sieci <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pt-rBR/strings.xml b/java/com/android/incallui/contactgrid/res/values-pt-rBR/strings.xml
index 4365cba..a445cdf 100644
--- a/java/com/android/incallui/contactgrid/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pt-rBR/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ligando via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Em espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochamada via Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitação de upgrade de vídeo de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitação de upgrade de vídeo por Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chamada de trabalho de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Chamada de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pt-rPT/strings.xml b/java/com/android/incallui/contactgrid/res/values-pt-rPT/strings.xml
index 55d3c26..ca07b3f 100644
--- a/java/com/android/incallui/contactgrid/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pt-rPT/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"A telefonar através de <xliff:g id="PROVIDER_NAME">%s</xliff:g>…"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Em espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochamada a partir de rede Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Pedido de atualização para videochamada de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Pedido de atualização para videochamada por Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chamada de trabalho de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Chamada recebida através de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pt/strings.xml b/java/com/android/incallui/contactgrid/res/values-pt/strings.xml
index 4365cba..a445cdf 100644
--- a/java/com/android/incallui/contactgrid/res/values-pt/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ligando via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Em espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochamada via Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitação de upgrade de vídeo de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitação de upgrade de vídeo por Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chamada de trabalho de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Chamada de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ro/strings.xml b/java/com/android/incallui/contactgrid/res/values-ro/strings.xml
index f8d1c9b..180a01f 100644
--- a/java/com/android/incallui/contactgrid/res/values-ro/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ro/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Se apelează prin <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"În așteptare"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Apel video de la"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Apel video prin Wi-Fi de la"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitare de upgrade la apel video de la"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitare de upgrade la apel video prin Wi-Fi de la"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Apel primit de la"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Apel de serviciu de la"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Primite prin <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ru/strings.xml b/java/com/android/incallui/contactgrid/res/values-ru/strings.xml
index dfbc088..e0a6351 100644
--- a/java/com/android/incallui/contactgrid/res/values-ru/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ru/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Вызов через <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"На удержании"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видеовызов от"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Видеовызов по Wi-Fi от"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Запрос на переход к видеовстрече от:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Запрос на переход к видеовстрече через Wi-Fi от:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Вызов от"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Рабочий вызов от"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Входящий вызов (оператор: <xliff:g id="PROVIDER_NAME">%s</xliff:g>)"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-si/strings.xml b/java/com/android/incallui/contactgrid/res/values-si/strings.xml
index 00ca2aa..451dc39 100644
--- a/java/com/android/incallui/contactgrid/res/values-si/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-si/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> හරහා අමතමින්"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"රඳවා ගත්"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"වෙතින් වීඩියෝ ඇමතුම"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"වෙතින් Wi-Fi වීඩියෝ ඇමතුම"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"වෙතින් වීඩියෝ උත්ශ්‍රේණි කිරීමේ ඉල්ලීම"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"වෙතින් Wi-Fi වීඩියෝ උත්ශ්‍රේණි කිරීමේ ඉල්ලීම"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"වෙතින් ඇමතුම"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"වෙතින් කාර්යාල ඇමතුම"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> හරහා එන"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sk/strings.xml b/java/com/android/incallui/contactgrid/res/values-sk/strings.xml
index 40039ee..ae21ec8 100644
--- a/java/com/android/incallui/contactgrid/res/values-sk/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Voláte prostredníctvom poskytovateľa <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Podržané"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videohovor od:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videohovor cez Wi-Fi od:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Žiadosť o inováciu na videohovor od používateľa"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Žiadosť o inováciu na videohovor cez Wi-Fi od používateľa"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Hovor od:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Pracovný hovor od:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Prichádzajúci hovor prostredníctvom poskytovateľa <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sl/strings.xml b/java/com/android/incallui/contactgrid/res/values-sl/strings.xml
index f76b5cd..1d93d21 100644
--- a/java/com/android/incallui/contactgrid/res/values-sl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Klicanje prek ponudnika <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Zadržano"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoklic osebe"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videoklic prek omrežja Wi-Fi osebe"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Zahteva za nadgradnjo v video – zahteva osebe"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Zahteva za nadgradnjo v video prek omrežja Wi-Fi – zahteva osebe"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Klic osebe"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Delovni klic osebe"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Dohodni klic prek storitve <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sq/strings.xml b/java/com/android/incallui/contactgrid/res/values-sq/strings.xml
index 34ec2d1..8c28eb7 100644
--- a/java/com/android/incallui/contactgrid/res/values-sq/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sq/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Telefonatë nëpërmjet <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Në pritje"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Telefonatë me video nga"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Telefonatë me video në Wi-Fi nga"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Kërkesë për përmirësimin me video nga"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Kërkesë për përmirësimin me video me Wi-Fi nga"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Telefonatë nga"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Telefonatë pune nga"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Telefonatë hyrëse nëpërmjet <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sr/strings.xml b/java/com/android/incallui/contactgrid/res/values-sr/strings.xml
index 9ad1499..66ea45d 100644
--- a/java/com/android/incallui/contactgrid/res/values-sr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Позивамо преко <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"На чекању"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видео позив од"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi видео позив од"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Захтев за прелазак на видео позив од"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Захтев за прелазак на видео позив преко Wi-Fi-ја од"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Позив од"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Пословни позив од"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Долазни позив преко <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sv/strings.xml b/java/com/android/incallui/contactgrid/res/values-sv/strings.xml
index d5dd159..931d9c9 100644
--- a/java/com/android/incallui/contactgrid/res/values-sv/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ringer med <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Parkerat"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videosamtal från"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videosamtal från"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Begäran om videouppgradering från"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Begäran om uppgradering av Wi-Fi-video från"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Samtal från"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Jobbsamtal från"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Inkommande via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sw/strings.xml b/java/com/android/incallui/contactgrid/res/values-sw/strings.xml
index 72bc26f..581d797 100644
--- a/java/com/android/incallui/contactgrid/res/values-sw/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Inapiga simu kupitia <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Imesitishwa"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Simu ya video kutoka kwa"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Simu ya video kupitia Wi-Fi kutoka kwa"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Umetumiwa ombi ili ubadilishe utumie simu ya video na"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Umetumiwa ombi ili ubadilishe utumie simu ya video kwenye Wi-Fi na"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Simu kutoka kwa"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Simu ya kazi kutoka kwa"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Simu zinazoingia kupitia <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ta/strings.xml b/java/com/android/incallui/contactgrid/res/values-ta/strings.xml
index 2f5b1b8..37ff876 100644
--- a/java/com/android/incallui/contactgrid/res/values-ta/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ta/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> வழியாக அழைக்கிறது"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ஹோல்டில் உள்ளது"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"வீடியோ அழைப்பு:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"வைஃபை வீடியோ அழைப்பு:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"வீடியோவை மேம்படுத்துவதற்கான கோரிக்கை:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"வைஃபையில் வீடியோவை மேம்படுத்துவதற்கான கோரிக்கை:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"அழைப்பு:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"அழைப்பு (பணி) :"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> மூலம் உள்வரும் அழைப்பு"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-te/strings.xml b/java/com/android/incallui/contactgrid/res/values-te/strings.xml
index 52038db..913c944 100644
--- a/java/com/android/incallui/contactgrid/res/values-te/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-te/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ద్వారా కాల్ చేస్తోంది"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"హోల్డ్‌లో ఉంది"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"వీరి నుండి వీడియో కాల్:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"వీరి నుండి Wi-Fi వీడియో కాల్:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"వీరి నుండి వీడియో అప్‌గ్రేడ్ అభ్యర్థన"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"వీరి నుండి Wi-Fi వీడియో అప్‌గ్రేడ్ అభ్యర్థన"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"వీరి నుండి కాల్:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"వీరి నుండి కార్యాలయ కాల్:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ద్వారా ఇన్‌కమింగ్ కాల్"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-th/strings.xml b/java/com/android/incallui/contactgrid/res/values-th/strings.xml
index 419db19..6503959 100644
--- a/java/com/android/incallui/contactgrid/res/values-th/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-th/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"โทรผ่าน <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"พักสาย"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"แฮงเอาท์วิดีโอจาก"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"แฮงเอาท์วิดีโอผ่าน Wi-Fi จาก"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"คำขออัปเกรดวิดีโอจาก"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"คำขออัปเกรดวิดีโอผ่าน Wi-Fi จาก"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"โทรจาก"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"โทรเรื่องงานจาก"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"สายเรียกเข้าผ่าน <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-tl/strings.xml b/java/com/android/incallui/contactgrid/res/values-tl/strings.xml
index 282ec10..7fa063b 100644
--- a/java/com/android/incallui/contactgrid/res/values-tl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-tl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Tumatawag sa pamamagitan ng <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Naka-hold"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call mula kay"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi na video call mula kay"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Kahilingan upang i-upgrade ang video mula kay"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Kahilingan upang i-upgrade ang video gamit ang Wi-Fi mula kay"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Tawag mula kay"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Tawag sa trabaho mula kay"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Papasok sa pamamagitan ng <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-tr/strings.xml b/java/com/android/incallui/contactgrid/res/values-tr/strings.xml
index 5ecbf35..1ce565d 100644
--- a/java/com/android/incallui/contactgrid/res/values-tr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-tr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> üzerinden çağrı yapılıyor"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Beklemede"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Gelen video görüşmesi isteği:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Gelen kablosuz video görüşmesi isteği:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Görüntülü görüşmeye geçme isteği alındı:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Kablosuz görüntülü görüşmeye geçme isteği alındı:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Gelen çağrı:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Gelen iş çağrısı:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> adlı sağlayıcı üzerinden gelen çağrı"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-uk/strings.xml b/java/com/android/incallui/contactgrid/res/values-uk/strings.xml
index 7b84fb6..0d4a595 100644
--- a/java/com/android/incallui/contactgrid/res/values-uk/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-uk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Виклик здійснюється через оператора <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Утримується"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Відеодзвінок від:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Відеодзвінок через Wi-Fi від:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Запит на відеодзвінок від користувача"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Запит на відеодзвінок через Wi-Fi від користувача"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Виклик від:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Виклик на робочий телефон від:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Вхідні виклики через оператора <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ur/strings.xml b/java/com/android/incallui/contactgrid/res/values-ur/strings.xml
index 6584181..793e487 100644
--- a/java/com/android/incallui/contactgrid/res/values-ur/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ur/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"کالنگ بذریعہ <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ہولڈ پر ہے"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ویڈیو کال منجانب"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"‏Wi-Fi ویڈیو کال منجانب"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ویڈیو اپ گریڈ کی درخواست منجانب"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"‏Wi-Fi ویڈیو اپ گریڈ کی درخواست منجانب"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"کال منجانب"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"دفتری کال منجانب"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> کے ذریعے آنے والی کال"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-uz/strings.xml b/java/com/android/incallui/contactgrid/res/values-uz/strings.xml
index db11a18..f4569de 100644
--- a/java/com/android/incallui/contactgrid/res/values-uz/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-uz/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> orqali qo‘ng‘rioq qilinmoqda"</string>
@@ -14,9 +30,11 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Kutish rejimida"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Kimdan video qo‘ng‘iroq:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi orqali kimdan video qo‘ng‘iroq:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Bu foydalanuvchi video suhbatga o‘tishni so‘ramoqda:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Bu foydalanuvchi Wi-Fi orqali video suhbatga o‘tishni so‘ramoqda:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Kimdan qo‘ng‘iroq:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Ish telefoniga kimdan qo‘ng‘iroq:"</string>
-    <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Kiruvchi qo‘ng‘iroq (operator: <xliff:g id="PROVIDER_NAME">%s</xliff:g>)"</string>
+    <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Kiruvchi chaqiruv (operator: <xliff:g id="PROVIDER_NAME">%s</xliff:g>)"</string>
     <string name="contact_grid_incoming_suspected_spam" msgid="285365265897630425">"Shubhali abonent"</string>
     <string name="contact_grid_callback_number" msgid="1284649030313415807">"Teskari qo‘ng‘iroq uchun raqam: <xliff:g id="DARK_NUMBER">%1$s</xliff:g>"</string>
 </resources>
diff --git a/java/com/android/incallui/contactgrid/res/values-vi/strings.xml b/java/com/android/incallui/contactgrid/res/values-vi/strings.xml
index 340a115..9ce0f18 100644
--- a/java/com/android/incallui/contactgrid/res/values-vi/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-vi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Đang gọi điện qua <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Đang chờ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Cuộc gọi điện video từ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Cuộc gọi điện video qua Wi-Fi từ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Yêu cầu nâng cấp video từ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Yêu cầu nâng cấp video Wi-Fi từ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Cuộc gọi từ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Cuộc gọi về công việc từ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Cuộc gọi đến qua <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-zh-rCN/strings.xml b/java/com/android/incallui/contactgrid/res/values-zh-rCN/strings.xml
index 16031b8..af5008a 100644
--- a/java/com/android/incallui/contactgrid/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-zh-rCN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"正在通过<xliff:g id="PROVIDER_NAME">%s</xliff:g>进行通话"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"保持"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"视频通话来自："</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"WLAN 视频通话来自："</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"视频通话升级请求来自："</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"WLAN 视频通话升级请求来自："</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"通话来自："</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"工作通话来自："</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"有人通过 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 来电"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-zh-rHK/strings.xml b/java/com/android/incallui/contactgrid/res/values-zh-rHK/strings.xml
index 14a4441..9f47481 100644
--- a/java/com/android/incallui/contactgrid/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-zh-rHK/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"正在透過 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 撥號"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"保留"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"視像通話來自"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi 視像通話來自"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"視像升級要求來自"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi 視像升級要求來自"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"通話來自"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"工作通話來自"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"透過 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 的來電"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-zh-rTW/strings.xml b/java/com/android/incallui/contactgrid/res/values-zh-rTW/strings.xml
index bdee41e..563bb28 100644
--- a/java/com/android/incallui/contactgrid/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-zh-rTW/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"正在透過 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 撥號"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"保留中"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"視訊通話來電："</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi 視訊通話來電："</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"視訊升級要求，來自："</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi 視訊升級要求，來自："</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"語音來電："</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"公司來電："</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"有人透過 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 來電"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-zu/strings.xml b/java/com/android/incallui/contactgrid/res/values-zu/strings.xml
index 150d5cc..19951cc 100644
--- a/java/com/android/incallui/contactgrid/res/values-zu/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-zu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ishaya ucingo nge-<xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Ibambile"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Ikholi yevidiyo kusukela ku-"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Ikholi yevidiyo ye-Wi-Fi kusukela ku-"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Isicelo sokuthuthukiswa kwevidiyo kusukela"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Isicelo sokuthuthukiswa kwevidiyo ye-Wi-Fi kusukela"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Ikholi esuka ku-"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Ikholi yomsebenzi kusukela ku-"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Ingena nge-<xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values/strings.xml b/java/com/android/incallui/contactgrid/res/values/strings.xml
index 385f843..5a9272c 100644
--- a/java/com/android/incallui/contactgrid/res/values/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values/strings.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2016 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
+  -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
 
   <!-- Title displayed in the overlay for outgoing calls which include the name of the provider.
@@ -50,6 +65,12 @@
   <!-- Displayed in the answer call screen for incoming video calls over Wi-F. -->
   <string name="contact_grid_incoming_wifi_video_call">Wi-Fi video call from</string>
 
+  <!-- Displayed in the answer call screen for incoming requests to upgrade to a video call. -->
+  <string name="contact_grid_incoming_video_request">Video upgrade request from</string>
+
+  <!-- Displayed in the answer call screen for incoming requests to upgrade to a video call over Wi-F. -->
+  <string name="contact_grid_incoming_wifi_video_request">Wi-Fi video upgrade request from</string>
+
   <!-- Displayed in the answer call screen for incoming voice calls. -->
   <string name="contact_grid_incoming_voice_call">Call from</string>
 
diff --git a/java/com/android/incallui/disconnectdialog/AndroidManifest.xml b/java/com/android/incallui/disconnectdialog/AndroidManifest.xml
new file mode 100644
index 0000000..eec9807
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/AndroidManifest.xml
@@ -0,0 +1,19 @@
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<manifest
+  package="com.android.incallui.disconnectdialog">
+</manifest>
diff --git a/java/com/android/incallui/disconnectdialog/DefaultErrorDialog.java b/java/com/android/incallui/disconnectdialog/DefaultErrorDialog.java
new file mode 100644
index 0000000..2ce2387
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/DefaultErrorDialog.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2017 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.incallui.disconnectdialog;
+
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.telecom.DisconnectCause;
+import android.text.TextUtils;
+import android.util.Pair;
+import com.android.incallui.call.DialerCall;
+
+/** Default error dialog shown to user after disconnect. */
+public class DefaultErrorDialog implements DisconnectDialog {
+
+  @Override
+  public boolean shouldShow(DisconnectCause disconnectCause) {
+    return !TextUtils.isEmpty(disconnectCause.getDescription())
+        && (disconnectCause.getCode() == DisconnectCause.ERROR
+            || disconnectCause.getCode() == DisconnectCause.RESTRICTED);
+  }
+
+  @Override
+  public Pair<Dialog, CharSequence> createDialog(@NonNull Context context, DialerCall call) {
+    DisconnectCause disconnectCause = call.getDisconnectCause();
+    CharSequence message = disconnectCause.getDescription();
+
+    Dialog dialog =
+        new AlertDialog.Builder(context)
+            .setMessage(message)
+            .setPositiveButton(android.R.string.cancel, null)
+            .create();
+    return new Pair<>(dialog, message);
+  }
+}
diff --git a/java/com/android/incallui/disconnectdialog/DisconnectDialog.java b/java/com/android/incallui/disconnectdialog/DisconnectDialog.java
new file mode 100644
index 0000000..0b2b8cc
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/DisconnectDialog.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2017 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.incallui.disconnectdialog;
+
+import android.app.Dialog;
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.telecom.DisconnectCause;
+import android.util.Pair;
+import com.android.incallui.call.DialerCall;
+
+/** Interface for disconnect dialog. */
+public interface DisconnectDialog {
+
+  boolean shouldShow(DisconnectCause disconnectCause);
+
+  Pair<Dialog, CharSequence> createDialog(@NonNull Context context, DialerCall call);
+}
diff --git a/java/com/android/incallui/disconnectdialog/DisconnectMessage.java b/java/com/android/incallui/disconnectdialog/DisconnectMessage.java
new file mode 100644
index 0000000..97d58f2
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/DisconnectMessage.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2017 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.incallui.disconnectdialog;
+
+import android.app.Dialog;
+import android.content.Context;
+import android.telecom.DisconnectCause;
+import android.util.Pair;
+import com.android.incallui.call.DialerCall;
+import java.util.Locale;
+
+/**
+ * Wrapper class around @Code{android.telecom.DisconnectCause} to provide more information to user.
+ */
+public class DisconnectMessage {
+
+  // Disconnect dialog catalog. Default error dialog MUST be last one.
+  private static final DisconnectDialog[] DISCONNECT_DIALOGS =
+      new DisconnectDialog[] {
+        new EnableWifiCallingPrompt(), new VideoCallNotAvailablePrompt(), new DefaultErrorDialog()
+      };
+
+  public final Dialog dialog;
+  public final CharSequence toastMessage;
+  private final DisconnectCause cause;
+
+  public DisconnectMessage(Context context, DialerCall call) {
+    cause = call.getDisconnectCause();
+
+    for (DisconnectDialog disconnectDialog : DISCONNECT_DIALOGS) {
+      if (disconnectDialog.shouldShow(cause)) {
+        Pair<Dialog, CharSequence> pair = disconnectDialog.createDialog(context, call);
+        dialog = pair.first;
+        toastMessage = pair.second;
+        return;
+      }
+    }
+    dialog = null;
+    toastMessage = null;
+  }
+
+  @Override
+  public String toString() {
+    return String.format(
+        Locale.ENGLISH,
+        "DisconnectMessage {code: %d, description: %s, reason: %s, message: %s}",
+        cause.getCode(),
+        cause.getDescription(),
+        cause.getReason(),
+        toastMessage);
+  }
+}
diff --git a/java/com/android/incallui/disconnectdialog/EnableWifiCallingPrompt.java b/java/com/android/incallui/disconnectdialog/EnableWifiCallingPrompt.java
new file mode 100644
index 0000000..da0c9d6
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/EnableWifiCallingPrompt.java
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2017 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.incallui.disconnectdialog;
+
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.Context;
+import android.content.DialogInterface.OnClickListener;
+import android.content.Intent;
+import android.support.annotation.NonNull;
+import android.telecom.DisconnectCause;
+import android.util.Pair;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.incallui.call.DialerCall;
+
+/** Prompts the user to enable Wi-Fi calling. */
+public class EnableWifiCallingPrompt implements DisconnectDialog {
+  // This is a hidden constant in android.telecom.DisconnectCause. Telecom sets this as a disconnect
+  // reason if it wants us to prompt the user to enable Wi-Fi calling. In Android-O we might
+  // consider using a more explicit way to signal this.
+  private static final String REASON_WIFI_ON_BUT_WFC_OFF = "REASON_WIFI_ON_BUT_WFC_OFF";
+  private static final String ACTION_WIFI_CALLING_SETTINGS =
+      "android.settings.WIFI_CALLING_SETTINGS";
+  private static final String ANDROID_SETTINGS_PACKAGE = "com.android.settings";
+
+  @Override
+  public boolean shouldShow(DisconnectCause disconnectCause) {
+    String reason = disconnectCause.getReason();
+    if (reason.startsWith(REASON_WIFI_ON_BUT_WFC_OFF)) {
+      LogUtil.i(
+          "EnableWifiCallingPrompt.shouldShowPrompt",
+          "showing prompt for disconnect cause: %s",
+          reason);
+      return true;
+    }
+    return false;
+  }
+
+  @Override
+  public Pair<Dialog, CharSequence> createDialog(final @NonNull Context context, DialerCall call) {
+    Assert.isNotNull(context);
+    DisconnectCause cause = call.getDisconnectCause();
+    CharSequence message = cause.getDescription();
+    Dialog dialog =
+        new AlertDialog.Builder(context)
+            .setMessage(message)
+            .setPositiveButton(
+                R.string.incall_enable_wifi_calling_button,
+                (OnClickListener) (dialog1, which) -> openWifiCallingSettings(context))
+            .setNegativeButton(android.R.string.cancel, null)
+            .create();
+    return new Pair<>(dialog, message);
+  }
+
+  private static void openWifiCallingSettings(@NonNull Context context) {
+    LogUtil.i("EnableWifiCallingPrompt.openWifiCallingSettings", "opening settings");
+    context.startActivity(
+        new Intent(ACTION_WIFI_CALLING_SETTINGS).setPackage(ANDROID_SETTINGS_PACKAGE));
+  }
+}
diff --git a/java/com/android/incallui/disconnectdialog/VideoCallNotAvailablePrompt.java b/java/com/android/incallui/disconnectdialog/VideoCallNotAvailablePrompt.java
new file mode 100644
index 0000000..34db976
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/VideoCallNotAvailablePrompt.java
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 2017 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.incallui.disconnectdialog;
+
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.Context;
+import android.content.Intent;
+import android.support.annotation.NonNull;
+import android.telecom.DisconnectCause;
+import android.telecom.PhoneAccountHandle;
+import android.util.Pair;
+import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.util.DialerUtils;
+import com.android.incallui.call.DialerCall;
+
+/** Prompt user to make voice call if video call is not currently available. */
+public class VideoCallNotAvailablePrompt implements DisconnectDialog {
+
+  private static final String REASON_IMS_ACCESS_BLOCKED = "IMS_ACCESS_BLOCKED";
+
+  @Override
+  public boolean shouldShow(DisconnectCause disconnectCause) {
+    if (disconnectCause.getCode() == DisconnectCause.ERROR
+        && REASON_IMS_ACCESS_BLOCKED.equals(disconnectCause.getReason())) {
+      LogUtil.i(
+          "VideoCallNotAvailablePrompt.shouldShowPrompt",
+          "showing prompt for disconnect cause: %s",
+          disconnectCause.getReason());
+      return true;
+    } else {
+      return false;
+    }
+  }
+
+  @Override
+  public Pair<Dialog, CharSequence> createDialog(@NonNull Context context, DialerCall call) {
+    CharSequence title = context.getString(R.string.video_call_not_available_title);
+
+    Dialog dialog =
+        new AlertDialog.Builder(context)
+            .setTitle(title)
+            .setMessage(context.getString(R.string.video_call_not_available_message))
+            .setPositiveButton(
+                R.string.voice_call,
+                (dialog1, which) ->
+                    makeVoiceCall(context, call.getNumber(), call.getAccountHandle()))
+            .setNegativeButton(android.R.string.cancel, null)
+            .create();
+    return new Pair<>(dialog, title);
+  }
+
+  private void makeVoiceCall(Context context, String number, PhoneAccountHandle accountHandle) {
+    LogUtil.enterBlock("VideoCallNotAvailablePrompt.makeVoiceCall");
+    Intent intent =
+        new CallIntentBuilder(number, CallInitiationType.Type.IMS_VIDEO_BLOCKED_FALLBACK_TO_VOICE)
+            .setPhoneAccountHandle(accountHandle)
+            .build();
+    DialerUtils.startActivityWithErrorToast(context, intent);
+  }
+}
diff --git a/java/com/android/incallui/disconnectdialog/res/values-af/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-af/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-af/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-am/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-am/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-am/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ar/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ar/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ar/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-az/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-az/strings.xml
new file mode 100644
index 0000000..5a72e4c
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-az/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Aktiv edin"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Video zəng hazırda əlçatan deyil"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Daha sonra yenidən cəhd edin və ya audio zənglə davam edin."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Video zəng"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-b+sr+Latn/strings.xml
new file mode 100644
index 0000000..e782e70
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-b+sr+Latn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Omogući"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Video poziv trenutno nije dostupan"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Probajte ponovo da uputite poziv kasnije ili ga nastavite kao audio poziv."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Audio poziv"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-be/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-be/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-be/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-bg/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-bg/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-bg/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-bn/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-bn/strings.xml
new file mode 100644
index 0000000..dd0297c
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-bn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"সক্ষম করুন"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"ভিডিও কলিং বর্তমানে উপলব্ধ নয়"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"পরে আবার কল করার চেষ্টা করুন বা কলটিকে একটি ভয়েস কল হিসাবে চালিয়ে যান৷"</string>
+    <string name="voice_call" msgid="6748636104112578475">"ভয়েস কল"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-bs/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-bs/strings.xml
new file mode 100644
index 0000000..309427a
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-bs/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Omogući"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Videopozivanje trenutno nije dostupno"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Pozovite ponovo kasnije ili nastavite poziv kao glasovni poziv."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Glasovni poziv"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ca/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ca/strings.xml
new file mode 100644
index 0000000..dca9551
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ca/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Activa"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Les videotrucades no estan disponibles actualment"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Torna-ho a provar més tard o continua com a trucada de veu."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Trucada de veu"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-cs/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-cs/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-cs/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-da/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-da/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-da/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-de/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-de/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-de/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-el/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-el/strings.xml
new file mode 100644
index 0000000..1e182be
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-el/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Ενεργοποίηση"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Η βιντεοκλήσεις δεν είναι προς το παρόν διαθέσιμες"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Δοκιμάστε να καλέσετε ξανά αργότερα ή συνεχίστε την κλήση ως φωνητική κλήση."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Φωνητική κλήση"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-en-rAU/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-en-rAU/strings.xml
new file mode 100644
index 0000000..4665e11
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-en-rAU/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Enable"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Video calling is currently not available"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Try calling again later or continue the call as a voice call."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Voice call"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-en-rGB/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-en-rGB/strings.xml
new file mode 100644
index 0000000..4665e11
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-en-rGB/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Enable"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Video calling is currently not available"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Try calling again later or continue the call as a voice call."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Voice call"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-en-rIN/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-en-rIN/strings.xml
new file mode 100644
index 0000000..4665e11
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-en-rIN/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Enable"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Video calling is currently not available"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Try calling again later or continue the call as a voice call."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Voice call"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-es-rUS/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-es-rUS/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-es-rUS/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-es/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-es/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-es/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-et/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-et/strings.xml
new file mode 100644
index 0000000..dae212d
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-et/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Luba"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Vidokõned pole praegu saadaval"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Proovige hiljem uuesti helistada või jätkake helistamist häälkõnena."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Häälkõne"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-eu/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-eu/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-eu/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-fa/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-fa/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-fa/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-fi/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-fi/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-fi/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-fr-rCA/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-fr-rCA/strings.xml
new file mode 100644
index 0000000..e2bd4b1
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-fr-rCA/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Activer"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Les appels vidéo ne sont pas disponibles pour le moment"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Essayez de rappeler plus tard ou passez à un appel vocal."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Appel vocal"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-fr/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-fr/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-fr/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-gl/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-gl/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-gl/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-gu/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-gu/strings.xml
new file mode 100644
index 0000000..28825da
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-gu/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"સક્ષમ કરો"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"વિડિઓ કૉલિંગ હાલમાં ઉપલબ્ધ નથી"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"પછીથી ફરી કૉલ કરવાનો પ્રયાસ કરો અથવા કૉલને વૉઇસ કૉલ તરીકે ચાલુ રાખો."</string>
+    <string name="voice_call" msgid="6748636104112578475">"વૉઇસ કૉલ"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-hi/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-hi/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-hi/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-hr/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-hr/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-hr/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-hu/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-hu/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-hu/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-hy/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-hy/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-hy/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-in/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-in/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-in/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-is/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-is/strings.xml
new file mode 100644
index 0000000..b16b431
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-is/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Kveikja"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Myndsímtal er ekki í boði sem stendur"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Prófaðu að hringja aftur seinna eða hringdu hefðbundið símtal í staðinn"</string>
+    <string name="voice_call" msgid="6748636104112578475">"Símtal"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-it/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-it/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-it/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-iw/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-iw/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-iw/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ja/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ja/strings.xml
new file mode 100644
index 0000000..8e196f2
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ja/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"有効にする"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"ビデオハングアウトは現在利用できません"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"しばらくしてからもう一度試すか、音声通話で続けてください。"</string>
+    <string name="voice_call" msgid="6748636104112578475">"音声通話"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ka/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ka/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ka/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-kk/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-kk/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-kk/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-km/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-km/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-km/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-kn/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-kn/strings.xml
new file mode 100644
index 0000000..384e92b
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-kn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"ಸಕ್ರಿಯಗೊಳಿಸಿ"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"ವೀಡಿಯೊ ಕರೆ ಪ್ರಸ್ತುತವಾಗಿ ಲಭ್ಯವಿಲ್ಲ"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"ನಂತರ ಮತ್ತೆ ಕರೆ ಮಾಡಲು ಪ್ರಯತ್ನಿಸಿ ಅಥವಾ ಧ್ವನಿ ಕರೆಯಂತೆ ಕರೆಯನ್ನು ಮುಂದುವರಿಸಿ."</string>
+    <string name="voice_call" msgid="6748636104112578475">"ಧ್ವನಿ ಕರೆ"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ko/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ko/strings.xml
new file mode 100644
index 0000000..30e1565
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ko/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"사용"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"현재 화상 통화를 사용할 수 없음"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"나중에 다시 전화하거나, 계속하려면 음성 통화를 이용하세요."</string>
+    <string name="voice_call" msgid="6748636104112578475">"음성 통화"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ky/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ky/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ky/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-lo/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-lo/strings.xml
new file mode 100644
index 0000000..c3f8b96
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-lo/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"ເປິດນຳໃຊ້"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"ຕອນນີ້ບໍ່ສາມາດໃຊ້ການໂທວິດີໂອໄດ້"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"ກະລຸນາລອງໂທໃໝ່ໃນພາຍຫຼັງ ຫຼື ສືບຕໍ່ສາຍເປັນການໂທແບບສຽງ."</string>
+    <string name="voice_call" msgid="6748636104112578475">"ການໂທດ້ວຍສຽງ"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-lt/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-lt/strings.xml
new file mode 100644
index 0000000..38d6ef8
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-lt/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Įgalinti"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Vaizdo skambučių funkcija šiuo metu nepasiekiama"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Vėliau pabandykite skambinti dar kartą arba tęskite skambutį kaip balso skambutį."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Balso skambutis"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-lv/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-lv/strings.xml
new file mode 100644
index 0000000..279f0f5
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-lv/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Iespējot"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Videozvani pašlaik nav pieejami"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Vēlāk mēģiniet zvanīt vēlreiz vai turpiniet sarunu kā balss zvanu."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Balss zvans"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-mk/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-mk/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-mk/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ml/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ml/strings.xml
new file mode 100644
index 0000000..719d6e8
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ml/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"പ്രവർത്തനക്ഷമമാക്കുക"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"വീഡിയോ കോളിംഗ് നിലവിൽ ലഭ്യമല്ല"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"പിന്നീട് വീണ്ടും വിളിക്കുന്നതോ വോയ്‌സ് കോളായി കോൾ തുടരുന്നതോ പരീക്ഷിക്കൂ."</string>
+    <string name="voice_call" msgid="6748636104112578475">"വോയ്‌സ് കോൾ"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-mn/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-mn/strings.xml
new file mode 100644
index 0000000..fae6708
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-mn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Идэвхжүүлэх"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Одоогоор видео дуудлага хийх боломжгүй"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Дараа дахин залгаж үзэх буюу энгийн дуудлагаар үргэлжлүүлнэ үү."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Дуудлага"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-mr/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-mr/strings.xml
new file mode 100644
index 0000000..8549785
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-mr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"चालू करा"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"व्हिडिओ कॉलिंग सध्या उपलब्ध नाही"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"नंतर पुन्हा कॉल करून पहा किंवा कॉल व्हॉइस कॉल म्हणून सुरू ठेवा."</string>
+    <string name="voice_call" msgid="6748636104112578475">"व्हॉईस कॉल"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ms/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ms/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ms/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-my/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-my/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-my/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-nb/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-nb/strings.xml
new file mode 100644
index 0000000..14a41fa
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-nb/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Slå på"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Videoanrop er ikke tilgjengelige akkurat nå"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Prøv å ringe på nytt senere eller fortsett anropet som taleanrop."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Taleanrop"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ne/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ne/strings.xml
new file mode 100644
index 0000000..9cc63fd
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ne/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"सक्षम पार्नुहोस्"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"भिडियो कल हाल उपलब्ध छैन"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"पछि फेरि कल गर्ने प्रयास गर्नुहोस् वा भ्वाइस कलका रूपमा कल जारी राख्नुहोस्।"</string>
+    <string name="voice_call" msgid="6748636104112578475">"भ्वाइस कल"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-nl/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-nl/strings.xml
new file mode 100644
index 0000000..c3380db
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-nl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Inschakelen"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Videobellen is momenteel niet beschikbaar"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Probeer later opnieuw te bellen of start een spraakoproep."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Spraakoproep"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-no/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-no/strings.xml
new file mode 100644
index 0000000..14a41fa
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-no/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Slå på"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Videoanrop er ikke tilgjengelige akkurat nå"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Prøv å ringe på nytt senere eller fortsett anropet som taleanrop."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Taleanrop"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-pa/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-pa/strings.xml
new file mode 100644
index 0000000..722183b
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-pa/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"ਯੋਗ ਬਣਾਓ"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"ਵੀਡੀਓ ਕਾਲਿੰਗ ਇਸ ਵੇਲੇ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"ਬਾਅਦ ਵਿੱਚ ਦੁਬਾਰਾ ਕਾਲ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜਾਂ ਕਾਲ ਨੂੰ ਵੌਇਸ ਕਾਲ ਵਜੋਂ ਜਾਰੀ ਰੱਖੋ।"</string>
+    <string name="voice_call" msgid="6748636104112578475">"ਵੌਇਸ ਕਾਲ"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-pl/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-pl/strings.xml
new file mode 100644
index 0000000..b8307e9
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-pl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Włącz"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Rozmowy wideo nie są obecnie dostępne"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Spróbuj zadzwonić później, aby kontynuować rozmowę w trybie wideo."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Połączenie głosowe"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-pt-rBR/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-pt-rBR/strings.xml
new file mode 100644
index 0000000..ce249f6
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-pt-rBR/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Ativar"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"O recurso de videochamada não está disponível no momento"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Ligue novamente mais tarde ou continue esta chamada sem o vídeo."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Chamada de voz"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-pt-rPT/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-pt-rPT/strings.xml
new file mode 100644
index 0000000..7d11ede
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-pt-rPT/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Ativar"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Neste momento, as videochamadas não estão disponíveis"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Experimente efetuar a videochamada mais tarde ou continue a chamada como uma chamada de voz."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Chamada de voz"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-pt/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-pt/strings.xml
new file mode 100644
index 0000000..ce249f6
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-pt/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Ativar"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"O recurso de videochamada não está disponível no momento"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Ligue novamente mais tarde ou continue esta chamada sem o vídeo."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Chamada de voz"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ro/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ro/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ro/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ru/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ru/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ru/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-si/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-si/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-si/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-sk/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sk/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-sk/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-sl/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sl/strings.xml
new file mode 100644
index 0000000..6afd14c
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-sl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Omogoči"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Videoklicanje trenutno ni na voljo"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Poskusite klicati znova pozneje ali pa klic nadaljujte kot glasovni klic."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Glasovni klic"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-sq/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sq/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-sq/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-sr/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sr/strings.xml
new file mode 100644
index 0000000..620c39e
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-sr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Омогући"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Видео позив тренутно није доступан"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Пробајте поново да упутите позив касније или га наставите као аудио позив."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Аудио позив"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-sv/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sv/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-sv/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-sw/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sw/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-sw/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ta/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ta/strings.xml
new file mode 100644
index 0000000..626d0d6
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ta/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"இயக்கு"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"தற்போது வீடியோவில் அழைக்க முடியாது"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"பிறகு அழைக்க முயற்சிக்கவும் அல்லது குரல் அழைப்பைச் செய்யவும்."</string>
+    <string name="voice_call" msgid="6748636104112578475">"குரல் அழைப்பு"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-te/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-te/strings.xml
new file mode 100644
index 0000000..737d677
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-te/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"ప్రారంభించు"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"ప్రస్తుతం వీడియో కాలింగ్ అందుబాటులో లేదు"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"మళ్లీ కాల్ చేసి ప్రయత్నించండి లేదా కాల్‌ను వాయిస్ కాల్ వలె కొనసాగించండి."</string>
+    <string name="voice_call" msgid="6748636104112578475">"వాయిస్ కాల్"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-th/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-th/strings.xml
new file mode 100644
index 0000000..a6fa2b1
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-th/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"เปิดใช้"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"วิดีโอคอลไม่พร้อมใช้งานในตอนนี้"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"ลองโทรอีกครั้งในภายหลัง หรือโทรด้วยเสียงต่อไป"</string>
+    <string name="voice_call" msgid="6748636104112578475">"การโทรด้วยเสียง"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-tl/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-tl/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-tl/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-tr/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-tr/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-tr/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-uk/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-uk/strings.xml
new file mode 100644
index 0000000..36a3c45
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-uk/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Увімкнути"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Наразі не можна здійснювати відеодзвінки"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Спробуйте пізніше або перейдіть у режим голосового дзвінка."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Голосовий дзвінок"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-ur/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ur/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-ur/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-uz/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-uz/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-uz/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-vi/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-vi/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-vi/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-zh-rCN/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-zh-rCN/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-zh-rHK/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-zh-rHK/strings.xml
new file mode 100644
index 0000000..605c847
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-zh-rHK/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"啟用"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"視像通話目前無法使用"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"請稍後再撥，或是以語音通話的形式繼續通話。"</string>
+    <string name="voice_call" msgid="6748636104112578475">"語音通話"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-zh-rTW/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000..dae2426
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-zh-rTW/strings.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_title (987490011944013201) -->
+    <skip />
+    <!-- no translation found for video_call_not_available_message (2284146863894603221) -->
+    <skip />
+    <!-- no translation found for voice_call (6748636104112578475) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values-zu/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-zu/strings.xml
new file mode 100644
index 0000000..1c0dd48
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values-zu/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Nika amandla"</string>
+    <string name="video_call_not_available_title" msgid="987490011944013201">"Ukushaya kwevidiyo manje akutholakali"</string>
+    <string name="video_call_not_available_message" msgid="2284146863894603221">"Zama ukushaya emuva kwesikhathi noma qhuba ikholi njengekholi yezwi."</string>
+    <string name="voice_call" msgid="6748636104112578475">"Ikholi yezwi"</string>
+</resources>
diff --git a/java/com/android/incallui/disconnectdialog/res/values/strings.xml b/java/com/android/incallui/disconnectdialog/res/values/strings.xml
new file mode 100644
index 0000000..91389db
--- /dev/null
+++ b/java/com/android/incallui/disconnectdialog/res/values/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+  <!-- Button to enable Wi-Fi calling. This is displayed in a dialog after a phone call disconnects
+      because there is no cellular service.
+      [CHAR LIMIT=20] -->
+  <string name="incall_enable_wifi_calling_button">Enable</string>
+
+  <!-- Title of alert dialog displayed when video call is not available. [CHAR LIMIT=NONE] -->
+  <string name="video_call_not_available_title">Video calling is currently not available</string>
+  <!-- Message of alert dialog displayed when video call is not available. [CHAR LIMIT=NONE] -->
+  <string name="video_call_not_available_message">Try calling again later or continue the call as a voice call.</string>
+  <!-- Voice call button label of alert dialog displayed when video call is not available. [CHAR LIMIT=20] -->
+  <string name="voice_call">Voice call</string>
+
+</resources>
diff --git a/java/com/android/incallui/incall/impl/ButtonChooserFactory.java b/java/com/android/incallui/incall/impl/ButtonChooserFactory.java
index 0dcfdb5..99364e2 100644
--- a/java/com/android/incallui/incall/impl/ButtonChooserFactory.java
+++ b/java/com/android/incallui/incall/impl/ButtonChooserFactory.java
@@ -83,11 +83,18 @@
     mapping.put(
         InCallButtonIds.BUTTON_SWITCH_TO_SECONDARY, MappingInfo.builder(4).setSlotOrder(0).build());
     mapping.put(
-        InCallButtonIds.BUTTON_MANAGE_VOICE_CONFERENCE,
-        MappingInfo.builder(4).setSlotOrder(5).build());
-    mapping.put(
         InCallButtonIds.BUTTON_UPGRADE_TO_VIDEO, MappingInfo.builder(4).setSlotOrder(10).build());
-    mapping.put(InCallButtonIds.BUTTON_HOLD, MappingInfo.builder(5).setSlotOrder(0).build());
+
+    /*
+     * Unlike the other configurations, MANAGE_VOICE_CONFERENCE shares a spot with HOLD for GSM.
+     * On GSM, pressing hold while there's a background call just swaps to the background call. It
+     * doesn't make sense to show both SWITCH_TO_SECONDARY and HOLD when they do the same thing, so
+     * we show MANAGE_VOICE_CONFERENCE instead. Previously MANAGE_VOICE_CONFERENCE would not show.
+     */
+    mapping.put(
+        InCallButtonIds.BUTTON_MANAGE_VOICE_CONFERENCE,
+        MappingInfo.builder(5).setSlotOrder(0).build());
+    mapping.put(InCallButtonIds.BUTTON_HOLD, MappingInfo.builder(5).setSlotOrder(5).build());
 
     return new ButtonChooser(new MappedButtonConfig(mapping));
   }
diff --git a/java/com/android/incallui/incall/impl/ButtonController.java b/java/com/android/incallui/incall/impl/ButtonController.java
index 8c11364..b7a47f0 100644
--- a/java/com/android/incallui/incall/impl/ButtonController.java
+++ b/java/com/android/incallui/incall/impl/ButtonController.java
@@ -29,6 +29,8 @@
 import com.android.incallui.incall.protocol.InCallButtonIds;
 import com.android.incallui.incall.protocol.InCallButtonUiDelegate;
 import com.android.incallui.incall.protocol.InCallScreenDelegate;
+import com.android.incallui.speakerbuttonlogic.SpeakerButtonInfo;
+import com.android.incallui.speakerbuttonlogic.SpeakerButtonInfo.IconSize;
 
 /** Manages a single button. */
 interface ButtonController {
@@ -376,36 +378,13 @@
     }
 
     public void setAudioState(CallAudioState audioState) {
-      @StringRes int contentDescriptionResId;
-      if ((audioState.getSupportedRouteMask() & CallAudioState.ROUTE_BLUETOOTH)
-          == CallAudioState.ROUTE_BLUETOOTH) {
-        checkable = false;
-        isChecked = false;
-        label = R.string.incall_label_audio;
+      SpeakerButtonInfo info = new SpeakerButtonInfo(audioState, IconSize.SIZE_36_DP);
 
-        if ((audioState.getRoute() & CallAudioState.ROUTE_BLUETOOTH)
-            == CallAudioState.ROUTE_BLUETOOTH) {
-          icon = R.drawable.quantum_ic_bluetooth_audio_white_36;
-          contentDescriptionResId = R.string.incall_content_description_bluetooth;
-        } else if ((audioState.getRoute() & CallAudioState.ROUTE_SPEAKER)
-            == CallAudioState.ROUTE_SPEAKER) {
-          icon = R.drawable.quantum_ic_volume_up_white_36;
-          contentDescriptionResId = R.string.incall_content_description_speaker;
-        } else if ((audioState.getRoute() & CallAudioState.ROUTE_WIRED_HEADSET)
-            == CallAudioState.ROUTE_WIRED_HEADSET) {
-          icon = R.drawable.quantum_ic_headset_white_36;
-          contentDescriptionResId = R.string.incall_content_description_headset;
-        } else {
-          icon = R.drawable.ic_phone_audio_white_36dp;
-          contentDescriptionResId = R.string.incall_content_description_earpiece;
-        }
-      } else {
-        checkable = true;
-        isChecked = audioState.getRoute() == CallAudioState.ROUTE_SPEAKER;
-        label = R.string.incall_label_speaker;
-        icon = R.drawable.quantum_ic_volume_up_white_36;
-        contentDescriptionResId = R.string.incall_content_description_speaker;
-      }
+      checkable = info.checkable;
+      isChecked = info.isChecked;
+      label = info.label;
+      icon = info.icon;
+      @StringRes int contentDescriptionResId = info.contentDescription;
 
       contentDescription = delegate.getContext().getText(contentDescriptionResId);
       checkedContentDescription =
diff --git a/java/com/android/incallui/incall/impl/InCallFragment.java b/java/com/android/incallui/incall/impl/InCallFragment.java
index c5d7532..54d01e7 100644
--- a/java/com/android/incallui/incall/impl/InCallFragment.java
+++ b/java/com/android/incallui/incall/impl/InCallFragment.java
@@ -41,7 +41,10 @@
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.FragmentUtils;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.multimedia.MultimediaData;
+import com.android.dialer.widget.LockableViewPager;
 import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment;
 import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment.AudioRouteSelectorPresenter;
 import com.android.incallui.contactgrid.ContactGridManager;
@@ -384,6 +387,10 @@
         show);
     if (isSupportedButton(buttonId)) {
       getButtonController(buttonId).setAllowed(show);
+      if (buttonId == InCallButtonIds.BUTTON_UPGRADE_TO_VIDEO && show) {
+        Logger.get(getContext())
+            .logImpression(DialerImpression.Type.UPGRADE_TO_VIDEO_CALL_BUTTON_SHOWN);
+      }
     }
   }
 
@@ -473,6 +480,9 @@
     inCallButtonUiDelegate.setAudioRoute(audioRoute);
   }
 
+  @Override
+  public void onAudioRouteSelectorDismiss() {}
+
   @NonNull
   @Override
   public ButtonController getButtonController(@InCallButtonIds int id) {
diff --git a/java/com/android/incallui/incall/impl/InCallPagerAdapter.java b/java/com/android/incallui/incall/impl/InCallPagerAdapter.java
index 0b1088d..bc0c616 100644
--- a/java/com/android/incallui/incall/impl/InCallPagerAdapter.java
+++ b/java/com/android/incallui/incall/impl/InCallPagerAdapter.java
@@ -21,7 +21,6 @@
 import android.support.v4.app.FragmentManager;
 import android.support.v4.app.FragmentStatePagerAdapter;
 import android.support.v4.view.PagerAdapter;
-import android.text.TextUtils;
 import com.android.dialer.multimedia.MultimediaData;
 import com.android.incallui.sessiondata.MultimediaFragment;
 
@@ -47,8 +46,7 @@
 
   @Override
   public int getCount() {
-    if (attachments != null
-        && (!TextUtils.isEmpty(attachments.getText()) || attachments.hasImageData())) {
+    if (attachments != null && attachments.hasData()) {
       return 2;
     }
     return 1;
diff --git a/java/com/android/incallui/incall/impl/LockableViewPager.java b/java/com/android/incallui/incall/impl/LockableViewPager.java
deleted file mode 100644
index 5b8b126..0000000
--- a/java/com/android/incallui/incall/impl/LockableViewPager.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (C) 2016 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.incallui.incall.impl;
-
-import android.content.Context;
-import android.support.v4.view.ViewPager;
-import android.util.AttributeSet;
-import android.view.MotionEvent;
-
-/** {@link ViewPager} useful for disabled swiping between pages. */
-public class LockableViewPager extends ViewPager {
-
-  private boolean swipingLocked;
-
-  public LockableViewPager(Context context, AttributeSet attributeSet) {
-    super(context, attributeSet);
-  }
-
-  public void setSwipingLocked(boolean swipingLocked) {
-    this.swipingLocked = swipingLocked;
-  }
-
-  @Override
-  public boolean onInterceptTouchEvent(MotionEvent motionEvent) {
-    return !swipingLocked && super.onInterceptTouchEvent(motionEvent);
-  }
-
-  @Override
-  public boolean onTouchEvent(MotionEvent motionEvent) {
-    return !swipingLocked && super.onTouchEvent(motionEvent);
-  }
-}
diff --git a/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml b/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
index 4443141..c06f709 100644
--- a/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
+++ b/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
 <FrameLayout
   xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:app="http://schemas.android.com/apk/res-auto"
@@ -62,7 +77,7 @@
         android:layout_height="match_parent"/>
     </LinearLayout>
 
-    <com.android.incallui.incall.impl.LockableViewPager
+    <com.android.dialer.widget.LockableViewPager
       android:id="@+id/incall_pager"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
diff --git a/java/com/android/incallui/incall/impl/res/values-af/strings.xml b/java/com/android/incallui/incall/impl/res/values-af/strings.xml
index fd632fb..64529a5 100644
--- a/java/com/android/incallui/incall/impl/res/values-af/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-af/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video-oproep"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Hou aan"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Voeg oproep by"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Demp"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Beëindig oproep"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Sleutelblok"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Luidspreker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is aan"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is af"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Voeg saam"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Bestuur"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Bestuur bellers"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Verwissel"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Klank"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota is gestuur"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-am/strings.xml b/java/com/android/incallui/incall/impl/res/values-am/strings.xml
index 9dfd0e6..66a3868 100644
--- a/java/com/android/incallui/incall/impl/res/values-am/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-am/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"የቪዲዮ ጥሪ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ይዘህ ቆይ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ጥሪ ያክሉ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ድምፀ-ከል አድርግ"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ጥሪ ጨርስ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ቁልፍ ሰሌዳ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"የድምጽ ማጉያ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"፣ በርቷል"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"፣ ጠፍቷል"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"አዋህድ"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"አስተዳድር"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ደዋዮችን ያስተዳድሩ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"አገላብጥ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ድምፅ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ማስታወሻ ተልኳል"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ar/strings.xml b/java/com/android/incallui/incall/impl/res/values-ar/strings.xml
index a5f448a..e4dbfe4 100644
--- a/java/com/android/incallui/incall/impl/res/values-ar/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ar/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"مكالمة فيديو"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"انتظار"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"إضافة مكالمة"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"كتم"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"إنهاء المكالمة"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"لوحة مفاتيح"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"مكبر الصوت"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"، مشغل"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"، غير مشغل"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"دمج"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"إدارة"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"إدارة المتصلين"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"تبديل"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"الصوت"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"تم إرسال الملاحظة"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-az/strings.xml b/java/com/android/incallui/incall/impl/res/values-az/strings.xml
index 5f1f8cb..9a1f7f8 100644
--- a/java/com/android/incallui/incall/impl/res/values-az/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-az/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video zəng"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Xətdə axlayın"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Zəng əlavə edin"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Susdurun"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Zəngi bitirin"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klaviatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Dinamik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", aktivdir"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", deaktivdir"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Birləşdir"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"İdarə edin"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Zəng edənləri idarə edin"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Dəyişdirin"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Səs"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Qeyd göndərildi"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/incall/impl/res/values-b+sr+Latn/strings.xml
index bff7ed0..02d6b7c 100644
--- a/java/com/android/incallui/incall/impl/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-b+sr+Latn/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video poziv"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Na čekanje"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj poziv"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Isključi zvuk"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Završi poziv"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Zvučnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", uključen"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", isključen"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Objedini"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Upravljaj"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Upravljajte pozivaocima"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zameni"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Beleška je poslata"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-be/strings.xml b/java/com/android/incallui/incall/impl/res/values-be/strings.xml
index 394c7c8..45e1e10 100644
--- a/java/com/android/incallui/incall/impl/res/values-be/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-be/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Відэавыклік"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Утрымліваць"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Дадаць выклік"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Адключыць мікрафон"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Сконч. выкл."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Клавіятура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Вонк.дынамік"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", уключана"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", выключана"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Аб\'яднаць"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Кіраваць"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Кіраваць выклікаючымі абанентамі"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Пераключыць"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Гук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Нататка адпраўлена"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-bg/strings.xml b/java/com/android/incallui/incall/impl/res/values-bg/strings.xml
index 4f5933b..c339d3b 100644
--- a/java/com/android/incallui/incall/impl/res/values-bg/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-bg/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видеообажд."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Задържане"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Ново обажд."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Без звук"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Затваряне"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Клавиатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Високоговорител"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"е включено"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"е изключено"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Обединяване"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Управление"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Управление на обаждащите се"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Размяна"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Бележката е изпратена"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-bn/strings.xml b/java/com/android/incallui/incall/impl/res/values-bn/strings.xml
index 9453e14..ca5837b 100644
--- a/java/com/android/incallui/incall/impl/res/values-bn/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-bn/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ভিডিও কল"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ধরে থাকুন"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"কল যোগ করুন"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"নিঃশব্দ করুন"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"কল শেষ করুন"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"কীপ্যাড"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"স্পিকার"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", চালু রয়েছে"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", বন্ধ রয়েছে"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"মার্জ করুন"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"পরিচালনা করুন"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"কলারদের পরিচালনা করুন"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"অদল বদল করুন"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"শব্দ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"নোট পাঠানো হয়েছে"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-bs/strings.xml b/java/com/android/incallui/incall/impl/res/values-bs/strings.xml
index 4b47964..26b44ea 100644
--- a/java/com/android/incallui/incall/impl/res/values-bs/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-bs/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videopoziv"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Na čekanju"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj poziv"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Isključi"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Prekini poziv"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Telefonska tastatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Zvučnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", uključen"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", isključen"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Spoji"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Upravljaj"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Upravljanje pozivaocima"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zamijeni"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Bilješka je poslana"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ca/strings.xml b/java/com/android/incallui/incall/impl/res/values-ca/strings.xml
index e10b7bd..9c76a3a 100644
--- a/java/com/android/incallui/incall/impl/res/values-ca/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ca/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videotrucada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Posa en espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Afeg. trucada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Silencia"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Penja"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclat"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altaveu"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activat"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desactivat"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Combina"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gestiona"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gestiona les persones que truquen"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Canvia"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"So"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"La nota s\'ha enviat"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-cs/strings.xml b/java/com/android/incallui/incall/impl/res/values-cs/strings.xml
index a00c105..69f3e53 100644
--- a/java/com/android/incallui/incall/impl/res/values-cs/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-cs/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videohovor"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Podržet"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Přidat hovor"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Vyp. mikrof."</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Zavěsit"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klávesnice"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Reproduktor"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"– zapnuto"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"– vypnuto"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Sloučit"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Spravovat"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Spravovat volající"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Přepnout"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Poznámka byla odeslána"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-da/strings.xml b/java/com/android/incallui/incall/impl/res/values-da/strings.xml
index 08b5cbb..d9328af 100644
--- a/java/com/android/incallui/incall/impl/res/values-da/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-da/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videoopkald"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Parkér"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Tilføj opkald"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Slå lyden fra"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Slut opkald"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatur"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Højttaler"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", er til"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", er fra"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Flet"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Administrer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Administrer opkaldere"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Byt"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Lyd"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Noten blev sendt"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-de/strings.xml b/java/com/android/incallui/incall/impl/res/values-de/strings.xml
index 5f3f8c1..30eae96 100644
--- a/java/com/android/incallui/incall/impl/res/values-de/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-de/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videoanruf"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Halten"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Hinzufügen"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Stumm"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Beenden"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Wähltasten"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Lautsprecher"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ist an"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ist aus"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Zusammenf."</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Verwalten"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Anrufer verwalten"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Wechseln"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Audio"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notiz gesendet"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-el/strings.xml b/java/com/android/incallui/incall/impl/res/values-el/strings.xml
index 0f5a142..b45314f 100644
--- a/java/com/android/incallui/incall/impl/res/values-el/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-el/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Βιντεοκλήση"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Αναμονή"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Προσθ. κλήσ."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Σίγαση"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Τερματισμός"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Πληκτρολόγιο"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Ηχείο"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ενεργό"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ανενεργό"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Συγχώνευση"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Διαχείριση"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Διαχείριση καλούντων"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Ανταλλαγή"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ήχος"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Η σημείωση εστάλη"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-en-rAU/strings.xml b/java/com/android/incallui/incall/impl/res/values-en-rAU/strings.xml
index 89b72df..34323f5 100644
--- a/java/com/android/incallui/incall/impl/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-en-rAU/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Hold"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Add call"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Mute"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"End call"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is on"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is off"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Merge"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Manage"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Manage callers"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Swap"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sound"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note sent"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-en-rGB/strings.xml b/java/com/android/incallui/incall/impl/res/values-en-rGB/strings.xml
index 89b72df..34323f5 100644
--- a/java/com/android/incallui/incall/impl/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-en-rGB/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Hold"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Add call"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Mute"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"End call"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is on"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is off"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Merge"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Manage"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Manage callers"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Swap"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sound"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note sent"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-en-rIN/strings.xml b/java/com/android/incallui/incall/impl/res/values-en-rIN/strings.xml
index 89b72df..34323f5 100644
--- a/java/com/android/incallui/incall/impl/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-en-rIN/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Hold"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Add call"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Mute"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"End call"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is on"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is off"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Merge"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Manage"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Manage callers"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Swap"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sound"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note sent"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-es-rUS/strings.xml b/java/com/android/incallui/incall/impl/res/values-es-rUS/strings.xml
index fe9374c..0dd1dc7 100644
--- a/java/com/android/incallui/incall/impl/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-es-rUS/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videollamada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Retener"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Agregar llamada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Silenciar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Finalizar llamada"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altavoz"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desactivado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Combinar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Administrar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Administrar números"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Cambiar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sonido"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Se envió la nota"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-es/strings.xml b/java/com/android/incallui/incall/impl/res/values-es/strings.xml
index f2dd09b..db5a7e6 100644
--- a/java/com/android/incallui/incall/impl/res/values-es/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-es/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videollamada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Retener"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Añadir"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Silenciar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Finalizar"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altavoz"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desactivado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Combinar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gestionar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Administrar llamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Cambiar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sonido"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota enviada"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-et/strings.xml b/java/com/android/incallui/incall/impl/res/values-et/strings.xml
index 03fa7de..f4587ad 100644
--- a/java/com/android/incallui/incall/impl/res/values-et/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-et/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videokõne"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Ootele"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Lisa kõne"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Vaigista"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Lõpeta kõne"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klaviatuur"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Kõlar"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", on sees"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", on väljas"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Ühenda"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Halda"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Helistajate haldamine"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Vaheta"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Heli"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Märge on saadetud"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-eu/strings.xml b/java/com/android/incallui/incall/impl/res/values-eu/strings.xml
index 51d300e..28d78a7 100644
--- a/java/com/android/incallui/incall/impl/res/values-eu/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-eu/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Bideo-deia"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Utzi zain"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Gehitu deia"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Des. audioa"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Amaitu deia"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teklatua"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Bozgorailua"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", aktibatuta"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desaktib."</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Bateratu"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Kudeatu"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Kudeatu deitzaileak"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Aldatu"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Soinua"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Bidali da oharra"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-fa/strings.xml b/java/com/android/incallui/incall/impl/res/values-fa/strings.xml
index a070116..a26ac75 100644
--- a/java/com/android/incallui/incall/impl/res/values-fa/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-fa/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"تماس ویدئویی"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"درحال انتظار"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"افزودن تماس"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"بی‌صدا کردن"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"پایان تماس"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"صفحه کلید"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"بلندگو"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"، فعال است"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"، غیرفعال است"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ادغام"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"مدیریت"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"مدیریت تماس‌گیرندگان"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"جابه‌جایی"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"صدا"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"یادداشت ارسال شد"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-fi/strings.xml b/java/com/android/incallui/incall/impl/res/values-fi/strings.xml
index d81bfbf..9ae5348 100644
--- a/java/com/android/incallui/incall/impl/res/values-fi/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-fi/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videopuhelu"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Pitoon"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Lisää puhelu"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Mykistä"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Päätä puhelu"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Näppäimistö"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Kaiutin"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", käytössä"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ei käytössä"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Yhdistä"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Hallinnoi"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Hallinnoi soittajia"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Vaihda"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ääni"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Muistiinpano lähetettiin."</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-fr-rCA/strings.xml b/java/com/android/incallui/incall/impl/res/values-fr-rCA/strings.xml
index 1278bce..cff6745 100644
--- a/java/com/android/incallui/incall/impl/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-fr-rCA/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Appel vidéo"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"En attente"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Autre appel"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Couper son"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Raccrocher"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Clavier"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Haut-parleur"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activé"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", désactivé"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Fusionner"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gérer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gérer les appels"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Permuter"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Son"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note envoyée"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-fr/strings.xml b/java/com/android/incallui/incall/impl/res/values-fr/strings.xml
index 5532032..14e92be 100644
--- a/java/com/android/incallui/incall/impl/res/values-fr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-fr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Appel vidéo"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"En attente"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Autre appel"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Couper micro"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Raccrocher"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Clavier"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Haut-parleur"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activé"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", désactivé"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Fusionner"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gérer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gérer les appelants"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Permuter"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Son"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note envoyée"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-gl/strings.xml b/java/com/android/incallui/incall/impl/res/values-gl/strings.xml
index ec99b7c..4b399f4 100644
--- a/java/com/android/incallui/incall/impl/res/values-gl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-gl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videochamada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"En espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Eng. chamada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ignorar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Finalizar chamada"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altofalante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"activado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"desactivado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Combinar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Xestionar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Xestionar emisores de chamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Cambiar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Son"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Enviouse a nota"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-gu/strings.xml b/java/com/android/incallui/incall/impl/res/values-gu/strings.xml
index fb3999c..438f0f3 100644
--- a/java/com/android/incallui/incall/impl/res/values-gu/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-gu/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"વિડિઓ કૉલ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"હોલ્ડ કરો"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"કૉલ ઉમેરો"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"મ્યૂટ કરો"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"કૉલ સમાપ્ત કરો"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"કીપેડ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"સ્પીકર"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ચાલુ છે"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", બંધ છે"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"મર્જ કરો"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"સંચાલિત કરો"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"કૉલર્સને સંચાલિત કરો"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"સ્વેપ કરો"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ધ્વનિ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"નોંધ મોકલી"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-h580dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-h580dp/dimens.xml
deleted file mode 100644
index 1f37cd5..0000000
--- a/java/com/android/incallui/incall/impl/res/values-h580dp/dimens.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <dimen name="incall_avatar_size">88dp</dimen>
-</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-h600dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-h600dp/dimens.xml
new file mode 100644
index 0000000..904aed2
--- /dev/null
+++ b/java/com/android/incallui/incall/impl/res/values-h600dp/dimens.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2016 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
+  -->
+
+<resources>
+  <dimen name="incall_avatar_size">88dp</dimen>
+</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-h580dp/styles.xml b/java/com/android/incallui/incall/impl/res/values-h650dp/styles.xml
similarity index 100%
rename from java/com/android/incallui/incall/impl/res/values-h580dp/styles.xml
rename to java/com/android/incallui/incall/impl/res/values-h650dp/styles.xml
diff --git a/java/com/android/incallui/incall/impl/res/values-hi/strings.xml b/java/com/android/incallui/incall/impl/res/values-hi/strings.xml
index 6a7538d..39e6e6b 100644
--- a/java/com/android/incallui/incall/impl/res/values-hi/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-hi/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"वीडियो कॉल"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"होल्ड करें"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"कॉल जोड़ें"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"म्यूट करें"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"कॉल समाप्त करें"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"कीपैड"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"स्‍पीकर"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", चालू है"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", बंद है"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"एक बनाएं"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"प्रबंधित करें"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"कॉलर प्रबंधित करें"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"स्वैप करें"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ध्वनि"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"नोट भेज दिया गया है"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-hr/strings.xml b/java/com/android/incallui/incall/impl/res/values-hr/strings.xml
index fc431b3..e440028 100644
--- a/java/com/android/incallui/incall/impl/res/values-hr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-hr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videopoziv"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Pauziraj"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj poziv"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Isklj. zvuk"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Prekini poziv"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tipkovnica"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Zvučnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", uključeno"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", isključeno"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Spoji"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Upravljanje"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Upravljaj pozivateljima"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zamijeni"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Bilješka je poslana"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-hu/strings.xml b/java/com/android/incallui/incall/impl/res/values-hu/strings.xml
index 194c348..e63ce59 100644
--- a/java/com/android/incallui/incall/impl/res/values-hu/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-hu/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videohívás"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Várakoztatás"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Hívás felv."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Némítás"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Hívás vége"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Billentyűzet"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Hangszóró"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", be"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ki"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Egyesítés"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Kezelés"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Hívók kezelése"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Csere"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Hang"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Üzenet elküldve"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-hy/strings.xml b/java/com/android/incallui/incall/impl/res/values-hy/strings.xml
index 0e8054e..ce395e7 100644
--- a/java/com/android/incallui/incall/impl/res/values-hy/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-hy/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Տեսազանգ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Պահել զանգը"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Ավելացնել զանգ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Անջատել"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Ավարտել զանգը"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Ստեղնաշար"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Բարձրախոս"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", միացած է"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", անջատած է"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Միավորել"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Կառավարել"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Զանգողների կառավարում"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Փոխարկել"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ձայն"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Գրառումն ուղարկվեց"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-in/strings.xml b/java/com/android/incallui/incall/impl/res/values-in/strings.xml
index f429cb4..e9d738a 100644
--- a/java/com/android/incallui/incall/impl/res/values-in/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-in/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Tahan"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Tambahkan panggilan"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Bisukan"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Akhiri panggilan"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", aktif"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", Nonaktif"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Gabungkan"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Kelola"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Kelola penelepon"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Tukar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Suara"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Catatan telah dikirim"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-is/strings.xml b/java/com/android/incallui/incall/impl/res/values-is/strings.xml
index 9c3bf89..f262e3f 100644
--- a/java/com/android/incallui/incall/impl/res/values-is/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-is/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Myndsímtal"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Setja í bið"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Bæta við"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Hljóð af"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Ljúka"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Talnaborð"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Hátalari"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", kveikt"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", slökkt"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Sameina"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Stjórna"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Hafa umsjón með hringjendum"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Skipta milli"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Hljóð"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Glósa send"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-it/strings.xml b/java/com/android/incallui/incall/impl/res/values-it/strings.xml
index 1cfb0be..f29a702 100644
--- a/java/com/android/incallui/incall/impl/res/values-it/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-it/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videochiamata"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"In attesa"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Aggiungi chiamata"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Disattiva"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Termina chiamata"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastierino"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altoparlante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", attivo"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", non attivo"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Unisci"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gestisci"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gestisci chiamanti"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Scambia"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Audio"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota inviata"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-iw/strings.xml b/java/com/android/incallui/incall/impl/res/values-iw/strings.xml
index 2426fc8..bf08e3b 100644
--- a/java/com/android/incallui/incall/impl/res/values-iw/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-iw/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"שיחת וידאו"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"המתנה"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"הוסף שיחה"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"השתק"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"סיום השיחה"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"לוח חיוג"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"רמקול"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", מופעל"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", מושבת"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"מזג"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"נהל"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ניהול המתקשרים"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"החלף"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"צלילים"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ההערה נשלחה"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ja/strings.xml b/java/com/android/incallui/incall/impl/res/values-ja/strings.xml
index 9e313a0..b78ee20 100644
--- a/java/com/android/incallui/incall/impl/res/values-ja/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ja/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ビデオ通話"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"保留"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"通話を追加"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ミュート"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"通話を終了"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"キーパッド"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"スピーカー"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"がオンです"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"がオフです"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"統合"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"管理"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"発信者を管理"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"切り替え"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"音声"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"メモを送信しました"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ka/strings.xml b/java/com/android/incallui/incall/impl/res/values-ka/strings.xml
index d33af5a..f6926f3 100644
--- a/java/com/android/incallui/incall/impl/res/values-ka/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ka/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ვიდეოზარი"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"შეყოვნება"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ზარის დამატ."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"დადუმება"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ზარის დასრ."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"კლავიატურა"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"სპიკერი"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ჩართულია"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", გამორთულია"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"გაერთიანება"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"მართვა"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"აბონენტების მართვა"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"შენაცვლება"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ხმა"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ჩანიშვნა გაიგზავნა"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-kk/strings.xml b/java/com/android/incallui/incall/impl/res/values-kk/strings.xml
index db9c4f6..8da9982 100644
--- a/java/com/android/incallui/incall/impl/res/values-kk/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-kk/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Бейне қоңырау"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Күттіру"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Қоңырау қосу"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Дыбысын өшіру"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Қоңырауды аяқтау"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Пернетақта"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Динамик"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", қосулы"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", өшірулі"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Біріктіру"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Басқару"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Қоңырау шалушыларды басқару"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Ауыстыру"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Дыбыс"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Ескертпе жіберілді"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-km/strings.xml b/java/com/android/incallui/incall/impl/res/values-km/strings.xml
index 6596bdf..88e356a 100644
--- a/java/com/android/incallui/incall/impl/res/values-km/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-km/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ហៅ​ជា​វីដេអូ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"រង់ចាំ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"បន្ថែម​ការ​ហៅ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"បិទ​សំឡេង"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"បញ្ចប់​ការ​ហៅ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"បន្ទះ​​ចុច​លេខ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ឧបករណ៍​បំពង​សំឡេង"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", បាន​បើក"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", បានបិទ"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"បញ្ចូលគ្នា"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"គ្រប់គ្រង"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"គ្រប់គ្រងអ្នក​ហៅ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ប្ដូរ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"សំឡេង"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"បានផ្ញើចំណាំ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-kn/strings.xml b/java/com/android/incallui/incall/impl/res/values-kn/strings.xml
index c03ec09..ad29b6d 100644
--- a/java/com/android/incallui/incall/impl/res/values-kn/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-kn/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ಹೋಲ್ಡ್‌‌ ಮಾಡು"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ಕರೆಯನ್ನು ಸೇರಿಸಿ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ಮ್ಯೂಟ್ ಮಾಡಿ"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ಕರೆ ಅಂತ್ಯಗೊಳಿಸಿ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ಕೀಪ್ಯಾಡ್‌"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ಸ್ಪೀಕರ್‌"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ಆನ್ ಆಗಿದೆ"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ಆಫ್ ಆಗಿದೆ"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ವಿಲೀನಗೊಳಿಸು"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"ನಿರ್ವಹಿಸು"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ಕರೆದಾತರನ್ನು ನಿರ್ವಹಿಸಿ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ಸ್ವ್ಯಾಪ್‌ ಮಾಡು"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ಧ್ವನಿ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ಟಿಪ್ಪಣಿ ಕಳುಹಿಸಲಾಗಿದೆ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ko/strings.xml b/java/com/android/incallui/incall/impl/res/values-ko/strings.xml
index e701e77..f9bb20f 100644
--- a/java/com/android/incallui/incall/impl/res/values-ko/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ko/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"화상 통화"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"대기"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"통화 추가"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"음소거"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"통화 종료"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"키패드"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"스피커"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", 켜짐"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", 꺼짐"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"병합"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"관리"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"발신자 관리"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"전환"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"소리"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"메모가 전송되었습니다."</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ky/strings.xml b/java/com/android/incallui/incall/impl/res/values-ky/strings.xml
index e51d4c5..f00264d 100644
--- a/java/com/android/incallui/incall/impl/res/values-ky/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ky/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видео чалуу"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Күттүрүү"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Чалууну кошуу"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Үнүн өчүрүү"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Чалууну бүтүрүү"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Ном. тергич"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Катуу сүйлөткүч"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", күйүк"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", өчүк"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Бириктирүү"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Башкаруу"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Чалуучуларды башкаруу"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Алмаштыруу"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Добуш"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Билдирүү жөнөтүлдү"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-lo/strings.xml b/java/com/android/incallui/incall/impl/res/values-lo/strings.xml
index 52de3ff..2382f32 100644
--- a/java/com/android/incallui/incall/impl/res/values-lo/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-lo/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ໂທດ້ວຍວິດີໂອ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ພັກສາຍຊົ່ວຄາວ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ເພີ່ມການໂທ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ປີດສຽງ"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ວາງສາຍ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ແປ້ນກົດ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ລຳໂພງ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ເປີດຢູ່"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ປິດຢູ່"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ຮວມສາຍ"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"ຈັດການ"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ຈັດການຜູ້ໂທ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ສະຫຼັບສາຍ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ສຽງ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ສົ່ງບັນທຶກແລ້ວ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-lt/strings.xml b/java/com/android/incallui/incall/impl/res/values-lt/strings.xml
index 4cd0356..1a10884 100644
--- a/java/com/android/incallui/incall/impl/res/values-lt/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-lt/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Vaizdo skambutis"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Sulaikyti"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Pr. skambutį"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Nutildyti"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Baig. skamb."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klaviatūra"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Garsiakalbis"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", įjungtas"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", išjungtas"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Sujungti"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Tvarkyti"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Tvarkyti skambintojus"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Sukeisti"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Garsas"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Užrašas išsiųstas"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-lv/strings.xml b/java/com/android/incallui/incall/impl/res/values-lv/strings.xml
index 48f9ae0..c19e7c0 100644
--- a/java/com/android/incallui/incall/impl/res/values-lv/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-lv/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videozvans"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Aizturēt"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Pievienot zvanu"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Izslēgt"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Beigt zvanu"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Cipartast."</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Skaļrunis"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ieslēgts"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", izslēgts"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Apvienot"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Pārvaldīt"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Pārvaldīt zvanītājus"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Pārslēgt"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Skaņa"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Piezīme nosūtīta"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-mk/strings.xml b/java/com/android/incallui/incall/impl/res/values-mk/strings.xml
index 5a61de5..610a308 100644
--- a/java/com/android/incallui/incall/impl/res/values-mk/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-mk/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видеоповик"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"На чекање"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Додај повик"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Исклучи звук"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Заврши повик"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Тастатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Звучник"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", е вклучен"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", е исклучен"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Спои"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Управувај"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Управувајте со повикувачите"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Замени"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Белешката е испратена"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ml/strings.xml b/java/com/android/incallui/incall/impl/res/values-ml/strings.xml
index 00586ff..83c2989 100644
--- a/java/com/android/incallui/incall/impl/res/values-ml/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ml/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"വീഡിയോ കോള്‍"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ഹോള്‍ഡുചെയ്യുക"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"കോൾ ചേർക്കുക"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"മ്യൂട്ടുചെയ്യുക"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"കോള്‍ അവസാനിപ്പിക്കൂ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"കീപാഡ്"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"സ്പീക്കർ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ഓണാണ്"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ഓഫാണ്"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ലയിപ്പിക്കുക"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"മാനേജുചെയ്യുക"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"കോൾ ചെയ്യുന്നവരെ മാനേജുചെയ്യുക"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"സ്വാപ്പുചെയ്യുക"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ശബ്‌ദം"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"കുറിപ്പ് അയച്ചു"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-mn/strings.xml b/java/com/android/incallui/incall/impl/res/values-mn/strings.xml
index 085a405..9427d86 100644
--- a/java/com/android/incallui/incall/impl/res/values-mn/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-mn/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видео хурал"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Саатуулах"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Дуудлага нэмэх"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Дууг хаах"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Дуудлагыг таслах"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Товчлуур"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Чанга яригч"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", асаатай"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", унтраатай"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Нэгтгэх"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Удирдах"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Залгагчдыг удирдах"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Солих"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Дуу"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Тэмдэглэлийг илгээсэн"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-mr/strings.xml b/java/com/android/incallui/incall/impl/res/values-mr/strings.xml
index 8419233..194c192 100644
--- a/java/com/android/incallui/incall/impl/res/values-mr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-mr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"व्हिडिओ कॉल"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"होल्ड करा"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"कॉल जोडा"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"नि:शब्द करा"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"कॉल समाप्त करा"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"कीपॅड"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"स्पीकर"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", सुरू आहे"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", बंद आहे"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"विलीन करा"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"व्यवस्थापित करा"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"कॉलर व्यवस्थापित करा"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"अदलाबदल करा"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ध्वनी"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"टीप पाठविली"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ms/strings.xml b/java/com/android/incallui/incall/impl/res/values-ms/strings.xml
index c9db832..a918ded 100644
--- a/java/com/android/incallui/incall/impl/res/values-ms/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ms/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Pgln video"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Tunda"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Tambah pgln"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Redam"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Tamatkn pgln"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Pad kekunci"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Pmbsr suara"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", dihidupkan"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", Dimatikan"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Gabung"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Urus"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Urus pemanggil"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Silih"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Bunyi"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota dihantar"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-my/strings.xml b/java/com/android/incallui/incall/impl/res/values-my/strings.xml
index e0bfb8c..8007029 100644
--- a/java/com/android/incallui/incall/impl/res/values-my/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-my/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ဗီဒီယိုခေါ်ဆိုမှု"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ခဏရပ်ထားရန်"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ထပ်ခေါ်ရန်"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"အသံပိတ်ရန်"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ဖုန်းချရန်"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ခလုတ်ခုံ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"စပီကာ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"၊ ပွင့်နေသည်"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"၊ ပိတ်နေသည်"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ပေါင်းရန်"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"စီမံရန်"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ခေါ်ဆိုသူများကို စီမံခန့်ခွဲရန်"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ဖလှယ်ရန်"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"အသံ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"မှတ်စုပို့ပြီးပါပြီ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-nb/strings.xml b/java/com/android/incallui/incall/impl/res/values-nb/strings.xml
index 7520086..704384e 100644
--- a/java/com/android/incallui/incall/impl/res/values-nb/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-nb/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videosamtale"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Sett på vent"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Nytt anrop"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ignorer"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Avslutt samtalen"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatur"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Høyttaler"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"er på"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"er av"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Slå sammen"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Administrer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Håndter innringere"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Bytt"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Lyd"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notatet er sendt"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ne/strings.xml b/java/com/android/incallui/incall/impl/res/values-ne/strings.xml
index 6bcfb6d..beffa3e 100644
--- a/java/com/android/incallui/incall/impl/res/values-ne/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ne/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"भिडियो कल"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"होल्ड गर्ने"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"कल थप्नुहोस्"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"म्यूट गर्ने"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"कल अन्त्य गर्ने"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"किप्याड"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"स्पिकर"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", खुला छ"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", बन्द छ"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"मर्ज गर्ने"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"प्रबन्ध गर्ने"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"कल गर्ने व्यक्तिहरूलाई व्यवस्थित गर्नुहोस्"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"साट्नुहोस्"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"आवाज"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"टिपोट पठाइयो"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-nl/strings.xml b/java/com/android/incallui/incall/impl/res/values-nl/strings.xml
index 63f1ebd..e3c919e 100644
--- a/java/com/android/incallui/incall/impl/res/values-nl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-nl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videogespr."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"In wacht"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Oproep toev."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Dempen"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Oproep beëindigen"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Toetsenblok"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Luidspreker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is aan"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is uit"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Samenvoegen"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Beheren"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Bellers beheren"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Wisselen"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Geluid"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notitie verzonden"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-no/strings.xml b/java/com/android/incallui/incall/impl/res/values-no/strings.xml
index 7520086..704384e 100644
--- a/java/com/android/incallui/incall/impl/res/values-no/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-no/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videosamtale"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Sett på vent"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Nytt anrop"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ignorer"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Avslutt samtalen"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatur"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Høyttaler"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"er på"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"er av"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Slå sammen"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Administrer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Håndter innringere"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Bytt"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Lyd"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notatet er sendt"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pa/strings.xml b/java/com/android/incallui/incall/impl/res/values-pa/strings.xml
index 10a2865..d7e74ed 100644
--- a/java/com/android/incallui/incall/impl/res/values-pa/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pa/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ਰੋਕ ਕੇ ਰੱਖੋ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ਕਾਲ ਸ਼ਾਮਲ ਕਰੋ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ਮਿਊਟ ਕਰੋ"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ਕਾਲ ਖਤਮ ਕਰੋ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ਕੀਪੈਡ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ਸਪੀਕਰ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ਚਾਲੂ ਹੈ"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ਬੰਦ ਹੈ"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ਰਲਗੱਡ ਕਰੋ"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"ਪ੍ਰਬੰਧਨ ਕਰੋ"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ਕਾਲਰਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ਅਦਲੋ-ਬਦਲੋ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ਧੁਨੀ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ਨੋਟ-ਕਥਨ ਭੇਜਿਆ ਗਿਆ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pl/strings.xml b/java/com/android/incallui/incall/impl/res/values-pl/strings.xml
index 4bf6a58..9971d75 100644
--- a/java/com/android/incallui/incall/impl/res/values-pl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Rozmowa wid."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Wstrzymaj"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj poł."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Wycisz"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Zakończ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klawiatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Głośnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"– włączony"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"– wyłączony"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Scal"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Zarządzaj"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Zarządzaj rozmówcami"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Przełącz"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Dźwięk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notatka wysłana"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pt-rBR/strings.xml b/java/com/android/incallui/incall/impl/res/values-pt-rBR/strings.xml
index 7ca6b6b..538c20c 100644
--- a/java/com/android/incallui/incall/impl/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pt-rBR/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videocham."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Em espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Adic chamada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Desativar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Encerrar"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Alto-falante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"ativado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"desativado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Mesclar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gerenciar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gerenciar os autores das chamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Trocar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Som"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota enviada"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pt-rPT/strings.xml b/java/com/android/incallui/incall/impl/res/values-pt-rPT/strings.xml
index 750e57e..e3b98bb 100644
--- a/java/com/android/incallui/incall/impl/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pt-rPT/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videochamada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Em espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Adic. cham."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Desativ. som"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Terminar chamada"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altifalante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ativado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desativado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Unir"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gerir"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gerir autores das chamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Alternar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Som"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota enviada"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pt/strings.xml b/java/com/android/incallui/incall/impl/res/values-pt/strings.xml
index 7ca6b6b..538c20c 100644
--- a/java/com/android/incallui/incall/impl/res/values-pt/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pt/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videocham."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Em espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Adic chamada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Desativar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Encerrar"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Alto-falante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"ativado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"desativado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Mesclar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gerenciar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gerenciar os autores das chamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Trocar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Som"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota enviada"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ro/strings.xml b/java/com/android/incallui/incall/impl/res/values-ro/strings.xml
index 1f93da9..81dcdf3 100644
--- a/java/com/android/incallui/incall/impl/res/values-ro/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ro/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Apel video"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"În așteptare"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Încă un apel"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Dezactivați"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Încheiați"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatură"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Difuzor"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", e activat"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", dezactivat"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Îmbinați"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gestionați"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gestionați apelanții"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Schimbați"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sunet"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota a fost trimisă"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ru/strings.xml b/java/com/android/incallui/incall/impl/res/values-ru/strings.xml
index 89192c3..274f8ff 100644
--- a/java/com/android/incallui/incall/impl/res/values-ru/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ru/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видеовызов"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Удерживать"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Добавить вызов"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Выкл. звук"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Завершить вызов"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Клавиатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Динамик"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", включен"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", отключен"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Объединить"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Управление"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Управление абонентами"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Переключить"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Сообщение отправлено"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-si/strings.xml b/java/com/android/incallui/incall/impl/res/values-si/strings.xml
index 209bb77..a600c21 100644
--- a/java/com/android/incallui/incall/impl/res/values-si/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-si/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"වීඩියෝ ඇමතුම"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"රඳවා ගන්න"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ඇමතුම එක් ක."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"නිහඬ කරන්න"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ඇමතුම නිම ක."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"යතුරු පුවරුව"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ස්පීකරය"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", සක්‍රියයි"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", අක්‍රියයි"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ඒකාබද්ධ කර."</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"කළමනාකරණය ක."</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"අමතන්නන් කළමනාකරණය කරන්න"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"මාරු කරන්න"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"හඬ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"සටහන යවන ලදී"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sk/strings.xml b/java/com/android/incallui/incall/impl/res/values-sk/strings.xml
index 4e06aee..d74d19e 100644
--- a/java/com/android/incallui/incall/impl/res/values-sk/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sk/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videohovor"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Podržať"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Pridať hovor"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Vypnúť zvuk"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Ukonč. hovor"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klávesnica"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Reproduktor"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", je zapnutý"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", je vypnutý"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Zlúčiť"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Spravovať"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Spravovať volajúcich"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zameniť"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Poznámka bola odoslaná"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sl/strings.xml b/java/com/android/incallui/incall/impl/res/values-sl/strings.xml
index 7cdb6c8..782ce44 100644
--- a/java/com/android/incallui/incall/impl/res/values-sl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videoklic"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Zadrži"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj klic"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Izklopi zvok"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Končaj klic"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tipkovnica"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Zvočnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", vklopljen"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", izklopljen"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Združi"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Upravljanje"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Upravljanje klicateljev"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zamenjaj"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvok"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Opomba je poslana"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sq/strings.xml b/java/com/android/incallui/incall/impl/res/values-sq/strings.xml
index 9ba18b5..a0fca36 100644
--- a/java/com/android/incallui/incall/impl/res/values-sq/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sq/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video tel."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Në pritje"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Shto telef."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Hiqi zërin"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Mbyll tel."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Blloku i tasteve"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altoparlant"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", është aktiv"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", është joaktiv"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Shkri"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Menaxho"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Menaxho telefonuesit"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Shkëmbe"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Tingulli"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Shënimi u dërgua"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sr/strings.xml b/java/com/android/incallui/incall/impl/res/values-sr/strings.xml
index 56a9684..ec70451 100644
--- a/java/com/android/incallui/incall/impl/res/values-sr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видео позив"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"На чекање"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Додај позив"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Искључи звук"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Заврши позив"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Тастатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Звучник"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", укључен"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", искључен"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Обједини"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Управљај"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Управљајте позиваоцима"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Замени"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Белешка је послата"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sv/strings.xml b/java/com/android/incallui/incall/impl/res/values-sv/strings.xml
index 27d83b7..ded4522 100644
--- a/java/com/android/incallui/incall/impl/res/values-sv/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sv/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videosamtal"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Parkera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Lägg t samt."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ljud av"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Avsl. samtal"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Knappsats"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Högtalare"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", är på"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", är av"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Sammanfoga"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Hantera"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Hantera uppringare"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Växla"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ljud"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Anteckning skickad"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sw/strings.xml b/java/com/android/incallui/incall/impl/res/values-sw/strings.xml
index 136fe17..df634f4 100644
--- a/java/com/android/incallui/incall/impl/res/values-sw/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sw/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Hangout ya video"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Shikilia"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Ongeza simu"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Zima maikrofoni"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Kata simu"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Vitufe vya Simu"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Spika"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", kimewashwa"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", kimezimwa"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Unganisha"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Dhibiti"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Dhibiti wanaopiga simu"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Badili"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sauti"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Dokezo limetumwa"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ta/strings.xml b/java/com/android/incallui/incall/impl/res/values-ta/strings.xml
index 342f8d0..5c94abf 100644
--- a/java/com/android/incallui/incall/impl/res/values-ta/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ta/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"வீடியோ கால்"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ஹோல்டில் வை"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"அழைப்பை சேர்"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"முடக்கு"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"அழைப்பை முடி"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"விசைத்தளம்"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ஸ்பீக்கர்"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ஆன்"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ஆஃப்"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"இணை"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"நிர்வகி"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"அழைப்பாளர்களை நிர்வகிக்கும்"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"மாற்று"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ஒலி"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"குறிப்பு அனுப்பப்பட்டது"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-te/strings.xml b/java/com/android/incallui/incall/impl/res/values-te/strings.xml
index 0048956..0cb3fb8 100644
--- a/java/com/android/incallui/incall/impl/res/values-te/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-te/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"వీడియో కాల్"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"హోల్డ్ చేయి"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"కాల్ జోడించు"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"మ్యూట్ చేయి"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"కాల్ ముగించు"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"కీప్యాడ్"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"స్పీకర్"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ఆన్‌లో ఉంది"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ఆఫ్‌లో ఉంది"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"విలీనం చేయి"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"నిర్వహించు"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"కాలర్‌లను నిర్వహిస్తుంది"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"మార్చు"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"శబ్దం"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"గమనిక పంపబడింది"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-th/strings.xml b/java/com/android/incallui/incall/impl/res/values-th/strings.xml
index a740288..0929cfc 100644
--- a/java/com/android/incallui/incall/impl/res/values-th/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-th/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"แฮงเอาท์วิดีโอ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"พักสาย"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"เพิ่มการโทร"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ปิดเสียง"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"วางสาย"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ปุ่มกด"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ลำโพง"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"เปิดอยู่"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"ปิดอยู่"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"รวม"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"จัดการ"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"จัดการผู้โทร"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"สลับ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"เสียง"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ส่งโน้ตแล้ว"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-tl/strings.xml b/java/com/android/incallui/incall/impl/res/values-tl/strings.xml
index 46ff797..1ac2ef8 100644
--- a/java/com/android/incallui/incall/impl/res/values-tl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-tl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"I-hold"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Mag-add: tawag"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"I-mute"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Tapusin ang tawag"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">",ay On"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ay Off"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"I-merge"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Pamahalaan"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Pamahalaan ang mga tumatawag"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Pagpalitin"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Tunog"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Naipadala ang tala"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-tr/strings.xml b/java/com/android/incallui/incall/impl/res/values-tr/strings.xml
index 89ca330..241b694 100644
--- a/java/com/android/incallui/incall/impl/res/values-tr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-tr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Görü. görüş."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Beklemeye al"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Çağrı ekle"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Sesi kapat"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Çğryı sonldr"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tuş takımı"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Hoparlör"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", Açık"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", Kapalı"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Birleştir"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Yönet"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Arayanları yönetin"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Değiştir"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ses"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Not gönderildi"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-uk/strings.xml b/java/com/android/incallui/incall/impl/res/values-uk/strings.xml
index 516bcb7..1821556 100644
--- a/java/com/android/incallui/incall/impl/res/values-uk/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-uk/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Відеодзвінок"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Утримувати"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Дод. виклик"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Без звуку"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Завер. викл."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Клавіатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Динамік"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", увімкнено"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", вимкнено"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Об’єднати"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Керувати"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Керувати абонентами"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Поміняти"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Нотатку надіслано"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ur/strings.xml b/java/com/android/incallui/incall/impl/res/values-ur/strings.xml
index 53ba190..fed0af6 100644
--- a/java/com/android/incallui/incall/impl/res/values-ur/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ur/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ویڈیو کال"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ہولڈ کریں"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"کال شامل کریں"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"خاموش کریں"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"کال ختم کریں"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"کی پیڈ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"اسپیکر"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"، آن ہے"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"، آف ہے"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ضم کریں"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"نظم کریں"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"کالرز کا نظم کریں"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"تبادلہ کریں"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"آواز"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"نوٹ بھیج دیا گیا"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-uz/strings.xml b/java/com/android/incallui/incall/impl/res/values-uz/strings.xml
index 8818489..7d6af27 100644
--- a/java/com/android/incallui/incall/impl/res/values-uz/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-uz/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video qo‘n."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Pauza"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Chaqiruv"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ovozsiz"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Tugatish"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klaviatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Karnay"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", yoniq"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", o‘chiq"</string>
-    <string name="incall_label_merge" msgid="720076442985913175">"Birlashtir."</string>
+    <string name="incall_label_merge" msgid="720076442985913175">"Birlashtirish"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Boshqarish"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Qo‘ng‘iroq qiluvchilarni boshqarish"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Almashish"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ovoz"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Qayd yuborildi"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-vi/strings.xml b/java/com/android/incallui/incall/impl/res/values-vi/strings.xml
index 29f85ef..42e320a 100644
--- a/java/com/android/incallui/incall/impl/res/values-vi/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-vi/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Gọi điện video"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Giữ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Thêm cuộc gọi"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Tắt tiếng"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Kết thúc cuộc gọi"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Bàn phím"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Loa"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", đang bật"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", đang tắt"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Hợp nhất"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Quản lý"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Quản lý người gọi"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Hoán đổi"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Âm thanh"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Đã gửi ghi chú"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-w260dp-h520dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-w260dp-h520dp/dimens.xml
deleted file mode 100644
index e73eb93..0000000
--- a/java/com/android/incallui/incall/impl/res/values-w260dp-h520dp/dimens.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <dimen name="incall_button_horizontal_padding">16dp</dimen>
-  <dimen name="incall_button_vertical_padding">16dp</dimen>
-  <dimen name="incall_labeled_button_size">64dp</dimen>
-  <dimen name="tools_button_height">92dp</dimen>
-</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-w260dp-h580dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-w260dp-h580dp/dimens.xml
new file mode 100644
index 0000000..834ea2f
--- /dev/null
+++ b/java/com/android/incallui/incall/impl/res/values-w260dp-h580dp/dimens.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<resources>
+  <dimen name="incall_button_horizontal_padding">16dp</dimen>
+  <dimen name="incall_button_vertical_padding">16dp</dimen>
+  <dimen name="incall_labeled_button_size">64dp</dimen>
+  <dimen name="tools_button_height">92dp</dimen>
+</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-w300dp-h540dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-w300dp-h540dp/dimens.xml
deleted file mode 100644
index 502ae72..0000000
--- a/java/com/android/incallui/incall/impl/res/values-w300dp-h540dp/dimens.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <dimen name="incall_button_horizontal_padding">32dp</dimen>
-  <dimen name="incall_button_vertical_padding">32dp</dimen>
-</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-w300dp-h620dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-w300dp-h620dp/dimens.xml
new file mode 100644
index 0000000..c7ac35e
--- /dev/null
+++ b/java/com/android/incallui/incall/impl/res/values-w300dp-h620dp/dimens.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<resources>
+  <dimen name="incall_button_horizontal_padding">32dp</dimen>
+  <dimen name="incall_button_vertical_padding">32dp</dimen>
+</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-zh-rCN/strings.xml b/java/com/android/incallui/incall/impl/res/values-zh-rCN/strings.xml
index ec64045..f0cca90 100644
--- a/java/com/android/incallui/incall/impl/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-zh-rCN/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"视频通话"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"保持"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"添加通话"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"静音"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"结束通话"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"拨号键盘"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"免提"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"，已开启"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"，已关闭"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"合并"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"管理"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"管理来电者"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"切换"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"声音"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"已发送备注"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-zh-rHK/strings.xml b/java/com/android/incallui/incall/impl/res/values-zh-rHK/strings.xml
index 63cd6d8..c38ef35 100644
--- a/java/com/android/incallui/incall/impl/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-zh-rHK/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"視像通話"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"保留"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"新增通話"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"靜音"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"結束通話"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"小鍵盤"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"揚聲器"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"，已開啟"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"，已關閉"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"合併"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"管理"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"管理來電者"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"切換"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"音效"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"已傳送筆記"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-zh-rTW/strings.xml b/java/com/android/incallui/incall/impl/res/values-zh-rTW/strings.xml
index be3103b..c04b830 100644
--- a/java/com/android/incallui/incall/impl/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-zh-rTW/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"視訊通話"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"保留"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"新增通話"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"靜音"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"結束通話"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"撥號鍵盤"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"擴音模式"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"，已開啟"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"，已關閉"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"合併"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"管理"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"管理來電者"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"切換"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"音訊"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"備註已送出"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-zu/strings.xml b/java/com/android/incallui/incall/impl/res/values-zu/strings.xml
index df3f794..a23a1d5 100644
--- a/java/com/android/incallui/incall/impl/res/values-zu/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-zu/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 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
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Ikholi yevidiyo ye-Hangout"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Bamba"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Engeza ikholi"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Thulisa"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Qeda ikholi"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Ikhiphedi"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Isipikha"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ivuliwe"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ivaliwe"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Hlanganisa"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Phatha"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Phatha abashayi"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Shintsha"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Umsindo"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Inothi lithunyelwe"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values/strings.xml b/java/com/android/incallui/incall/impl/res/values/strings.xml
index 054ca96..2b30dfa 100644
--- a/java/com/android/incallui/incall/impl/res/values/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values/strings.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
 <resources>
 
   <!-- Button shown during a phone call to upgrade to video.
@@ -17,14 +32,14 @@
      [CHAR LIMIT=12] -->
   <string name="incall_label_mute">Mute</string>
 
+  <!-- Button shown during a phone call to end the call.
+     [CHAR LIMIT=12] -->
+  <string name="incall_label_end_call">End call</string>
+
   <!-- Button shown during a phone call to show the dialpad.
      [CHAR LIMIT=12] -->
   <string name="incall_label_dialpad">Keypad</string>
 
-  <!-- Button shown during a phone to route audio from earpiece to speaker phone.
-     [CHAR LIMIT=12] -->
-  <string name="incall_label_speaker">Speaker</string>
-
   <!-- Talkback text for speaker button status. [CHAR LIMIT=12] -->
   <string name="incall_talkback_speaker_on">, is on</string>
 
@@ -45,12 +60,9 @@
      [CHAR LIMIT=12] -->
   <string name="incall_label_swap">Swap</string>
 
-  <!-- Button shown during a phone to switch the audio route.
-     [CHAR LIMIT=12] -->
-  <string name="incall_label_audio">Sound</string>
 
   <!-- Used to inform the user that the note associated with an outgoing call has been sent.
        [CHAR LIMIT=32] -->
   <string name="incall_note_sent">Note sent</string>
 
-</resources>
\ No newline at end of file
+</resources>
diff --git a/java/com/android/incallui/incall/protocol/PrimaryCallState.java b/java/com/android/incallui/incall/protocol/PrimaryCallState.java
index 2ae6a18..26dd388 100644
--- a/java/com/android/incallui/incall/protocol/PrimaryCallState.java
+++ b/java/com/android/incallui/incall/protocol/PrimaryCallState.java
@@ -44,6 +44,7 @@
   public final boolean isVoiceMailNumber;
   public final boolean isRemotelyHeld;
   public final boolean isBusinessNumber;
+  public final boolean supportsCallOnHold;
 
   // TODO: Convert to autovalue. b/34502119
   public static PrimaryCallState createEmptyPrimaryCallState() {
@@ -67,7 +68,8 @@
         0,
         false /* isVoiceMailNumber */,
         false /* isRemotelyHeld */,
-        false /* isBusinessNumber */);
+        false /* isBusinessNumber */,
+        true /* supportsCallOnHold */);
   }
 
   public PrimaryCallState(
@@ -90,7 +92,8 @@
       long connectTimeMillis,
       boolean isVoiceMailNumber,
       boolean isRemotelyHeld,
-      boolean isBusinessNumber) {
+      boolean isBusinessNumber,
+      boolean supportsCallOnHold) {
     this.state = state;
     this.isVideoCall = isVideoCall;
     this.sessionModificationState = sessionModificationState;
@@ -111,6 +114,7 @@
     this.isVoiceMailNumber = isVoiceMailNumber;
     this.isRemotelyHeld = isRemotelyHeld;
     this.isBusinessNumber = isBusinessNumber;
+    this.supportsCallOnHold = supportsCallOnHold;
   }
 
   @Override
diff --git a/java/com/android/incallui/incall/protocol/PrimaryInfo.java b/java/com/android/incallui/incall/protocol/PrimaryInfo.java
index c170950..761dd9a 100644
--- a/java/com/android/incallui/incall/protocol/PrimaryInfo.java
+++ b/java/com/android/incallui/incall/protocol/PrimaryInfo.java
@@ -104,13 +104,14 @@
     return String.format(
         Locale.US,
         "PrimaryInfo, number: %s, name: %s, location: %s, label: %s, "
-            + "photo: %s, photoType: %d, isPhotoVisible: %b",
+            + "photo: %s, photoType: %d, isPhotoVisible: %b, MultimediaData: %s",
         LogUtil.sanitizePhoneNumber(number),
         LogUtil.sanitizePii(name),
         LogUtil.sanitizePii(location),
         label,
         photo,
         photoType,
-        isContactPhotoShown);
+        isContactPhotoShown,
+        multimediaData);
   }
 }
diff --git a/java/com/android/incallui/res/anim/on_going_call.xml b/java/com/android/incallui/res/anim/on_going_call.xml
deleted file mode 100644
index 3a2e2ba..0000000
--- a/java/com/android/incallui/res/anim/on_going_call.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
-  android:oneshot="false">
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_01"
-    android:duration="200"/>
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_02"
-    android:duration="200"/>
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_03"
-    android:duration="200"/>
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_04"
-    android:duration="200"/>
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_05"
-    android:duration="200"/>
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_06"
-    android:duration="200"/>
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_07"
-    android:duration="200"/>
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_08"
-    android:duration="200"/>
-  <item
-    android:drawable="@drawable/ic_ongoing_phone_24px_09"
-    android:duration="200"/>
-</animation-list>
\ No newline at end of file
diff --git a/java/com/android/incallui/res/drawable-hdpi/img_conference.png b/java/com/android/incallui/res/drawable-hdpi/img_conference.png
deleted file mode 100644
index 3d9f683..0000000
--- a/java/com/android/incallui/res/drawable-hdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-mdpi/img_conference.png b/java/com/android/incallui/res/drawable-mdpi/img_conference.png
deleted file mode 100644
index 0694dbd..0000000
--- a/java/com/android/incallui/res/drawable-mdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xhdpi/img_conference.png b/java/com/android/incallui/res/drawable-xhdpi/img_conference.png
deleted file mode 100644
index b0dbcc2..0000000
--- a/java/com/android/incallui/res/drawable-xhdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxhdpi/img_conference.png b/java/com/android/incallui/res/drawable-xxhdpi/img_conference.png
deleted file mode 100644
index a8dba5e..0000000
--- a/java/com/android/incallui/res/drawable-xxhdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxxhdpi/img_conference.png b/java/com/android/incallui/res/drawable-xxxhdpi/img_conference.png
deleted file mode 100644
index eb42b55..0000000
--- a/java/com/android/incallui/res/drawable-xxxhdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
deleted file mode 100644
index 78b2876..0000000
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ /dev/null
@@ -1,21 +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
-  -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
diff --git a/java/com/android/incallui/res/drawable/on_going_call.xml b/java/com/android/incallui/res/drawable/on_going_call.xml
new file mode 100644
index 0000000..438ba82
--- /dev/null
+++ b/java/com/android/incallui/res/drawable/on_going_call.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+
+<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
+  android:oneshot="false">
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_01"
+    android:duration="200"/>
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_02"
+    android:duration="200"/>
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_03"
+    android:duration="200"/>
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_04"
+    android:duration="200"/>
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_05"
+    android:duration="200"/>
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_06"
+    android:duration="200"/>
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_07"
+    android:duration="200"/>
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_08"
+    android:duration="200"/>
+  <item
+    android:drawable="@drawable/ic_ongoing_phone_24px_09"
+    android:duration="200"/>
+</animation-list>
diff --git a/java/com/android/incallui/res/values-af/strings.xml b/java/com/android/incallui/res/values-af/strings.xml
index 5dacaaa..7d260c3 100644
--- a/java/com/android/incallui/res/values-af/strings.xml
+++ b/java/com/android/incallui/res/values-af/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Gemiste oproep vanaf <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Oproep aan die gang"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Voortdurende werkoproep"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Voortdurende Wi-Fi-oproep"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Voortdurende Wi-Fi-werkoproep"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Voortdurende Wi-Fi-oproep"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Voortdurende Wi-Fi-werkoproep"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Hou aan"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Inkomende oproep"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Inkomende oproep met foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Belangrike inkomende oproep met foto, boodskap en ligging"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Belangrike inkomende oproep met aanhegsels"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Inkomende werkoproep"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Inkomende Wi-Fi-oproep"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Inkomende Wi-Fi-werkoproep"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Inkomende Wi-Fi-oproep"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Inkomende Wi-Fi-werkoproep"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Inkomende verdagte strooipos-oproep"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Inkomende videoversoek"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Geen diens nie"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Neem video-oproep"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Om \'n oproep te maak, skakel eers vliegtuigmodus af."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nie geregistreer op netwerk nie."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Sellulêre netwerk nie beskikbaar nie."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiele netwerk nie beskikbaar nie."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Voer \'n geldige nommer in om \'n oproep te maak."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan nie bel nie."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Begin MMI-volgorde…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Beëindig oproep"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferensie-oproep"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Besig met oproep"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Gaan voort met oproep deur sellulêre data te gebruik …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Kon nie na Wi-Fi-netwerk oorskakel nie"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video-oproep sal op sellulêre netwerk bly. Standaard datakoste kan dalk geld."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Gaan voort met oproep deur mobiele data te gebruik ..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Kon nie na Wi-Fi-netwerk oorskakel nie"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video-oproep sal op mobiele netwerk bly. Standaard datakoste kan dalk geld."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Moenie dit weer wys nie"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-am/strings.xml b/java/com/android/incallui/res/values-am/strings.xml
index 249447f..f09fd63 100644
--- a/java/com/android/incallui/res/values-am/strings.xml
+++ b/java/com/android/incallui/res/values-am/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"ያልተመለሰ ጥሪ ከ<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"እየተካሄደ ያለ ጥሪ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"በሂደት ላይ ያለ የሥራ ጥሪ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"በሂደት ላይ ያለ የWi-Fi ጥሪ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"በሂደት ላይ ያለ የWi-Fi የሥራ ጥሪ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"በሂደት ላይ ያለ የWi-Fi ጥሪ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"በሂደት ላይ ያለ የWi-Fi የሥራ ጥሪ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ያዝናቆይ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ገቢ ጥሪ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ገቢ ጥሪ ከፎቶ ጋር"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"አስፈላጊ ገቢ ጥሪ ከፎቶ፣ መልዕክት እና አካባቢ ጋር"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"አስፈላጊ ገቢ ጥሪ ከአባሪ ጋር"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ገቢ የሥራ ጥሪ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ገቢ የWi-Fi ጥሪ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ገቢ የWi-Fi የሥራ ጥሪ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ገቢ የWi-Fi ጥሪ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ገቢ የWi-Fi የሥራ ጥሪ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"መጪ የተጠረጠረ የአይፈለጌ መልዕክት ጥሪ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ገቢ የቪዲዮ ጥያቄ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ምንም አገልግሎት የለም"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"የቪዲዮ ጥሪ ውሰድ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ለመደወል፣ መጀመሪያየአውሮፕላኑን ሁነታ አጥፋ።"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"በአውታረ መረቡ ላይ አልተመዘገበም።"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"የተንቀሳቃሽ ስልክ አውታረ መረብ አይገኝም።"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"የተንቀሳቃሽ ስልክ አውታረ መረብ አይገኝም።"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"አንድ ጥሪ ለማድረግ የሚሰራ ቁጥር ያስገቡ።"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"መደወል አልተቻለም።"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"የMMI sequence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ጥሪ ጨርስ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"የስብሰባ ጥሪ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"በጥሪ ላይ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ሴሉላር ውሂብ በመጠቀም ጥሪውን በመቀጠል ላይ…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"ወደ Wi-Fi አውታረ መረብ መቀየር አልተቻለም።"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"የቪዲዮ ጥሪ በሴሉላር አውታረመረቡ ላይ ይቆያል። መደበኛ የውሂብ ክፍያዎች ተፈጻሚ ሊሆኑ ይችላሉ።"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"የተንቀሳቃሽ ስልክ ውሂብን በመጠቀም ጥሪውን በመቀጠል ላይ…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ወደ Wi-Fi አውታረ መረብ መቀየር አልተቻለም"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"የቪዲዮ ጥሪ በተንቀሳቃሽ ስልክ አውታረ መረብ ላይ ይቆያል። መደበኛ የውሂብ ክፍያዎች ተፈጻሚ ሊሆኑ ይችላሉ።"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ይህን በድጋሚ አታሳይ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ar/strings.xml b/java/com/android/incallui/res/values-ar/strings.xml
index 7c3585c..3928291 100644
--- a/java/com/android/incallui/res/values-ar/strings.xml
+++ b/java/com/android/incallui/res/values-ar/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"مكالمة فائتة من <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"مكالمة حالية"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"مكالمة عمل جارية"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"‏اتصال جارٍ عبر Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"‏مكالمة عمل جارية عبر اتصال Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"‏اتصال جارٍ عبر Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"‏مكالمة عمل جارية عبر اتصال Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"معلقة"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"مكالمة واردة"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"مكالمة واردة مع صورة"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"مكالمة واردة مهمة مع صورة ورسالة وموقع"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"مكالمة واردة مهمة مع مرفقات"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"مكالمة عمل واردة"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"‏اتصال وارد عبر Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"‏مكالمة عمل واردة عبر اتصال Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"‏اتصال وارد عبر Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"‏مكالمة عمل واردة عبر اتصال Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"مكالمة واردة يشتبه في كونها غير مرغوب فيها"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"طلب فيديو وارد"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"لا خدمة"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"الرد على مكالمة فيديو"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"لإجراء مكالمة، أوقف تشغيل وضع الطائرة أولاً."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"غير مسجل على الشبكة."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"شبكة الجوّال غير متاحة."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"شبكة الجوال غير متاحة."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"لإجراء مكالمة، أدخل رقمًا صالحًا."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"يتعذر الاتصال."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"‏جارٍ بدء تسلسل MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"إنهاء الاتصال"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"مكالمة جماعية"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"قيد الاتصال"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"جارٍ استكمال المكالمة باستخدام بيانات الجوّال…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"‏تعذر التبديل إلى شبكة Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ستظل مكالمة الفيديو على شبكة الجوّال. قد يتم فرض رسوم على البيانات القياسية للشبكة."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"جارٍ استكمال المكالمة باستخدام بيانات الجوّال…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"‏تعذر التبديل إلى شبكة Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ستظل مكالمة الفيديو جارية على شبكة الجوال. قد يتم تطبيق رسوم قياسية على استخدام البيانات."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"عدم إظهار هذا مرة أخرى"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-az/strings.xml b/java/com/android/incallui/res/values-az/strings.xml
index dc43014..168dd07 100644
--- a/java/com/android/incallui/res/values-az/strings.xml
+++ b/java/com/android/incallui/res/values-az/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> tərəfindən zəng buraxılıb"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Davam edən zəng"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Davam edən iş çağrısı"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Davam edən Wi-Fi zəngi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Davam edən Wi-Fi iş çağrısı"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Davam edən Wi-Fi zəngi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Davam edən Wi-Fi iş zəngi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Gözləmə mövqeyində"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Gələn zəng"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Foto ilə gələn zəng"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Foto, mesaj və məkan ilə gələn vacib zəng"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Qoşma ilə gələn vacib zəng"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Daxil olan iş çağrısı"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Gələn Wi-Fi zəngi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Daxil olan Wi-Fi iş çağrısı"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Gələn Wi-Fi zəngi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Gələn Wi-Fi iş zəngi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Şübhəli spam zəngi"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Gələn video çağrı"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Xidmət yoxdur"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Video Zəngə cavab verin"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Zəng etmək üçün ilk olaraq Uçuş Rejimini söndürün."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Şəbəkədə qeydə alınmayıb."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobil şəbəkə əlçatan deyil"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobil şəbəkə əlçatımlı deyil."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Zəngi yerləşdirmək üçün düzgün nömrə daxil edin."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Zəng etmək mümkün deyil."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI başlanma ardıcıllığı…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Zəngi sonlandırın"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konfrans zəngi"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Çağrıda"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Mobil data istifadə edərək zəng davam edir…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi şəbəkəsinə qoşulmaq olmadı"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video zəng mobil şəbəkə üzərində qalacaq. Standart data rüsumları tətbiq oluna bilər."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Mobil data istifadə edərək zəngə davam edin…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi şəbəkəsinə qoşulmaq olmadı"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video zəng mobil şəbəkədə qalacaq. Standard data xərcləri tətbiq edilə bilər."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Bunu bi rdaha göstərməyin"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/res/values-b+sr+Latn/strings.xml
index 3dddf65..de2ad86 100644
--- a/java/com/android/incallui/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/res/values-b+sr+Latn/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Propušten poziv od: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Aktuelni poziv"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Tekući poziv za Work"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Tekući Wi-Fi poziv"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Tekući poziv za Work preko Wi-Fi-ja"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi‑Fi poziv u toku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi‑Fi poslovni poziv u toku"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Na čekanju"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Dolazni poziv"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Dolazni poziv sa slikom"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Važan dolazni poziv sa slikom, porukom i lokacijom"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Važan dolazni poziv sa prilozima"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Dolazni poziv za Work"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Dolazni Wi-Fi poziv"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Dolazni poziv za Work preko Wi-Fi-ja"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Dolazni Wi‑Fi poziv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Dolazni Wi‑Fi poslovni poziv"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Sumnja na nepoželjan dolazni poziv"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Zahtev za dolazni video poziv"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nema usluge"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Preuzmi video poziv"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Da biste uputili poziv, prvo isključite režim rada u avionu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nije registrovano na mreži."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilna mreža nije dostupna."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilna mreža nije dostupna."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Da biste uputili poziv, unesite važeći broj."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Poziv nije uspeo."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Pokretanje MMI sekvence"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Završite poziv"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferencijski poziv"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"U pozivu"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Poziv se nastavlja pomoću mobilnih podataka…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Prebacivanje na Wi-Fi mrežu nije uspelo"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video poziv će ostati na mobilnoj mreži. Mogu da važe standardne naknade za prenos podataka."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Poziv se nastavlja pomoću mobilnih podataka…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Prebacivanje na Wi‑Fi mrežu nije uspelo"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video poziv će ostati na mobilnoj mreži. Važe standardne naknade za prenos podataka."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne prikazuj ovo ponovo"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-be/strings.xml b/java/com/android/incallui/res/values-be/strings.xml
index 46b5d39..274cac1 100644
--- a/java/com/android/incallui/res/values-be/strings.xml
+++ b/java/com/android/incallui/res/values-be/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Прапушчаны выклiк ад <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Бягучы выклік"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Бягучы выклік па працы"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Бягучы выклік праз Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Бягучы выклік па працы праз Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Бягучы выклік праз Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Бягучы выклік па працы праз Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"У чаканні"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Уваходны выклік"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Уваходны выклік з фота"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важны выклік з фота, паведамленнем і месцам"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важны ўваходны выклік з далучэннямі"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Уваходны выклік па працы"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Уваходны выклік праз Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Уваходны выклік па працы праз Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Уваходны выклік праз Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Уваходны выклік па працы праз Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Уваходны выклiк ад абанента, якога падазраваюць у спаме"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Запыт уваходнага відэавыкліку"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Не абслугоўваецца"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Прыняць відэавыклік"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Каб зрабіць выклік, спачатку выключыце рэжым \"У самалёце\"."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Не зарэгістраваны ў сетцы."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мабільная сетка недаступная."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мабільная сетка недаступная."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Каб зрабіць выклік, увядзіце сапраўдны нумар."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Выклік немагчымы."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Пачатак паслядоўнасці MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завяршыць выклік"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Канферэнц-выклік"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"У выкліку"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Працягваецца выклік з выкарыстаннем сотавай перадачы даных…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Немагчыма пераключыцца на сетку Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Відэавыклік застанецца ў мабільнай сетцы. Можа спаганяцца стандартная аплата за перадачу даных."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Працягваецца выклік з выкарыстаннем мабільнай перадачы даных…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Немагчыма пераключыцца на сетку Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Відэавыклік застанецца ў мабільнай сетцы. Можа спаганяцца стандартная аплата за перадачу даных."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Больш не паказваць"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-bg/strings.xml b/java/com/android/incallui/res/values-bg/strings.xml
index 84bffa0..b3c1f3f 100644
--- a/java/com/android/incallui/res/values-bg/strings.xml
+++ b/java/com/android/incallui/res/values-bg/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропуснато обаждане от <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Текущо обаждане"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Текущо служебно обаждане"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Текущо обаждане през Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Текущо служебно обаждане през Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Текущо обаждане през Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Текущо служебно обаждане през Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Задържане на обаждането"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Вх. обаждане"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Входящо обаждане със снимка"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важно обаждане с местоположение, снимка, съобщение"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важно входящо обаждане с прикачени файлове"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Входящо служебно обаждане"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Входящо обаждане през Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Входящо служебно обаждане през Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Входящо обаждане през Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Входящо служебно обаждане през Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Входящо обаждане – възможен спам"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Входяща заявка за видеовръзка"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Няма покритие"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Приемане на видеообаждането"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Първо изключете самолетния режим, за да може да осъществите обаждане."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Няма регистрация в мрежата."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Няма достъп до клетъчната мрежа."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Няма мобилна мрежа."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"За да извършите обаждане, въведете валиден номер."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Не може да се извърши обаждане."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Стартира се последователността MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Край на обаждането"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конферентно обаждане"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"В разговор"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Обаждането продължава през мобилната връзка за данни…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Превключването към Wi-Fi мрежа не бе възможно"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видеообаждането ще остане в мобилната мрежа. Важат стандартните тарифи за данни."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Обаждането продължава през мобилната връзка за данни…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Превключването към Wi-Fi мрежа не бе възможно"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видеообаждането ще остане в мобилната мрежа. Важат стандартните тарифи за данни."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Това да не се показва отново"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-bn/strings.xml b/java/com/android/incallui/res/values-bn/strings.xml
index fc93830..a964f81 100644
--- a/java/com/android/incallui/res/values-bn/strings.xml
+++ b/java/com/android/incallui/res/values-bn/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> এর থেকে মিসড কল"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"চালু থাকা কল"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"চলমান কাজের কল"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"চলমান ওয়াই-ফাই কল"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"চলমান ওয়াই-ফাই কাজের কল"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"চালু থাকা ওয়াই-ফাই কল"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"চালু থাকা ওয়াই-ফাই কাজের কল"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"সাময়িকভাবে স্থগিত রাখা হয়েছে"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ইনকামিং কল"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ফটো সহ ইনকামিং কল"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ফটো, বার্তা এবং অবস্থান সহ গুরুত্বপূর্ণ ইনকামিং কল"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"সংযুক্তিগুলি সহ গুরুত্বপূর্ণ ইনকামিং কল"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"আগত কাজের কল"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"আগত ওয়াই-ফাই কল"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"আগত ওয়াই-ফাই কাজের কল"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"আগত ওয়াই-ফাই কল"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"আগত ওয়াই-ফাই কাজের কল"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"আগত সন্দেহভাজন স্প্যাম কল"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"আগত ভিডিও অনুরোধ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"কোনো পরিষেবা নেই"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ভিডিও কলটি নিন"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"একটি কল করতে, প্রথমে বিমান মোড বন্ধ করুন৷"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"নেটওয়ার্কে নিবন্ধিত নয়৷"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"সেলুলার নেটওয়ার্ক উপলব্ধ নয়।"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"মোবাইল নেটওয়ার্ক উপলব্ধ নয়৷"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"কোনো কল স্থাপন করতে, একটি বৈধ নম্বর লিখুন৷"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"কল করা যাবে না৷"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI ক্রম চালু হচ্ছে…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"কল কেটে দিন"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"কনফারেন্স কল"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"কলে থাকাকালীন"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"সেলুলার ডেটা ব্যবহার করে কল করা চালিয়ে যান…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi নেটওয়ার্কে পাল্টানো গেল না"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ভিডিও কল সেলুলার নেটওয়ার্কেই থাকবে৷ স্ট্যান্ডার্ড চার্জ প্রযোজ্য হতে পারে৷"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"মোবাইল ডেটা ব্যবহার করে কল করা চালিয়ে যান…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ওয়াই-ফাই নেটওয়ার্কে পাল্টানো গেল না"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ভিডিও কল মোবাইল নেটওয়ার্কেই থাকবে৷ স্ট্যান্ডার্ড ডেটা চার্জ প্রযোজ্য হতে পারে৷"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"এটি আমাকে আর দেখাবেন না"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-bs/strings.xml b/java/com/android/incallui/res/values-bs/strings.xml
index c695080..996eb98 100644
--- a/java/com/android/incallui/res/values-bs/strings.xml
+++ b/java/com/android/incallui/res/values-bs/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Propušteni poziv od kontakta <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Poziv u toku"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Poslovni poziv u toku"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi poziv u toku"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Wi-Fi poslovni poziv u toku"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi poziv je u toku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi-Fi poslovni poziv je u toku"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Na čekanju"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Dolazni poziv"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Dolazni poziv s fotografijom"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Važan poziv s fotografijom, porukom i lokacijom"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Važan dolazni poziv s prilozima"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Dolazni poslovni poziv"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Dolazni Wi-Fi poziv"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Dolazni Wi-Fi poslovni poziv"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Dolazni Wi-Fi poziv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Dolazni Wi-Fi poslovni poziv"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Mogući neželjeni dolazni poziv"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Zahtjev za dolazni videopoziv"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nema mreže"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Primi videopoziv"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Da uputite poziv, isključite Način rada u avionu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nije registrirano na mreži."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilna mreža nije dostupna."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilna mreža nije dostupna."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Da uputite poziv, upišite važeći broj."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nije moguće pozvati."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Pokretanje MMI sekvence u toku…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Prekini poziv"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferencijski poziv"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Poziv u toku"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Poziv se nastavlja pomoću mobilnih podataka…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Prebacivanje na Wi-Fi mrežu nije moguće"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videopoziv će ostati na mobilnoj mreži. Mogu nastati standardni troškovi prijenosa podataka."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Nastavak poziva prijenosom mobilnih podataka…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Prebacivanje na Wi-Fi mrežu nije moguće"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videopoziv će ostati na mobilnoj mreži. Mogu nastati standardni troškovi prijenosa podataka."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne prikazuj ponovo"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ca/strings.xml b/java/com/android/incallui/res/values-ca/strings.xml
index 5148db5..f4d56a2 100644
--- a/java/com/android/incallui/res/values-ca/strings.xml
+++ b/java/com/android/incallui/res/values-ca/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Trucada perduda de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Trucada en procés"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Trucada de feina en curs"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Trucada Wi-Fi en curs"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Trucada de feina per Wi-Fi en curs"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Trucada per Wi-Fi en curs"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Trucada de feina per Wi-Fi en curs"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Trucada entrant"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Trucada entrant amb foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Trucada entrant important amb foto, missatge i ubicació"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Trucada entrant important amb fitxers adjunts"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Trucada de feina entrant"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Trucada Wi-Fi entrant"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Trucada de feina per Wi-Fi entrant"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Trucada per Wi-Fi entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Trucada de feina per Wi-Fi entrant"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Presumpta trucada brossa entrant"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Sol·licitud de vídeo entrant"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sense servei"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Accepta la videotrucada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Per fer una trucada, primer apagueu el mode d\'avió."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"No registrat a la xarxa."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"La xarxa mòbil no està disponible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"La xarxa mòbil no està disponible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Per realitzar una trucada, introdueix un número vàlid."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"No es pot trucar."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"S\'està iniciant la seqüència MMI..."</string>
@@ -125,7 +125,7 @@
     <string name="spam_notification_spam_call_expanded_text" msgid="1062029525759401658">"Segons les nostres sospites, l\'autor de la trucada és un emissor de contingut brossa. Si ens equivoquem, toca NO ÉS BROSSA per informar-nos-en."</string>
     <string name="spam_notification_report_spam_action_text" msgid="4829510418690824538">"Bloqueja i marca"</string>
     <string name="spam_notification_add_contact_action_text" msgid="307315138401483232">"Afegeix un contacte"</string>
-    <string name="spam_notification_not_spam_action_text" msgid="2576048366011852090">"No és contingut brossa"</string>
+    <string name="spam_notification_not_spam_action_text" msgid="2576048366011852090">"No és una trucada brossa"</string>
     <string name="spam_notification_block_spam_action_text" msgid="80045727259264724">"Bloqueja el número"</string>
     <string name="spam_notification_dialog_add_contact_action_text" msgid="5619696845681999506">"Afegeix als contactes"</string>
     <string name="spam_notification_dialog_block_report_spam_action_text" msgid="1821506089128547428">"Bloqueja i marca com a brossa"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Finalitza la trucada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conferència"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"En una trucada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"S\'està continuant la trucada mitjançant dades mòbils…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"No s\'ha pogut canviar a la xarxa Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"La videotrucada es mantindrà a la xarxa mòbil. És possible que s\'apliquin càrrecs de dades estàndard."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"S\'està continuant la trucada mitjançant dades mòbils…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"No s\'ha pogut canviar a la xarxa Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"La videotrucada continuarà a la xarxa mòbil. És possible que s\'hi apliquin càrrecs de dades estàndard."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"No ho tornis a mostrar"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-cs/strings.xml b/java/com/android/incallui/res/values-cs/strings.xml
index 9d69cfa..e604a52 100644
--- a/java/com/android/incallui/res/values-cs/strings.xml
+++ b/java/com/android/incallui/res/values-cs/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Zmeškaný hovor od volajícího <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Probíhající hovor"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Probíhající pracovní hovor"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Probíhající volání přes Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Probíhající pracovní hovor (Wi-Fi)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Probíhající hovor přes Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Probíhající pracovní hovor přes Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Přidržený hovor"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Příchozí hovor"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Příchozí hovor s fotkou"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Důležitý přích. hovor s fotkou, zprávou a polohou"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Důležitý příchozí hovor s přílohami"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Příchozí pracovní hovor"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Příchozí volání přes Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Příchozí pracovní hovor (Wi-Fi)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Příchozí hovor přes Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Příchozí pracovní hovor přes Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"U příchozího hovoru máme podezření, že se jedná o spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Příchozí žádost o videohovor"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Žádný signál"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Převést videohovor sem"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Chcete-li telefonovat, vypněte nejprve režim Letadlo."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Přihlášení k síti nebylo úspěšné."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilní síť je nedostupná."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilní síť je nedostupná."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Chcete-li uskutečnit hovor, zadejte platné telefonní číslo."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Hovor nelze uskutečnit."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Spouštění sekvence MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Ukončit hovor"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenční hovor"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Probíhá hovor"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Hovor pokračuje přes mobilní data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Přepnutí na síť Wi-Fi se nezdařilo"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videohovor zůstane na mobilní síti. Za datový přenos mohou být účtovány standardní poplatky."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Hovor pokračuje přes mobilní data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Přepnutí na síť Wi-Fi se nezdařilo"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videohovor zůstane na mobilní síti. Za datový přenos mohou být účtovány standardní poplatky."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Tuto zprávu příště nezobrazovat"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-da/strings.xml b/java/com/android/incallui/res/values-da/strings.xml
index 19de783..fbf7927 100644
--- a/java/com/android/incallui/res/values-da/strings.xml
+++ b/java/com/android/incallui/res/values-da/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Ubesvaret opkald fra <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Igangværende opkald"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Igangværende opkald i forbindelse med arbejde"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Igangværende opkald via Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Igangværende Wi-Fi-opkald i forbindelse med arbejde"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Igangværende Wi-Fi-opkald"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Igangværende Wi-Fi-opkald i forbindelse med arbejde"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ventende"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Indgående opkald"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Indgående opkald med billede"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Vigtigt opkald med billede, besked og placering"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Vigtigt indgående opkald med vedhæftede filer"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Indgående opkald i forbindelse med arbejde"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Indgående opkald via Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Indgående Wi-Fi-opkald i forbindelse med arbejde"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Indgående Wi-Fi-opkald"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Indgående Wi-Fi-opkald i forbindelse med arbejde"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Indgående formodet spamopkald"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Indgående videoanmodning"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ingen dækning"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Besvar videoopkald"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Slå Flytilstand fra først for at foretage et opkald."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ikke registreret på netværk."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilnetværket er ikke tilgængeligt."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilnetværket er ikke tilgængeligt."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Indtast et gyldigt nummer for at foretage et opkald."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan ikke ringe op."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Starter MMI-sekvens ..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Afslut opkald"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonmøde"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Opkald i gang"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Fortsætter opkaldet med mobildata…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Der kan ikke skiftes til Wi-Fi-netværk"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videoopkaldet bliver ved med at bruge mobilnetværket. Du skal muligvis betale et standardgebyr for data."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Opkaldet fortsættes med mobildata…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Du kunne ikke skifte til Wi-Fi-netværk"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videoopkaldet bliver ved med at bruge mobilnetværket. Du skal muligvis betale et standardgebyr for data."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Vis ikke dette igen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-de/strings.xml b/java/com/android/incallui/res/values-de/strings.xml
index a5f9602..0dce345 100644
--- a/java/com/android/incallui/res/values-de/strings.xml
+++ b/java/com/android/incallui/res/values-de/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Verpasster Anruf von <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Aktueller Anruf"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Aktueller geschäftlicher Anruf"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Aktiver WLAN-Anruf"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Aktueller geschäftlicher WLAN-Anruf"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Aktiver WLAN-Anruf"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Aktiver geschäftlicher WLAN-Anruf"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Gehaltener Anruf"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Eingehender Anruf"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Eingehender Anruf mit Foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Wichtiger eingehender Anruf mit Foto, Nachricht und Standort"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Wichtiger eingehender Anruf mit Anhängen"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Eingehender geschäftlicher Anruf"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Eingehender WLAN-Anruf"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Eingehender geschäftlicher WLAN-Anruf"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Eingehender WLAN-Anruf"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Eingehender geschäftlicher WLAN-Anruf"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Verdacht auf eingehenden Spam-Anruf"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Eingehende Videoanfrage"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"kein Dienst"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Videoanruf übernehmen"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Deaktiviere zunächst den Flugmodus, um einen Anruf zu tätigen."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nicht in Netzwerk registriert."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilfunknetz nicht verfügbar"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilfunknetz ist nicht verfügbar."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Gib eine gültige Nummer ein."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Anruf nicht möglich."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI-Sequenz wird gestartet..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Anruf beenden"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonkonferenz"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Anruf"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Anruf wird über Mobildaten fortgesetzt…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wechseln zu WLAN nicht möglich"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Der Videoanruf erfolgt weiter über das Mobilfunknetz. Es können Standardgebühren für die Datenübertragung anfallen."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Anruf wird über mobile Daten fortgesetzt…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wechseln zu WLAN nicht möglich"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Der Videoanruf erfolgt weiter über das Mobilfunknetz. Es können Standardgebühren für die Datenübertragung anfallen."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Meldung nicht mehr anzeigen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-el/strings.xml b/java/com/android/incallui/res/values-el/strings.xml
index 8ff6d2f..bc39e2a 100644
--- a/java/com/android/incallui/res/values-el/strings.xml
+++ b/java/com/android/incallui/res/values-el/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Αναπάντητη κλήση από <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Κλήση σε εξέλιξη"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Κλήση εργασίας σε εξέλιξη"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Κλήση Wi-Fi σε εξέλιξη"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Κλήση εργασίας μέσω Wi-Fi σε εξέλιξη"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Κλήση Wi-Fi σε εξέλιξη"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Κλήση εργασίας μέσω Wi-Fi σε εξέλιξη"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Σε αναμονή"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Εισερχόμενη κλήση"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Εισερχόμενη κλήση με φωτογραφία"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Σημαντική εισερχ. κλήση με φωτο, μήνυμα, τοποθεσία"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Σημαντική εισερχόμενη κλήση με συνημμένα"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Εισερχόμενη κλήση εργασίας"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Εισερχόμενη κλήση μέσω Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Εισερχόμενη κλήση εργασίας μέσω Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Εισερχόμενη κλήση μέσω Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Εισερχόμενη κλήση εργασίας μέσω Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Πιθανώς ανεπιθύμητη εισερχόμενη κλήση"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Αίτημα εισερχόμενου βίντεο"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Δίκτυο μη διαθέσιμο"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Λήψη βιντεοκλήσης"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Για να πραγματοποιήσετε μια κλήση, απενεργοποιήστε πρώτα τη λειτουργία πτήσης."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Δεν έχετε εγγραφεί στο δίκτυο."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Το δίκτυο κινητής τηλεφωνίας δεν είναι διαθέσιμο."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Το δίκτυο κινητής τηλεφωνίας δεν είναι διαθέσιμο."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Για να πραγματοποιήσετε μια κλήση, εισαγάγετε έναν έγκυρο αριθμό."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Δεν είναι δυνατή η κλήση."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Έναρξη ακολουθίας MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Τερματισμός κλήσης"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Κλήση συνδιάσκεψης"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Σε κλήση"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Συνέχεια κλήσης με χρήση δεδομένων κινητής τηλεφωνίας…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Δεν ήταν δυνατή η εναλλαγή σε δίκτυο Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Η βιντεοκλήση θα παραμείνει σε δίκτυο δεδομένων κινητής τηλεφωνίας; Ενδέχεται να ισχύουν βασικές χρεώσεις δεδομένων."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Συνέχιση κλήσης με χρήση δεδομένων κινητής τηλεφωνίας…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Δεν ήταν δυνατή η εναλλαγή σε δίκτυο Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Η βιντεοκλήση θα παραμείνει σε δίκτυο δεδομένων κινητής τηλεφωνίας; Ενδέχεται να ισχύουν βασικές χρεώσεις δεδομένων."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Να μην εμφανιστεί ξανά αυτό"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-en-rAU/strings.xml b/java/com/android/incallui/res/values-en-rAU/strings.xml
index 5e0d207..68509f0 100644
--- a/java/com/android/incallui/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/res/values-en-rAU/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Missed call from <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"On-going call"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ongoing work call"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ongoing Wi-Fi call"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ongoing Wi‑Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ongoing Wi‑Fi work call"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"On hold"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Incoming call"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Incoming call with photo"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Important call with photo, message and location"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Important incoming call with attachments"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Incoming work call"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Incoming Wi-Fi call"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Incoming Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Incoming Wi‑Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Incoming Wi‑Fi work call"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Incoming suspected spam call"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Incoming video request"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"No service"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Selected network (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) unavailable"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Answer"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Hang up"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"In-stream video"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Voice"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Accept"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Decline"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Take video call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Not registered on network."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobile network not available."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobile network not available."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"To place a call, enter a valid number."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Can\'t call."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Starting MMI sequence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"End call"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conference call"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"On a call"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuing call using mobile data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Couldn\'t switch to Wi-Fi network"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video call will remain on mobile network. Standard data charges may apply."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuing call using mobile data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Couldn\'t switch to Wi‑Fi network"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video call will remain on the mobile network. Standard data charges may apply."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Do not show this again"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-en-rGB/strings.xml b/java/com/android/incallui/res/values-en-rGB/strings.xml
index 5e0d207..68509f0 100644
--- a/java/com/android/incallui/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/res/values-en-rGB/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Missed call from <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"On-going call"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ongoing work call"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ongoing Wi-Fi call"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ongoing Wi‑Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ongoing Wi‑Fi work call"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"On hold"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Incoming call"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Incoming call with photo"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Important call with photo, message and location"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Important incoming call with attachments"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Incoming work call"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Incoming Wi-Fi call"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Incoming Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Incoming Wi‑Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Incoming Wi‑Fi work call"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Incoming suspected spam call"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Incoming video request"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"No service"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Selected network (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) unavailable"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Answer"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Hang up"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"In-stream video"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Voice"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Accept"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Decline"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Take video call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Not registered on network."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobile network not available."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobile network not available."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"To place a call, enter a valid number."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Can\'t call."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Starting MMI sequence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"End call"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conference call"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"On a call"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuing call using mobile data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Couldn\'t switch to Wi-Fi network"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video call will remain on mobile network. Standard data charges may apply."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuing call using mobile data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Couldn\'t switch to Wi‑Fi network"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video call will remain on the mobile network. Standard data charges may apply."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Do not show this again"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-en-rIN/strings.xml b/java/com/android/incallui/res/values-en-rIN/strings.xml
index 5e0d207..68509f0 100644
--- a/java/com/android/incallui/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/res/values-en-rIN/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Missed call from <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"On-going call"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ongoing work call"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ongoing Wi-Fi call"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ongoing Wi‑Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ongoing Wi‑Fi work call"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"On hold"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Incoming call"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Incoming call with photo"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Important call with photo, message and location"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Important incoming call with attachments"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Incoming work call"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Incoming Wi-Fi call"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Incoming Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Incoming Wi‑Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Incoming Wi‑Fi work call"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Incoming suspected spam call"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Incoming video request"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"No service"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Selected network (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) unavailable"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Answer"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Hang up"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"In-stream video"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Voice"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Accept"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Decline"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Take video call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Not registered on network."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobile network not available."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobile network not available."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"To place a call, enter a valid number."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Can\'t call."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Starting MMI sequence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"End call"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conference call"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"On a call"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuing call using mobile data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Couldn\'t switch to Wi-Fi network"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video call will remain on mobile network. Standard data charges may apply."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuing call using mobile data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Couldn\'t switch to Wi‑Fi network"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video call will remain on the mobile network. Standard data charges may apply."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Do not show this again"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-es-rUS/strings.xml b/java/com/android/incallui/res/values-es-rUS/strings.xml
index d016711..b8584c7 100644
--- a/java/com/android/incallui/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/res/values-es-rUS/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Llamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Llamada en curso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Llamada de trabajo en curso"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Llamada por Wi-Fi en curso"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Llamada de trabajo con Wi-Fi en curso"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Llamada Wi-Fi en curso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Llamada de trabajo Wi-Fi en curso"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Llamada entrante"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Llamada entrante con foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Llamada importante con foto, mensaje y ubicación"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Llamada entrante importante con archivos adjuntos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Llamada de trabajo entrante"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Llamada por Wi-Fi entrante"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Llamada de trabajo con Wi-Fi entrante"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Llamada Wi-Fi entrante"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Llamada de trabajo Wi-Fi entrante"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Posible llamada entrante de spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Solicitud de videollamada entrante"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sin servicio"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atender videollamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para realizar una llamada, primero debes desactivar el modo avión."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"No registrado en la red."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Red móvil no disponible"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"La red móvil no está disponible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar una llamada, ingresa un número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"No se puede realizar la llamada."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciar la secuencia de MMI"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Finalizar llamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conferencia"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"En llamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando la llamada con datos móviles…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"No se pudo cambiar a la red Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"La videollamada permanecerá en la red móvil. Es posible que se te cobren cargos estándar por el uso de datos."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando la llamada con datos móviles…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"No se pudo cambiar a la red Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"La videollamada permanecerá en la red móvil. Es posible que se te cobren cargos estándar por el uso de datos."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"No volver a mostrar esto"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-es/strings.xml b/java/com/android/incallui/res/values-es/strings.xml
index 472ea99..4dc2d72 100644
--- a/java/com/android/incallui/res/values-es/strings.xml
+++ b/java/com/android/incallui/res/values-es/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Llamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Llamada en curso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Llamada de trabajo en curso"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Llamada Wi-Fi en curso"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Llamada Wi-Fi de trabajo en curso"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Llamada por Wi-Fi en curso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Llamada de trabajo por Wi-Fi en curso"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Llamada entrante"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Llamada entrante con foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Llamada importante con foto, mensaje y ubicación"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Llamada entrante importante con archivos adjuntos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Llamada de trabajo entrante"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Llamada Wi-Fi entrante"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Llamada Wi-Fi de trabajo entrante"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Llamada por Wi-Fi entrante"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Llamada de trabajo por Wi-Fi entrante"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Llamada entrante sospechosa de spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Solicitud de videollamada entrante"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sin servicio"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atender videollamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para realizar una llamada, primero debes desactivar el modo avión."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"No se ha podido conectar a la red"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"La red móvil no está disponible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"La red móvil no está disponible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar una llamada, introduce un número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"No se puede establecer la llamada."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciando secuencia MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Finalizar llamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conferencia telefónica"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"En una llamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando la llamada con datos móviles…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"No se ha podido cambiar a la red Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"La videollamada seguirá mediante la red móvil. Es posible que se apliquen cargos por uso de datos."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando la llamada con los datos móviles…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"No se ha podido cambiar a la red Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"La videollamada seguirá a través de la red móvil. Es posible que se apliquen cargos por el uso de datos."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"No volver a mostrar"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-et/strings.xml b/java/com/android/incallui/res/values-et/strings.xml
index 9eaa65f..ec1b230 100644
--- a/java/com/android/incallui/res/values-et/strings.xml
+++ b/java/com/android/incallui/res/values-et/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Vastamata kõne helistajalt <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Käimasolev kõne"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Käimasolev töökõne"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Pooleliolev WiFi-kõne"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Käimasolev töökõne WiFi kaudu"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Käimasolev WiFi-kõne"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Käimasolev WiFi-töökõne"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ootel"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Sissetulev kõne"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Sissetulev kõne koos fotoga"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Tähtis sisset. kõne koos foto, sõnumi ja asukohaga"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Tähtis sissetulev kõne koos manustega"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Sissetulev töökõne"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Sissetulev WiFi-kõne"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Sissetulev töökõne WiFi kaudu"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Sissetulev WiFi-kõne"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Sissetulev WiFi-töökõne"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Arvatav sissetulev rämpskõne"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Sissetulev videotaotlus"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Teenus puudub"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Alusta videokõnet"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Helistamiseks lülitage lennurežiim välja."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ei ole võrku registreeritud."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobiilsidevõrk pole saadaval."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiilsidevõrk pole saadaval."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Helistamiseks sisestage kehtiv number."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Ei saa helistada."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI-jada alustamine ..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Kõne lõpetamine"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konverentskõne"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Pooleliolev kõne"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Kõne jätkatakse mobiilse andmeside kaudu …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ei saanud WiFi-võrgule lülitada"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videokõne jääb mobiilsidevõrku. Rakenduda võivad tavapärased andmetasud."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Kõnet jätkatakse mobiilse andmeside kaudu …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"WiFi-võrgule ei saanud lülituda"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videokõne jääb mobiilsidevõrku. Rakenduda võivad tavapärased andmesidetasud."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ära seda enam näita"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-eu/strings.xml b/java/com/android/incallui/res/values-eu/strings.xml
index 4db9e10..64e04d3 100644
--- a/java/com/android/incallui/res/values-eu/strings.xml
+++ b/java/com/android/incallui/res/values-eu/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Deitzaile honen dei bat galdu duzu: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Abian den deia"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Laneko dei bat abian da"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi deia abian"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Wi-Fi bidezko laneko dei bat abian da"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi bidezko deia"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi-Fi bidezko laneko deia"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Zain"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Sarrerako deia"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Jasotako deia, argazkia duena"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Jasotako dei garrant., arg., mez. eta kok. dituena"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Jasotako dei garrantzitsua, eranskinak dituena"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Laneko dei bat jaso da"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Sarrerako Wi-Fi deia"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Wi-Fi bidezko laneko dei bat jaso da"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Jasotako Wi-Fi bidezko deia"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Jasotako Wi-Fi bidezko laneko deia"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Ustezko spam-deia jaso duzu"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Sarrerako bideo-eskaera"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ez dago zerbitzurik"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Erantzun bideo-deiari"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Dei bat egiteko, Hegaldi modua desaktibatu behar duzu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ez dago sarean erregistratuta."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Sare mugikorra ez dago erabilgarri."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Sare mugikorra ez dago erabilgarri."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Deitzeko, idatzi balio duen zenbaki bat."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Ezin da deitu."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI sekuentzia hasten…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Amaitu deia"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferentzia-deia"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Deia abian da"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Datu-konexioren bidez jarraitzen ari da deia egiten…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ezin izan da aldatu Wi-Fi sarera"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Datu mugikorren bidez egiten jarraituko da bideo-deia. Baliteke datuak erabiltzearen ondorioz ohiko kostuak kobratzea."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Datu-konexiora aldatzen…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Ezin izan da aldatu Wi-Fi sarera"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Datu-konexioaren bidez egiten jarraituko da bideo-deia. Baliteke datuak erabiltzearen ondorioz ohiko kostuak kobratzea."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ez erakutsi berriro"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-fa/strings.xml b/java/com/android/incallui/res/values-fa/strings.xml
index f816bd0..a36d164 100644
--- a/java/com/android/incallui/res/values-fa/strings.xml
+++ b/java/com/android/incallui/res/values-fa/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"تماس بی‌پاسخ از <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"تماس جاری"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"تماس کاری خروجی"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"‏تماس از طریق Wi-Fi در حال انجام است"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"‏تماس کاری Wi-Fi خروجی"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"‏تماس Wi-Fi درحال انجام"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"‏تماس کاری Wi-Fi درحال انجام"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"در انتظار"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"تماس ورودی"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"تماس ورودی به همراه عکس"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"تماس ورودی مهم به همراه عکس، پیام و مکان"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"تماس ورودی مهم به همراه پیوست"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"تماس کاری ورودی"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"‏تماس Wi-Fi ورودی"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"‏تماس کاری Wi-Fi ورودی"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"‏تماس Wi-Fi ورودی"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"‏تماس کاری Wi-Fi ورودی"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"تماس هرزنامه احتمالی ورودی"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"درخواست تماس ویدئویی ورودی"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"بدون سرویس"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"انتقال تماس ویدئویی"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"برای برقراری یک تماس، ابتدا حالت هواپیما را خاموش کنید."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"در شبکه ثبت نشده است."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"شبکه تلفن همراه در دسترس نیست."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"شبکه تلفن همراه دردسترس نیست."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"برای برقراری تماس، یک شماره معتبر وارد کنید."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"نمی‌توانید تماس بگیرید."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"‏شروع ترتیب MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"پایان تماس"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"تماس کنفرانسی"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"در تماس"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ادامه تماس با استفاده از داده شبکه تلفن همراه..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"‏به شبکه Wi-Fi جابه‌جا نشد"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"تماس ویدئویی همچنان از شبکه تلفن همراه استفاده می‌کند. هزینه‌های داده استاندارد اعمال می‌شود."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ادامه تماس با استفاده از داده شبکه همراه…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"‏جابجایی به شبکه Wi-Fi انجام نشد"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"تماس ویدیویی همچنان ازطریق شبکه تلفن همراه انجام می‌شود. ممکن است هزینه‌های استاندارد داده اعمال شود."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"دوباره نشان داده نشود"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-fi/strings.xml b/java/com/android/incallui/res/values-fi/strings.xml
index 995e7a3..f13ff26 100644
--- a/java/com/android/incallui/res/values-fi/strings.xml
+++ b/java/com/android/incallui/res/values-fi/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Vastaamaton puhelu: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Käynnissä oleva puhelu"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Käynnissä oleva työpuhelu"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Käynnissä oleva Wi-Fi-puhelu"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Käynnissä oleva Wi-Fi-työpuhelu"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Käynnissä oleva Wi-Fi-puhelu"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Käynnissä oleva Wi-Fi-työpuhelu"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Pidossa"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Saapuva puhelu"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Kuvan sisältävä saapuva puhelu"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Tärkeä liitteitä sisältävä saapuva puhelu"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Tärkeä liitteitä sisältävä saapuva puhelu"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Saapuva työpuhelu"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Saapuva Wi-Fi-puhelu"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Saapuva Wi-Fi-työpuhelu"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Saapuva Wi-Fi-puhelu"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Saapuva Wi-Fi-työpuhelu"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Tämä puhelu saattaa olla häirikköpuhelu."</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Saapuva videopyyntö"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Katvealueella"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Vastaa videopuheluun"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Poista lentokonetila käytöstä ennen puhelun soittamista."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ei rekisteröity verkkoon."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Matkapuhelinverkko ei ole käytettävissä."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiilidataverkko ei ole käytettävissä."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Soita antamalla kelvollinen numero."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Puhelua ei voi soittaa."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Aloitetaan MMI-koodisekvenssiä..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Päätä puhelu"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Puhelinneuvottelu"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Puhelu käynnissä"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Jatketaan puhelua mobiilitiedonsiirron avulla…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Siirtyminen Wi-Fi-verkkoon epäonnistui."</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videopuhelu soitetaan matkapuhelinverkon kautta. Operaattori voi veloittaa tiedonsiirrosta hinnastonsa mukaan."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Jatketaan puhelua mobiilidatayhteydellä…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Vaihto Wi-Fi-verkkoon epäonnistui."</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videopuhelu soitetaan mobiilidatayhteyden kautta. Operaattori voi veloittaa tiedonsiirrosta."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Älä näytä tätä uudelleen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-fr-rCA/strings.xml b/java/com/android/incallui/res/values-fr-rCA/strings.xml
index 6f4d8da..e83658d 100644
--- a/java/com/android/incallui/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/res/values-fr-rCA/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Appel manqué de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Appel en cours"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Appel en cours - travail"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Appel Wi-Fi en cours"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Appel Wi-Fi en cours - travail"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Appel Wi-Fi en cours"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Appel professionnel Wi-Fi en cours"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En attente"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Appel entrant"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Appel entrant avec photo"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Appel important avec photo, message et position"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Appel entrant important avec pièces jointes"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Appel entrant - travail"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Appel Wi-Fi entrant"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Appel Wi-Fi entrant - travail"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Appel Wi-Fi entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Appel professionnel Wi-Fi entrant"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"L\'appel entrant est suspect"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Demande de vidéo reçue"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Aucun service"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Répondre à l\'appel vidéo"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Veuillez désactiver le mode Avion avant de passer un appel."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Non enregistré sur le réseau"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Réseau cellulaire non disponible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Réseau cellulaire non disponible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Pour faire un appel, entrez un numéro valide."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Impossible d\'appeler."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Lancement de la séquence IHM..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Mettre fin à l\'appel"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conférence téléphonique"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Appel en cours"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Poursuite de l\'appel à l\'aide de données cellulaires en cours…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Impossible de passer à un réseau Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"L\'appel vidéo restera sur le réseau cellulaire. Des frais de données standards peuvent s\'appliquer."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Poursuite de l\'appel utilisant des données mobiles en cours…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Impossible de passer à un réseau Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"L\'appel vidéo restera sur le réseau cellulaire. Des frais de données standards peuvent s\'appliquer."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne plus afficher"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-fr/strings.xml b/java/com/android/incallui/res/values-fr/strings.xml
index c77fc19..162c242 100644
--- a/java/com/android/incallui/res/values-fr/strings.xml
+++ b/java/com/android/incallui/res/values-fr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Appel manqué de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Appel en cours"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Appel professionnel en cours"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Appel Wi-Fi en cours"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Appel Wi-Fi professionnel en cours"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Appel Wi-Fi en cours"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Appel Wi-Fi professionnel en cours"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En attente"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Appel entrant"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Appel entrant avec photo"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Appel important avec photo, message et position"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Appel entrant important avec pièces jointes"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Appel professionnel entrant"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Appel Wi-Fi entrant"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Appel Wi-Fi professionnel entrant"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Appel Wi-Fi entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Appel Wi-Fi professionnel entrant"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Appel entrant indésirable suspecté"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Demande de vidéo reçue"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Aucun service"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Répondre à l\'appel vidéo"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Veuillez d\'abord désactiver le mode Avion, afin d\'effectuer un appel."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Non enregistré sur le réseau."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Réseau mobile non disponible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Réseau mobile non disponible"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Pour émettre un appel, veuillez saisir un numéro valide."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Impossible d\'émettre l\'appel."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Lancement de la séquence IHM..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Mettre fin à l\'appel"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conférence téléphonique"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Appel en cours"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuer l\'appel en utilisant les données mobiles…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Impossible de passer au réseau Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"L\'appel vidéo va continuer sur le réseau mobile. Des frais standard liés à la consommation de données peuvent être facturés."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Poursuite de l\'appel via les données mobiles…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Impossible de passer au réseau Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"L\'appel vidéo va continuer sur le réseau mobile. Des frais standards liés à la consommation de données peuvent être facturés."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne plus afficher"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-gl/strings.xml b/java/com/android/incallui/res/values-gl/strings.xml
index 53278e5..d926b1b 100644
--- a/java/com/android/incallui/res/values-gl/strings.xml
+++ b/java/com/android/incallui/res/values-gl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chamada en curso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chamada de traballo saínte"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chamada wifi saínte"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chamada wifi de traballo saínte"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chamada saínte por wifi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chamada de traballo saínte por wifi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chamada entrante"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chamada entrante con foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Chamada entrante importante con foto, mensaxe e localización"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chamada entrante importante con anexos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chamada de traballo entrante"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chamada wifi entrante"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chamada wifi de traballo entrante"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chamada entrante por wifi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chamada de traballo entrante por wifi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Chamada entrante sospeitosa de spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Solicitude de vídeo entrante"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sen servizo"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Responder á videochamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para facer unha chamada, primeiro desactiva o modo avión."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Sen rexistro na rede"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rece móbil non dispoñible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"A rede móbil non está dispoñible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar unha chamada, introduce un número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Non se pode chamar."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciando secuencia MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Finalizar chamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conferencia telefónica"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Chamada en curso"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando a chamada con datos móbiles…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Non se puido cambiar á rede wifi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"A videochamada permanecerá na rede móbil. É posible que o operador aplique tarifas de datos estándar."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando a chamada con datos móbiles…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Non se puido cambiar á rede wifi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"A videochamada permanecerá na rede móbil. É posible que se apliquen tarifas de datos estándar."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Non mostrar de novo"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-gu/strings.xml b/java/com/android/incallui/res/values-gu/strings.xml
index 8b1ebe8..4a90fc5 100644
--- a/java/com/android/incallui/res/values-gu/strings.xml
+++ b/java/com/android/incallui/res/values-gu/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> નો કૉલ ચૂકી ગયાં"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ચાલી રહેલ કૉલ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ચાલી રહેલ કાર્ય કૉલ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ચાલુ Wi-Fi કૉલ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ચાલી રહેલ Wi-Fi કાર્ય કૉલ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ચાલી રહેલ Wi-Fi કૉલ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ચાલી રહેલ Wi-Fi કાર્ય કૉલ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"હોલ્ડ પર"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ઇનકમિંગ કૉલ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ફોટો સાથે ઇનકમિંગ કૉલ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ફોટો, સંદેશ અને સ્થાન સાથે મહત્વનો ઇનકમિંગ કૉલ"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"જોડાણો સાથે મહત્વનો ઇનકમિંગ કૉલ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ઇનકમિંગ કાર્ય કૉલ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ઇનકમિંગ Wi-Fi કૉલ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ઇનકમિંગ Wi-Fi કાર્ય કૉલ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ઇનકમિંગ Wi-Fi કૉલ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ઇનકમિંગ Wi-Fi કાર્ય કૉલ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ઇનકમિંગ શંકાસ્પદ સ્પામ કૉલ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"આવનાર વિડિઓ વિનંતી"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"કોઈ સેવા નથી"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"વિડિઓ કૉલ લો"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"કૉલ કરવા માટે, પહેલાં એરપ્લેન મોડને બંધ કરો."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"નેટવર્ક પર નોંધણી કરાયેલ નથી."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"સેલ્યુલર નેટવર્ક ઉપલબ્ધ નથી."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"મોબાઇલ નેટવર્ક ઉપલબ્ધ નથી."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"કૉલ કરવા માટે, માન્ય નંબર દાખલ કરો."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"કૉલ કરી શકાતો નથી."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI અનુક્રમ પ્રારંભ કરી રહ્યાં છે…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"કૉલ સમાપ્ત કરો"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"કૉન્ફરન્સ કૉલ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"કૉલમાં"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"સેલ્યુલર ડેટાની મદદથી કૉલ ચાલુ રાખી રહ્યાં છે…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi નેટવર્ક પર સ્વિચ કરી શક્યાં નથી"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"વિડિઓ કૉલ સેલ્યુલર નેટવર્ક પર રહેશે. માનક ડેટા શુલ્ક લાગુ થઈ શકે છે."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"મોબાઇલ ડેટાની મદદથી કૉલ ચાલુ રાખી રહ્યાં છે…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi નેટવર્ક પર સ્વિચ કરી શક્યાં નથી"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"વિડિઓ કૉલ, મોબાઇલ નેટવર્ક પર રહેશે. માનક ડેટા શુલ્ક લાગુ થઈ શકે છે."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"આ ફરીથી બતાવશો નહીં"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-hi/strings.xml b/java/com/android/incallui/res/values-hi/strings.xml
index 09563df..f597e1b 100644
--- a/java/com/android/incallui/res/values-hi/strings.xml
+++ b/java/com/android/incallui/res/values-hi/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> के छूटे कॉल"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"चल रही कॉल"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"कार्यस्थल की जारी कॉल"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"चल रहा वाई-फ़ाई कॉल"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"कार्यस्थल की जारी वाई-फ़ाई कॉल"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"जारी Wi‑Fi कॉल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"जारी Wi‑Fi कार्य संबंधी कॉल"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"होल्ड पर"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"इनकमिंग कॉल"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"फ़ोटो के साथ इनकमिंग कॉल"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"फोटो, संदेश और स्थान के साथ महत्वपूर्ण इनकमिंग कॉल"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"अटैचमेंट के साथ महत्वपूर्ण इनकमिंग कॉल"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"कार्यस्थल की आवक कॉल"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"इनकमिंग वाई-फ़ाई कॉल"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"कार्यस्थल की वाई-फ़ाई आवक कॉल"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"इनकमिंग Wi‑Fi कॉल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"इनकमिंग Wi‑Fi कार्य संबंधी कॉल"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"संदिग्ध आवक स्पैम कॉल"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"इनकमिंग वीडियो अनुरोध"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"कोई सेवा नहीं"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"वीडियो कॉल लें"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"कॉल करने के लिए, पहले विमान मोड बंद करें."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"नेटवर्क पर पंजीकृत नहीं."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"सेल्युलर नेटवर्क उपलब्ध नहीं."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"मोबाइल नेटवर्क उपलब्ध नहीं है."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"कॉल करने के लिए, मान्‍य नंबर डालें."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"कॉल नहीं किया जा सकता."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI अनुक्रम प्रारंभ हो रहा है…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"कॉल समाप्त करें"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"कॉन्फ़्रेंस कॉल"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"कॉल में"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"सेल्युलर डेटा का उपयोग करके कॉल जारी रखा जा रहा है…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"वाई-फ़ाई नेटवर्क में नहीं बदला जा सका"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"वीडियो कॉल सेल्यूलर नेटवर्क पर बना रहेगा. मानक डेटा शुल्क लागू हो सकते हैं."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"मोबाइल डेटा का उपयोग करके कॉल जारी रखा जा रहा है…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi‑Fi नेटवर्क पर स्विच नहीं कर सका"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"वीडियो कॉल मोबाइल नेटवर्क पर बना रहेगा. मानक डेटा शुल्क लागू हो सकते हैं."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"इसे दोबारा न दिखाएं"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-hr/strings.xml b/java/com/android/incallui/res/values-hr/strings.xml
index 7af1613..2d389e6 100644
--- a/java/com/android/incallui/res/values-hr/strings.xml
+++ b/java/com/android/incallui/res/values-hr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Propušten poziv kontakta <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Poziv u tijeku"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Poslovni poziv u tijeku"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi poziv u tijeku"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Poslovni Wi-Fi poziv u tijeku"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi poziv u tijeku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Poslovni Wi-Fi poziv u tijeku"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Na čekanju"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Dolazni poziv"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Dolazni poziv s fotografijom"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Važan poziv s fotografijom, porukom i lokacijom"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Važan dolazni poziv s privicima"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Dolazni poslovni poziv"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Dolazni Wi-Fi poziv"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Dolazni poslovni Wi-Fi poziv"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Dolazni Wi-Fi poziv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Dolazni poslovni Wi-Fi poziv"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Mogući neželjeni dolazni poziv"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Dolazni zahtjev za videopoziv"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nema usluge"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Preuzimanje videopoziva"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Da biste uspostavili poziv, prvo isključite način rada u zrakoplovu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nije registrirano na mreži."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilna mreža nije dostupna."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilna mreža nije dostupna."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Unesite važeći broj da biste uspostavili poziv."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Pozivanje nije moguće."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Pokretanje MMI sekvence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Prekid poziva"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferencijski poziv"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Poziv u tijeku"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Poziv se nastavlja pomoću mobilnih podataka..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Prebacivanje na Wi-Fi mrežu nije moguće"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videopoziv će ostati na mobilnoj mreži. Možda ćete morati platiti podatkovni promet."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Poziv se nastavlja pomoću mobilnih podataka..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Prebacivanje na Wi-Fi mrežu nije moguće"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videopoziv će ostati na mobilnoj mreži. Možda ćete morati platiti podatkovni promet."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne prikazuj ponovno"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-hu/strings.xml b/java/com/android/incallui/res/values-hu/strings.xml
index 08d374b..fe52421 100644
--- a/java/com/android/incallui/res/values-hu/strings.xml
+++ b/java/com/android/incallui/res/values-hu/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Nem fogadott hívás: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Hívás folyamatban"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Folyamatban lévő munkahelyi hívás"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Folyamatban lévő Wi-Fi-hívás"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Folyamatban lévő munkahelyi hívás Wi-Fin keresztül"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Folyamatban lévő Wi-Fi-hívás"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Folyamatban lévő munkahelyi hívás Wi-Fin keresztül"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Tartásban"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Bejövő hívás"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Bejövő hívás fotóval"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Fontos bejövő hívás fotóval, üzenettel és hellyel"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Fontos bejövő hívás mellékletekkel"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Bejövő munkahelyi hívás"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Beérkező Wi-Fi-hívás"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Bejövő munkahelyi hívás Wi-Fin keresztül"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Beérkező Wi-Fi-hívás"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Bejövő munkahelyi hívás Wi-Fin keresztül"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Bejövő gyanús spamhívás"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Bejövő videokérés"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nincs szolgáltatás"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Videohívás fogadása"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Híváskezdeményezéshez kapcsolja ki a Repülőgép üzemmódot."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nincs regisztrálva a hálózaton."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"A mobilhálózat nem érhető el."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"A mobilhálózat nem érhető el."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Hívásindításhoz adjon meg egy érvényes számot."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"A hívás sikertelen."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI-sorozat indítása..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Hívás befejezése"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenciahívás"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Hívásban"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Hívás folytatása mobil-adatkapcsolaton keresztül…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nem sikerült Wi-Fi-hálózatra váltani"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"A videohívást továbbra is a mobilhálózaton folytatja. A mobilszolgáltató a normál adatforgalmi díjat számítja fel."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Hívás folytatása mobil-adatkapcsolaton keresztül…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nem sikerült Wi-Fi-hálózatra váltani"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"A videohívást továbbra is a mobilhálózaton folytatja. A mobilszolgáltató a normál adatforgalmi díjat számítja fel."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne jelenjen meg többé"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-hy/strings.xml b/java/com/android/incallui/res/values-hy/strings.xml
index f6496d1..4287820 100644
--- a/java/com/android/incallui/res/values-hy/strings.xml
+++ b/java/com/android/incallui/res/values-hy/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Բաց թողնված զանգ <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>-ից"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Ընթացիկ զանգը"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ընթացիկ աշխատանքային զանգ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ընթացիկ զանգ Wi-Fi-ի միջոցով"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ընթացիկ աշխատանքային Wi-Fi զանգ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ընթացիկ զանգ Wi-Fi-ի միջոցով"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ընթացիկ աշխատանքային զանգ Wi-Fi-ի միջոցով"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Սպասում"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Մուտքային զանգ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Մուտքային զանգ՝ լուսանկարով"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Կարևոր մուտքային զանգ՝ կցորդներով"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Կարևոր մուտքային զանգ՝ կցորդներով"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Մուտքային աշխատանքային զանգ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Մուտքային զանգ Wi-Fi-ի միջոցով"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Մուտքային աշխատանքային Wi-Fi զանգ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Մուտքային զանգ Wi-Fi-ի միջոցով"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Մուտքային աշխատանքային զանգ Wi-Fi-ի միջոցով"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Մուտքային զանգը հավանաբար լցոն է"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Մուտքային տեսազանգի հայցում"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ծառայություններ չկան"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Ընդունել տեսազանգը"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Զանգի կատարման համար նախ անջատեք թռիչքային ռեժիմը:"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ցանցում գրանցված չէ:"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Բջջային ցանցն անհասանելի է:"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Բջջային ցանցն անհասանելի է:"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Զանգ կատարելու համար մուտքագրեք ճիշտ համար:"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Հնարավոր չէ զանգել:"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Մեկնարկում է MMI հաջորդականությունը..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Ավարտել զանգը"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Կոնֆերանս զանգ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Զանգ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Զանգն այժմ բջջային ինտերնետով է ընթանում…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Չհաջողվեց միանալ Wi-Fi ցանցին"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Տեսազանգը կշարունակվի բջջային ցանցով: Գանձումը կկատարվի ըստ ձեր սակագնային պլանի:"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Զանգն այժմ բջջային ինտերնետով է ընթանում…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Չհաջողվեց միանալ Wi-Fi ցանցին"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Տեսազանգը կշարունակվի բջջային ցանցով: Գանձումը կկատարվի ըստ ձեր սակագնային պլանի:"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Այլևս ցույց չտալ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-in/strings.xml b/java/com/android/incallui/res/values-in/strings.xml
index 279e72d..6de6136 100644
--- a/java/com/android/incallui/res/values-in/strings.xml
+++ b/java/com/android/incallui/res/values-in/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Panggilan tak terjawab dari <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Panggilan yang sedang berlangsung"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Panggilan telepon kerja yang sedang berlangsung"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Panggilan Wi-Fi keluar"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Panggilan Wi-Fi kerja yang sedang berlangsung"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Panggilan Wi-Fi keluar"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Panggilan kerja Wi-Fi yang berlangsung"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ditangguhkan"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Panggilan masuk"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Panggilan masuk dengan foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Panggilan penting dengan foto, pesan, dan lokasi"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Panggilan masuk penting dengan lampiran"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Panggilan telepon kerja yang masuk"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Panggilan Wi-Fi masuk"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Panggilan telepon Wi-Fi kerja yang masuk"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Panggilan Wi-Fi masuk"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Panggilan kerja Wi-Fi masuk"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Panggilan masuk yang diduga spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Permintaan video masuk"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Tidak ada layanan"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Lakukan Video Call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Untuk melakukan panggilan, pertama-tama matikan mode Pesawat."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Tidak terdaftar pada jaringan."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Jaringan seluler tidak tersedia."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Jaringan seluler tidak tersedia."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Untuk melakukan panggilan telepon, masukkan nomor yang valid."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Tidak dapat menelepon."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Memulai urutan MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Akhiri panggilan"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telewicara"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Sedang menelepon"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Melanjutkan panggilan menggunakan data seluler..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Tidak dapat beralih ke jaringan Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video call akan tetap di jaringan seluler. Biaya data standar mungkin berlaku."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Melanjutkan panggilan menggunakan data seluler..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Tidak dapat beralih ke jaringan Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video call akan tetap di jaringan seluler. Tarif data standar mungkin berlaku."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Jangan tampilkan ini lagi"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-is/strings.xml b/java/com/android/incallui/res/values-is/strings.xml
index 795e952..8393510 100644
--- a/java/com/android/incallui/res/values-is/strings.xml
+++ b/java/com/android/incallui/res/values-is/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Ósvarað símtal frá <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Samtal í gangi"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Vinnusímtal í gangi"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi símtal stendur yfir"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Vinnusímtal í gangi um Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi símtal stendur yfir"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Vinnusímtal í gangi um Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Í bið"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Móttekið símtal"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Móttekið símtal með mynd"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Mikilvægt móttekið símtal með mynd, skilaboðum og staðsetningu"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Mikilvægt móttekið símtal með viðhengjum"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Vinnusímtal berst"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi símtal berst"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Vinnusímtal berst um Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Wi-Fi símtal berst"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Vinnusímtal berst um Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Símtal sem berst er hugsanlega úr ruslnúmeri"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Myndbeiðni berst"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ekkert símasamband"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Þiggja myndsímtal"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Til að hringja símtal þarftu fyrst að slökkva á flugstillingu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ekki skráð á símkerfi."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Farsímakerfi ekki til staðar."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Farsímakerfi ekki tiltækt."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Sláðu inn gilt númer til að hringja símtal."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Ekki hægt að hringja."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Ræsir MMI-runu…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Ljúka símtali"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Símafundur"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Í símtali"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Símtal heldur áfram og notar farsímagögn…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ekki var hægt að skipta yfir á Wi-Fi-net"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Myndsímtal verður áfram á farsímaneti. Stöðluð gjöld fyrir gagnaflutning kunna að eiga við."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Símtal heldur áfram og notar farsímagögn…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Ekki var hægt að skipta yfir á Wi-Fi-net"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Myndsímtal verður áfram á farsímaneti. Stöðluð gjöld fyrir gagnaflutning kunna að eiga við."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ekki birta þetta aftur"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-it/strings.xml b/java/com/android/incallui/res/values-it/strings.xml
index 836b934..ca2b4b1 100644
--- a/java/com/android/incallui/res/values-it/strings.xml
+++ b/java/com/android/incallui/res/values-it/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chiamata senza risposta da <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chiamata in corso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chiamata di lavoro in corso"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chiamata Wi-Fi in corso"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chiamata di lavoro tramite Wi-Fi in corso"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chiamata Wi-Fi in corso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chiamata di lavoro tramite Wi-Fi in corso"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"In attesa"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chiamata in arrivo"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chiamata in arrivo con foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Chiamata importante in arrivo con foto, messaggio e posizione"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chiamata importante in arrivo con allegati"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chiamata di lavoro in arrivo"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chiamata Wi-Fi in arrivo"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chiamata di lavoro in arrivo tramite Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chiamata Wi-Fi in arrivo"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chiamata di lavoro tramite Wi-Fi in arrivo"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Chiamata di presunto spam in arrivo"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Richiesta video in arrivo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nessun servizio"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Ricevi videochiamata"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Per fare una telefonata, disattiva la modalità aereo."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Non registrato sulla rete."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rete cellulare non disponibile."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rete mobile non disponibile."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Per effettuare una chiamata, inserisci un numero valido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Impossibile chiamare."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Inizio sequenza MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Termina chiamata"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Audioconferenza"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Chiamata in corso"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Proseguimento della chiamata utilizzando la rete dati…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Impossibile passare alla rete Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"La videochiamata rimarrà sulla rete cellulare. Potrebbero essere applicati costi standard per il traffico dati."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Proseguimento della chiamata utilizzando i dati mobili…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Impossibile passare alla rete Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"La videochiamata rimarrà sulla rete mobile. Potrebbero essere applicati costi standard per il traffico dati."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Non mostrare più questo messaggio"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-iw/strings.xml b/java/com/android/incallui/res/values-iw/strings.xml
index 195cb0f..326078a 100644
--- a/java/com/android/incallui/res/values-iw/strings.xml
+++ b/java/com/android/incallui/res/values-iw/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"שיחה שלא נענתה מאת <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"שיחה פעילה"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"שיחת עבודה פעילה"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"‏שיחת Wi-Fi מתבצעת"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"‏שיחת עבודה פעילה ברשת WiFi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"‏שיחת Wi-Fi פעילה"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"‏שיחת עבודה פעילה ברשת Wi‑Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"בהמתנה"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"שיחה נכנסת"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"שיחה נכנסת עם תמונה"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"שיחה נכנסת חשובה עם תמונה, הודעה ומיקום"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"שיחה נכנסת חשובה עם קבצים מצורפים"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"שיחת עבודה נכנסת"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"‏שיחת Wi-Fi נכנסת"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"‏שיחת עבודה נכנסת ברשת WiFi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"‏שיחת Wi-Fi נכנסת"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"‏שיחת עבודה נכנסת ברשת Wi‑Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"השיחה הנכנסת חשודה כספאם"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"בקשת וידאו נכנסת"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"אין שירות"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"קבל את שיחת הווידאו"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"כדי להתקשר, כבה תחילה את מצב טיסה."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"לא רשום ברשת."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"רשת סלולרית אינה זמינה."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"הרשת הסלולרית אינה זמינה."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"כדי להתקשר, הזן מספר טלפון חוקי."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"לא ניתן להתקשר."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"‏מתחיל רצף MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"סיים שיחה"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"שיחת ועידה"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"בשיחה"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ממשיך את השיחה באמצעות הרשת הסלולרית..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"‏לא ניתן לעבור לרשת Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"שיחת הווידאו תמשיך להיות ברשת הסלולרית. ייתכן שתחויב על ידי הספק הסלולרי בגין צריכת נתונים."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ממשיך את השיחה באמצעות הרשת הסלולרית…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"‏לא ניתן לעבור לרשת Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"שיחת הווידאו תמשיך להיות ברשת הסלולרית. ייתכן שתחויב על שימוש בנתונים."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"אל תציג זאת שוב"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ja/strings.xml b/java/com/android/incallui/res/values-ja/strings.xml
index 0e186fa..a54c4e1 100644
--- a/java/com/android/incallui/res/values-ja/strings.xml
+++ b/java/com/android/incallui/res/values-ja/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> さんからの不在着信"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"通話中"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"仕事の通話中"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi通話を発信中"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"仕事の Wi-Fi 通話中"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi 通話を発信中"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"仕事の Wi-Fi 通話を発信中"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"保留中"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"通話着信"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"着信（写真あり）"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"重要な着信（写真、メッセージ、位置情報あり）"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"重要な着信（添付ファイルあり）"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"仕事の通話が着信中"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi通話が着信中"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"仕事の Wi-Fi 通話が着信中"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Wi-Fi 通話が着信中"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"仕事の Wi-Fi 通話が着信中"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"迷惑電話の疑いがある通話を着信しています"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ビデオハングアウトリクエスト着信"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"通信サービスなし"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ビデオハングアウトを引き継ぐ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"機内モードをOFFにしてから発信してください。"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ご加入の通信サービスがありません"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"モバイルネットワークが利用できません。"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"モバイル ネットワークを利用できません。"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"発信するには、有効な番号を入力してください。"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"発信できません。"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMIシーケンスを開始中..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"通話を終了"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"グループ通話"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"通話中"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"モバイルデータを使用して通話を継続しています…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ネットワークに切り替えることができませんでした"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"引き続きモバイル ネットワークを使用してビデオ通話を続行します。通常のデータ通信料が適用される場合があります。"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"モバイルデータを使用して通話を継続しています…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi ネットワークに切り替えることができませんでした"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"引き続きモバイル ネットワークを使用してビデオハングアウトを続行します。通常のデータ通信料が適用される場合があります。"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"今後このメッセージを表示しない"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ka/strings.xml b/java/com/android/incallui/res/values-ka/strings.xml
index 6c46bd0..fed398b 100644
--- a/java/com/android/incallui/res/values-ka/strings.xml
+++ b/java/com/android/incallui/res/values-ka/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"გამოტოვებული ზარი <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>-ისგან"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"მიმდინარე ზარი"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"მიმდინარე ზარი (სამსახური)"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"მიმდინარე Wi-Fi ზარი"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"მიმდინარე Wi-Fi ზარი (სამსახური)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"მიმდინარე Wi-Fi ზარი"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"მიმდინარე Wi-Fi ზარი (სამსახური)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"შეყოვნების რეჟიმში"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"შემომავალი ზარი"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"შემომავალი ზარი ფოტოთი"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ზარი ფოტოთი, შეტყობინებით და მდებარეობით"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"მნიშვნელოვანი შემომავალი ზარი დანართებით"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"შემომავალი ზარი (სამსახური)"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"შემომავალი Wi-Fi ზარი"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"შემომავალი Wi-Fi ზარი (სამსახური)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"შემომავალი Wi-Fi ზარი"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"შემომავალი Wi-Fi ზარი (სამსახური)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"შემომავალი ზარი - სავარაუდოდ სპამი"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"შემომავალი ვიდეოს მოთხოვნა"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"სერვისი არ არის"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Take ვიდეო ზარი"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ზარის განსახორციელებლად, ჯერ თვითმფრინავის რეჟიმი უნდა გამორთოთ."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ქსელში რეგისტრირებული არ არის."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ფიჭური ქსელი მიუწვდომელია"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"მობილური ქსელი მიუწვდომელია."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ზარის განხორციელებისათვის, შეიყვანეთ მოქმედი ნომერი."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"არ ირეკება."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI თანმიმდევრობის დაწყება…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ზარის დასრულება"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"საკონფერენციო ზარი"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"მონაწილეობს ზარში"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ზარი გრძელდება მობილური ინტერნეტის გამოყენებით…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ქსელზე გადართვა ვერ მოხერხდა"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ვიდეოზარი ფიჭურ ქსელში დარჩება. შესაძლოა მოგიწიოთ მობილური ინტერნეტის სტანდარტული ფასის გადახდა."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ზარი გრძელდება მობილური ინტერნეტის გამოყენებით…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi ქსელზე გადართვა ვერ მოხერხდა"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ვიდეოზარი მობილური ინტერნეტის ქსელში დარჩება. შესაძლოა მოგიწიოთ მობილური ინტერნეტის სტანდარტული საფასურის გადახდა."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"აღარ მაჩვენო"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-kk/strings.xml b/java/com/android/incallui/res/values-kk/strings.xml
index 310ba4d..42ac9b0 100644
--- a/java/com/android/incallui/res/values-kk/strings.xml
+++ b/java/com/android/incallui/res/values-kk/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> қоңырауы өткізіп алынған"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Ағымдағы қоңырау"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ағымдағы жұмыс қоңырауы"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ағымдық Wi-Fi қоңырауы"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ағымдағы Wi-Fi жұмыс қоңырауы"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Қазіргі Wi-Fi қоңырауы"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Қазіргі Wi-Fi жұмыс қоңырауы"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Күтуде"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Келген қоңырау"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Сурет тіркелген кіріс қоңырау"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Сурет, хабар және орын дерегі тіркелген маңызды кіріс қоңырау"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Тіркемелері бар маңызды кіріс қоңырау"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Кіріс жұмыс қоңырауы"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Кіріс Wi-Fi қоңырауы"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Кіріс Wi-Fi жұмыс қоңырауы"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Кіріс Wi-Fi қоңырауы"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Кіріс Wi-Fi жұмыс қоңырауы"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Кіріс қоңырауы спам болуы мүмкін"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Кіріс бейне сұрау"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Қызмет көрсетілмейді"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Бейне қоңырауды бері бұру"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Қоңырау шалу үшін алдымен Ұшақ режимін өшіріңіз."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Желіде тіркелмеген."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Ұялы желі қол жетімді емес."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобильдік желі қолжетімсіз."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Қоңырау шалу үшін жарамды нөмірді енгізіңіз."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Қоңырау шалу мүмкін емес."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI қатарын бастау…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Қоңырауды аяқтау"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Мәжіліс қоңырауы"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Бос емес"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Қоңырау ұялы дерек арқылы жалғасады..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi желісіне қосылу мүмкін болмады"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Бейне қоңырау ұялы байланыс желісінде қалады. Стандартты деректер ақысы алынуы мүмкін."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Қоңырау мобильдік желі арқылы жалғасуда…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi желісіне қосылу мүмкін болмады"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Бейне қоңырау мобильдік желіде қалады. Стандартты мобильдік байланыс ақысы алынуы мүмкін."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Мұны қайтадан көрсетпеу"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-km/strings.xml b/java/com/android/incallui/res/values-km/strings.xml
index 4fbafef..2ae64c1 100644
--- a/java/com/android/incallui/res/values-km/strings.xml
+++ b/java/com/android/incallui/res/values-km/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"ខកខាន​ទទួល​ពី <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"កំពុង​បន្ត​ការ​ហៅ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ការហៅពីកន្លែងការងារកំពុងដំណើរការ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ការហៅតាម Wi-Fi កំពុងបន្ត"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ការហៅតាម Wi-Fi ពីកន្លែងការងារកំពុងដំណើរការ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ការហៅតាម Wi-Fi កំពុង​ដំណើរការ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ការហៅតាម Wi-Fi ពីកន្លែងការងារ​កំពុង​ដំណើរការ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"រង់ចាំ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ការ​ហៅ​ចូល"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ការហៅ​ចូល​​ដែល​មាន​រូបថត"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ការ​ហៅ​ចូល​ដែល​សំខាន់​មាន​រូបថត សារ និង​ទីតាំង"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ការហៅ​​ចូល​ដែល​សំខាន់​មាន​ឯកសារ​ភ្ជាប់"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"កំពុងហៅចូលពីកន្លែងការងារ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"មានការហៅចូលមកតាម Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"កំពុងហៅចូលពីកន្លែងការងារតាម Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"មានការហៅចូលតាម Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"មាន​ការ​ហៅ​ចូល​ពី​កន្លែង​ការងារ​តាម Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ការ​ហៅ​បន្លំ​​ចូល​​​ដែល​សង្ស័យ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"សំណើ​ការ​ហៅ​ជា​វីដេអូ​ចូល"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"គ្មាន​សេវា"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ទទួល​យក​ការ​ហៅ​វីដេអូ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ដើម្បី​កំណត់​ការ​ហៅ ដំបូង​ត្រូវ​បិទ​របៀប​នៅ​ពេល​ជិះ​យន្តហោះ។"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"មិន​បាន​ចុះ​ឈ្មោះ​នៅ​លើ​បណ្ដាញ។"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"បណ្ដាញ​ចល័ត​មិន​អាច​ប្រើ​បាន។"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"មិនមានបណ្តាញទូរសព្ទ​ចល័ត។"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ដើម្បីធ្វើការហៅ បញ្ចូលលេខដែលមានសុពលភាព។"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"មិនអាចហៅបានទេ។"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"កំពុង​ចាប់ផ្ដើម​លំដាប់ MMI ..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"បញ្ចប់ការហៅ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"ហៅជា​សន្និសីទ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ស្ថិត​​ក្នុង​ការ​ហៅ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"កំពុង​បន្ត​ហៅ​ទូរស័ព្ទ​ដោយ​ប្រើ​ទិន្នន័យ​ទូរស័ព្ទ​ចល័ត..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"មិន​អាច​ប្ដូរ​ទៅ​បណ្ដាញ Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ការហៅ​ជា​វីដេអូ​នឹង​នៅ​តែ​​ស្ថិត​លើ​បណ្ដាញ​ទូរសព្ទ​ចល័ត។ អាច​​នឹង​​គិតថ្លៃ​ទិន្នន័យ​តាម​តម្លៃ​​ស្តង់ដារ។"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"កំពុង​បន្ត​ការហៅ​ទូរសព្ទ​ ដោយ​ប្រើប្រាស់​ទិន្នន័យទូរសព្ទ​ចល័ត…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"មិន​អាច​ប្ដូរ​ទៅ​បណ្ដាញ Wi-Fi បាន​ទេ"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ការហៅ​តាម​វីដេអូ​នឹង​នៅតែ​មាន​នៅ​លើ​បណ្ដាញ​ទូរសព្ទចល័ត។ អាច​នឹង​គិតថ្លៃ​ទិន្នន័យ​តាម​តម្លៃ​ស្តង់ដារ។"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"កុំ​បង្ហាញ​វា​ម្ដង​ទៀត"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-kn/strings.xml b/java/com/android/incallui/res/values-kn/strings.xml
index 5d47c7e..cb47e35 100644
--- a/java/com/android/incallui/res/values-kn/strings.xml
+++ b/java/com/android/incallui/res/values-kn/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> ಅವರಿಂದ ಮಿಸ್ಡ್ ಕಾಲ್"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕರೆ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕೆಲಸದ ಕರೆ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ವೈ-ಫೈ ಕರೆ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ವೈ-ಫೈ ಕೆಲಸದ ಕರೆ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ವೈ-ಫೈ ಕರೆ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ವೈ-ಫೈ ಕೆಲಸದ ಕರೆ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ತಡೆಹಿಡಿಯಲಾಗಿದೆ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ಒಳಬರುವ ಕರೆ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ಫೋಟೋದೊಂದಿಗೆ ಒಳಬರುತ್ತಿರುವ ಕರೆ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ಪೋಟೋ, ಸಂದೇಶ ಮತ್ತು ಸ್ಥಳದೊಂದಿಗೆ ಒಳಬರುತ್ತಿರುವ ಪ್ರಮುಖ ಕರೆ"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ಲಗತ್ತುಗಳೊಂದಿಗೆ ಒಳಬರುತ್ತಿರುವ ಪ್ರಮುಖ ಕರೆ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ಒಳಬರುವ ಕೆಲಸದ ಕರೆ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ಒಳಬರುವ ವೈ-ಫೈ ಕರೆ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ಒಳಬರುವ ವೈ-ಫೈ ಕೆಲಸದ ಕರೆ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ಒಳಬರುವ ವೈ-ಫೈ ಕರೆ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ಒಳಬರುವ ವೈ-ಫೈ ಕೆಲಸದ ಕರೆ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ಒಳಬರುವ ಶಂಕಿತ ಸ್ಪ್ಯಾಮ್ ಕರೆ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ಒಳಬರುವ ವೀಡಿಯೊ ವಿನಂತಿ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ಯಾವುದೇ ಸೇವೆಯಿಲ್ಲ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ವೀಡಿಯೊ ಕರೆ ತೆಗೆದುಕೊಳ್ಳಿ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ಕರೆ ಮಾಡಲು, ಮೊದಲು ಏರ್‌ಪ್ಲೇನ್‌‌ ಮೋಡ್‌‌ ಆಫ್‌ ಮಾಡಿ."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ನೆಟ್‌ವರ್ಕ್‌ನಲ್ಲಿ ಇನ್ನೂ ನೋಂದಣಿಯಾಗಿಲ್ಲ."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ಸೆಲ್ಯುಲಾರ್ ನೆಟ್‌ವರ್ಕ್‌ ಲಭ್ಯವಿಲ್ಲ."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"ಮೊಬೈಲ್‌ ನೆಟ್‌ವರ್ಕ್‌ ಲಭ್ಯವಿಲ್ಲ."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ಕರೆಯನ್ನು ಮಾಡಲು, ಮಾನ್ಯವಾದ ಸಂಖ್ಯೆಯನ್ನು ನಮೂದಿಸಿ."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ಕರೆ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI ಅನುಕ್ರಮ ಪ್ರಾರಂಭವಾಗುತ್ತಿದೆ…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ಕರೆ ಅಂತ್ಯಗೊಳಿಸಿ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"ಕಾನ್ಫರೆನ್ಸ್ ಕರೆ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ಕರೆಯಲ್ಲಿ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ಸೆಲ್ಯುಲಾರ್ ಡೇಟಾ ಬಳಸಿಕೊಂಡು ಕರೆ ಮುಂದುವರಿಸಲಾಗುತ್ತಿದೆ…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"ವೈ-ಫೈ ನೆಟ್‍ವರ್ಕ್‌ಗೆ ಬದಲಾಯಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ಸೆಲ್ಯುಲಾರ್ ನೆಟ್‌ವರ್ಕ್‌ಗೆ ವೀಡಿಯೊ ಕರೆ ಹಾಗೆಯೇ ಉಳಿಯುತ್ತದೆ. ಪ್ರಮಾಣಿತ ಡೇಟಾ ಶುಲ್ಕಗಳು ಅನ್ವಯಿಸಬಹುದು."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ಮೊಬೈಲ್ ಡೇಟಾ ಬಳಸಿಕೊಂಡು ಕರೆ ಮುಂದುವರಿಸಲಾಗುತ್ತಿದೆ…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ವೈ-ಫೈ ನೆಟ್‍ವರ್ಕ್‌ಗೆ ಬದಲಾಯಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ವೀಡಿಯೊ ಕರೆ ಮೊಬೈಲ್ ನೆಟ್‌ವರ್ಕ್‌ನಲ್ಲಿ ಹಾಗೆಯೇ ಉಳಿಯುತ್ತದೆ. ಪ್ರಮಾಣಿತ ಡೇಟಾ ಶುಲ್ಕಗಳು ಅನ್ವಯಿಸಬಹುದು."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ಮತ್ತೆ ಇದನ್ನು ತೋರಿಸಬೇಡ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ko/strings.xml b/java/com/android/incallui/res/values-ko/strings.xml
index 44c5338..676ba08 100644
--- a/java/com/android/incallui/res/values-ko/strings.xml
+++ b/java/com/android/incallui/res/values-ko/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>의 부재중 전화"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"현재 통화"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"발신 업무 전화"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi 발신 전화"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"발신 Wi-Fi 업무 전화"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"진행 중인 Wi-Fi 통화"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"진행 중인 Wi-Fi 업무 통화"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"대기 중"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"수신전화"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"사진이 있는 수신 전화"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"사진, 메시지, 위치가 있는 중요한 수신 전화"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"첨부파일이 있는 중요한 수신 전화"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"수신 업무 전화"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi 수신 전화"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"수신 Wi-Fi 업무 전화"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"수신 Wi-Fi 통화"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"수신 Wi-Fi 업무 통화"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"의심스러운 스팸 발신자로부터 온 전화"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"수신 동영상 요청"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"서비스 불가"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"화상 통화 받기"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"전화를 걸려면 먼저 비행기 모드를 해제하세요."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"네트워크에서 등록되지 않았습니다."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"사용 가능한 이동통신망이 없습니다."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"모바일 네트워크를 사용할 수 없습니다."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"전화를 걸려면 올바른 번호를 입력하세요."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"전화를 걸 수 없습니다."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI 시퀀스 시작 중..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"통화 종료"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"다자간 통화"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"통화 중"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"모바일 데이터를 사용하여 계속 통화 중…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi 네트워크로 전환할 수 없습니다."</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"화상 통화가 모바일 네트워크에서 유지됩니다. 표준 데이터 요금이 부과될 수 있습니다."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"모바일 데이터를 사용하여 통화를 계속합니다…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi 네트워크로 전환할 수 없습니다."</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"화상 통화가 모바일 네트워크에서 계속됩니다. 표준 데이터 요금이 부과될 수 있습니다."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"다시 표시하지 않음"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ky/strings.xml b/java/com/android/incallui/res/values-ky/strings.xml
index 0f8ee3c..1f60604 100644
--- a/java/com/android/incallui/res/values-ky/strings.xml
+++ b/java/com/android/incallui/res/values-ky/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> дегенден кабыл алынбаган чалуу"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Учурдагы чалуу"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Учурда болуп жаткан чалуу (жумуш боюнча)"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Аткаруудагы Wi-Fi чалуу"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Учурда болуп жаткан Wi-Fi чалуу (жумуш боюнча)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Учурдагы Wi-Fi чалуу"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Учурдагы Wi-Fi чалуу (жумуш боюнча)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Күтүлүүдө"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Кирүүчү чалуу"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Сүрөтү бар кирүүчү чалуу"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Сүрөт, билдирүү жана жайгашкан жер бар маанилүү чалуу"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Тиркемелери бар маанилүү кирүүчү чалуу"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Жумуш боюнча келип жаткан чалуу"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Кирүүчү Wi-Fi чалуу"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Жумуш боюнча келип жаткан Wi-Fi чалуу"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Келип жаткан Wi-Fi чалуу"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Жумуш боюнча келип жаткан Wi-Fi чалуу"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Келип жаткан чалуу спам окшойт"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Келип жаткан видео сурамы"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Байланыш жок"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Видео чалууну кабыл алуу"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Чалуу үчүн, адегенде учак режимин өчүрүңүз."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Тармакта катталган эмес."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мобилдик тармак жеткиликтүү эмес."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобилдик тармак жок."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Чалуу үчүн, жарактуу номер киргизиңиз."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Чалынбай жатат."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI кезеги башталууда…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Чалууну бүтүрүү"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференц-чалуу"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Чалууда"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Уюлдук дайындарды пайдалануу менен чалууну улантууда..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi тармагына туташа албай койдук"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видео чалуу уюлдук тармак аркылуу аткарылат. Стандарттык тариф боюнча акы алынышы мүмкүн."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Мобилдик дайындарды пайдалануу менен чалууну улантууда…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi тармагына туташа албай койдук"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видео чалуу мобилдик тармак аркылуу аткарылат. Стандарттык тариф боюнча акы алынышы мүмкүн."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Экинчи көрсөтүлбөсүн"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-lo/strings.xml b/java/com/android/incallui/res/values-lo/strings.xml
index 56335d4..45a2a40 100644
--- a/java/com/android/incallui/res/values-lo/strings.xml
+++ b/java/com/android/incallui/res/values-lo/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"ສາຍບໍ່ໄດ້ຮັບຈາກ <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ສາຍທີ່ກຳລັງໂທອອກ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ສາຍໂທອອກຈາກບ່ອນເຮັດວຽກ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ການ​ໂທ Wi​-Fi ທີ່ດໍາເນີນຢູ່"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ສາຍໂທອອກ Wi-Fi ຈາກບ່ອນເຮັດວຽກ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ການໂທ Wi-Fi ທີ່ດໍາເນີນຢູ່"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ການໂທ Wi-Fi ບ່ອນເຮັດວຽກທີ່ດໍາເນີນຢູ່"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ພັກສາຍຊົ່ວຄາວ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ສາຍໂທເຂົ້າ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ສາຍໂທເຂົ້າພ້ອມຮູບພາບ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ສາຍໂທເຂົ້າສຳຄັນພ້ອມຮູບພາບ, ຂໍ້ຄວາມ ແລະ ສະຖານທີ່"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ສາຍໂທເຂົ້າສຳຄັນພ້ອມໄຟລ໌ແນບ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ສາຍໂທເຂົ້າຈາກບ່ອນເຮັດວຽກ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ສາຍໂທເຂົ້າ Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ສາຍໂທເຂົ້າ Wi-Fi ຈາກບ່ອນເຮັດວຽກ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ສາຍໂທເຂົ້າ Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ສາຍໂທເຂົ້າ Wi-Fi ບ່ອນເຮັດວຽກ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ມີການໂທທີ່ຄາດວ່າເປັນສະແປມໂທເຂົ້າມາ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"​ຄຳ​ຮ້ອງ​ຂໍ​ວິ​ດີ​ໂອ​ເຂົ້າ​ມາ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ບໍ່ມີບໍລິການ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ຮັບສາຍວິດີໂອ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ເພື່ອໂທລະສັບ, ໃຫ້ປິດໂໝດຢູ່ເທິງຍົນກ່ອນ."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ບໍ່ໄດ້ລົງທະບຽນໃນເຄືອຂ່າຍ."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ບໍ່​ມີ​ເຄືອ​ຂ່າຍ​ມື​ຖື​ທີ່​ສາ​ມາດ​ໃຊ້​ໄດ້."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"ເຄືອຂ່າຍມືຖືບໍ່ສາມາດໃຊ້ໄດ້."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ເພື່ອ​ທີ່​ຈະ​ໂທ, ປ້ອນ​ເບີ​ໂທ​ທີ່​ໃຊ້​ໄດ້​ເຂົ້າ​ໄປ."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ບໍ່​ສາ​ມາດ​ໂທ​ໄດ້."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"ກຳລັງເລີ່ມຕົ້ນລຳດັບ MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ວາງສາຍ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"ການປະຊຸມທາງໂທລະສັບ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ຢູ່ໃນສາຍ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ສືບຕໍ່ການໂທໂດຍໃຊ້ອິນເຕີເນັດມືຖື…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"ບໍ່ສາມາດສະຫຼັບໄປໃຊ້ເຄືອຂ່າຍ Wi-Fi ໄດ້"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ການໂທດ້ວຍວິດີໂອຈະຍັງໃຊ້ຜ່ານເຄືອຂ່າຍມືຖືຢູ່ ໂດຍອາດມີການຮຽກເກັບຄ່າບໍລິການຕາມປົກກະຕິ."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ກຳລັງສືບຕໍ່ສາຍໂດຍໃຊ້ອິນເຕີເນັດມືຖື…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ບໍ່ສາມາດສະຫຼັບໄປໃຊ້ເຄືອຂ່າຍ Wi-Fi ໄດ້"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ການໂທວິດີໂອຈະຍັງຄົງຢູ່ໃນເຄືອຂ່າຍມືຖືຕໍ່ໄປ. ອາດມີການຮຽກເກັບຄ່າບໍລິການມາດຕະຖານ."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ບໍ່ຕ້ອງສະແດງຂໍ້ຄວາມນີ້ອີກ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-lt/strings.xml b/java/com/android/incallui/res/values-lt/strings.xml
index 4d4a0c0..e63ca70 100644
--- a/java/com/android/incallui/res/values-lt/strings.xml
+++ b/java/com/android/incallui/res/values-lt/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Praleistas skambutis nuo <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Vykstantis pokalbis"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Vykstantis darbo skambutis"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Vykstantis „Wi-Fi“ skambutis"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Vykstantis „Wi-Fi“ darbo skambutis"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Vykstantis „Wi-Fi“ skambutis"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Vykstantis „Wi-Fi“ darbo skambutis"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Sulaikyta"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Gaunamasis skambutis"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Gaunamasis skambutis su nuotrauka"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Svarbus gaunam. skamb. su nuotr., praneš. ir viet."</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Svarbus gaunamasis skambutis su priedais"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Gaunamasis darbo skambutis"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Gaunamasis „Wi-Fi“ skambutis"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Gaunamasis „Wi-Fi“ darbo skambutis"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Gaunamasis „Wi-Fi“ skambutis"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Gaunamasis „Wi-Fi“ darbo skambutis"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Gaunamasis įtartinas šlamšto skambutis"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Gaunama vaizdo skambučio užklausa"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nėra paslaugos"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Pasirinktas tinklas (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) negalimas"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Atsakyti"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Padėti ragelį"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"Vaizdo skambutis"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Vaizdo skam."</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Balsas"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Atsiliepti"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Atmesti"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atlikti vaizdo skambutį"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Jei norite skambinti, išjunkite lėktuvo režimą."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Neregistruota tinkle."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Korinis tinklas nepasiekiamas"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiliojo ryšio tinklas nepasiekiamas."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Kad galėtumėte paskambinti, įveskite tinkamą numerį."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nepavyko paskambinti."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Paleidžiama MMI seka..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Baigti skambutį"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferencinis skambutis"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Skambinant"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Skambutis tęsiamas naudojant mobiliojo ryšio duomenis…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nepavyko prisijungti prie „Wi-Fi“ tinklo"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Vaizdo skambutis ir toliau bus vykdomas naudojant mobiliojo ryšio tinklą. Gali būti taikomi įprasti duomenų mokesčiai."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Skambutis tęsiamas naudojant mobiliojo ryšio duomenis…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nepavyko prisijungti prie „Wi-Fi“ tinklo"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Vaizdo skambutis ir toliau bus vykdomas naudojant mobiliojo ryšio tinklą. Gali būti taikomi įprasti duomenų mokesčiai."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Daugiau to nerodyti"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-lv/strings.xml b/java/com/android/incallui/res/values-lv/strings.xml
index 9be46c4..441733a 100644
--- a/java/com/android/incallui/res/values-lv/strings.xml
+++ b/java/com/android/incallui/res/values-lv/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Neatbildēts zvans no: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Pašreizējā saruna"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Notiekošs darba zvans"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Notiekošs Wi-Fi zvans"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Notiekošs darba Wi-Fi zvans"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Notiekošs Wi-Fi zvans"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Notiekošs darba Wi-Fi zvans"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Aizturēts"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Ienākošais zvans"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Ienākošais zvans ar fotoattēlu"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Zvans ar fotoattēlu, ziņojumu un atrašanās vietu"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Svarīgs ienākošais zvans ar pielikumiem"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Ienākošs darba zvans"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Ienākošs Wi-Fi zvans"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Ienākošs darba Wi-Fi zvans"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Ienākošs Wi-Fi zvans"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Ienākošs darba Wi-Fi zvans"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Ienākošs, iespējams, nevēlams zvans"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Ienākošs video pieprasījums"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nav pakalpojuma"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Pārsūtīt videozvanu"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Lai veiktu zvanu, vispirms izslēdziet lidojuma režīmu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Tīklā nav reģistrēts."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilais tīkls nav pieejams."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilais tīkls nav pieejams."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Lai veiktu zvanu, ievadiet derīgu numuru."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nevar veikt zvanu."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Notiek MMI secības startēšana…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Beigt zvanu"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferences zvans"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Notiek zvans"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Zvans tiek turpināts, izmantojot mobilos datus…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nevarēja pārslēgt uz Wi-Fi tīklu"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videozvans tiks turpināts mobilo sakaru tīklā. Var tikt piemērota standarta maksa par datu pārraidi."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Zvans tiek turpināts, izmantojot mobilos datus…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nevarēja pārslēgt uz Wi-Fi tīklu"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videozvans tiks turpināts mobilo sakaru tīklā. Var tikt piemērota standarta maksa par datu pārraidi."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Vairs nerādīt šo ziņojumu"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-af/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-af/strings.xml
new file mode 100644
index 0000000..5897098
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-af/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Voortgaande WLAN-oproep"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Voortdurende WLAN-werkoproep"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Inkomende WLAN-oproep"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Inkomende WLAN-werkoproep"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-am/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-am/strings.xml
new file mode 100644
index 0000000..8ad4aa7
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-am/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"በመካሄድ ላይ ያለ የWLAN ጥሪ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"በመካሄድ ላይ ያለ የWLAN የስራ ጥሪ"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"ገቢ የWLAN ጥሪ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"ገቢ የWLAN የስራ ጥሪ"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ar/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ar/strings.xml
new file mode 100644
index 0000000..e718efd
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ar/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"‏مكالمة جارية على WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"‏مكالمة عمل جارية على WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"‏مكالمة واردة على WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"‏مكالمة عمل واردة على WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-az/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-az/strings.xml
new file mode 100644
index 0000000..4122d8d
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-az/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Davam edən WLAN Zəngi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Davam edən WLAN iş zəngi"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Gələn WLAN Zəngi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Gələn WLAN iş zəngi"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-b+sr+Latn/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-b+sr+Latn/strings.xml
new file mode 100644
index 0000000..84d27ac
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-b+sr+Latn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"WLAN poziv je u toku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"WLAN poslovni poziv je u toku"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Dolazni WLAN poziv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Dolazni WLAN poslovni poziv"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-be/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-be/strings.xml
new file mode 100644
index 0000000..44ea45c
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-be/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Бягучы выклік праз WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Бягучы выклік па працы праз WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Уваходны выклік праз WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Уваходны выклік па працы праз WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-bg/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-bg/strings.xml
new file mode 100644
index 0000000..3e42633
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-bg/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Текущо обаждане през WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Текущо служебно обаждане през WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Входящо обаждане през WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Входящо служебно обаждане през WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-bn/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-bn/strings.xml
new file mode 100644
index 0000000..2c66938
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-bn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"চালু থাকা WLAN কল"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"চালু থাকা WLAN কাজের কল"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"আগত WLAN কল"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"আগত WLAN কাজের কল"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-bs/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-bs/strings.xml
new file mode 100644
index 0000000..84d27ac
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-bs/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"WLAN poziv je u toku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"WLAN poslovni poziv je u toku"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Dolazni WLAN poziv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Dolazni WLAN poslovni poziv"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ca/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ca/strings.xml
new file mode 100644
index 0000000..4845f02
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ca/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Trucada per Wi-Fi en curs"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Trucada de feina per Wi-Fi en curs"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Trucada per Wi-Fi entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Trucada de feina per Wi-Fi entrant"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-cs/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-cs/strings.xml
new file mode 100644
index 0000000..b8be5c5
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-cs/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Probíhající hovor přes WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Probíhající pracovní hovor přes WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Příchozí hovor přes WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Příchozí pracovní hovor přes WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-da/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-da/strings.xml
new file mode 100644
index 0000000..fb079dd
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-da/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Igangværende WLAN-opkald"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Igangværende WLAN-opkald i forbindelse med arbejde"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Indgående WLAN-opkald"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Indgående WLAN-opkald i forbindelse med arbejde"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-de/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-de/strings.xml
new file mode 100644
index 0000000..ee504e8
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-de/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Laufender WLAN-Anruf"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Laufender geschäftlicher WLAN-Anruf"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Eingehender WLAN-Anruf"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Eingehender geschäftlicher WLAN-Anruf"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-el/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-el/strings.xml
new file mode 100644
index 0000000..9a722af
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-el/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Κλήση μέσω WLAN σε εξέλιξη"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Επαγγελματική κλήση μέσω WLAN σε εξέλιξη"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Εισερχόμενη κλήση μέσω WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Εισερχόμενη επαγγελματική κλήση μέσω WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-en-rAU/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-en-rAU/strings.xml
new file mode 100644
index 0000000..7447f83
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-en-rAU/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Ongoing Wi-Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Incoming Wi-Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Incoming Wi-Fi work call"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-en-rGB/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-en-rGB/strings.xml
new file mode 100644
index 0000000..7447f83
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-en-rGB/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Ongoing Wi-Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Incoming Wi-Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Incoming Wi-Fi work call"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-en-rIN/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-en-rIN/strings.xml
new file mode 100644
index 0000000..7447f83
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-en-rIN/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Ongoing Wi-Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Incoming Wi-Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Incoming Wi-Fi work call"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-es-rUS/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-es-rUS/strings.xml
new file mode 100644
index 0000000..8a48692
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-es-rUS/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Llamada por WLAN en curso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Llamada de trabajo por WLAN en curso"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Llamada por WLAN entrante"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Llamada de trabajo por WLAN entrante"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-es/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-es/strings.xml
new file mode 100644
index 0000000..6592f07
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-es/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Llamada en curso a través de WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Llamada de trabajo en curso a través de WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Llamada entrante a través de WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Llamada de trabajo entrante a través de WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-et/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-et/strings.xml
new file mode 100644
index 0000000..2697938
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-et/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Käimasolev WLAN-i kõne"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Käimasolev WLAN-i töökõne"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Sissetulev WLAN-i kõne"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Sissetulev WLAN-i töökõne"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-eu/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-eu/strings.xml
new file mode 100644
index 0000000..4898a4b
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-eu/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Uneko WLAN bidezko deia"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Uneko WLAN bidezko laneko deia"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"WLAN bidez jasotako deia"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"WLAN bidez jasotako laneko deia"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-fa/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-fa/strings.xml
new file mode 100644
index 0000000..a7e1dcc
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-fa/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"‏تماس WLAN درحال انجام"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"‏تماس کاری WLAN درحال انجام"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"‏تماس WLAN ورودی"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"‏تماس کاری WLAN ورودی"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-fi/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-fi/strings.xml
new file mode 100644
index 0000000..c8b781a
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-fi/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Meneillään oleva WLAN-puhelu"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Meneillään oleva WLAN-työpuhelu"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Saapuva WLAN-puhelu"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Saapuva WLAN-työpuhelu"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-fr-rCA/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-fr-rCA/strings.xml
new file mode 100644
index 0000000..c3f12db
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-fr-rCA/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Appel WLAN en cours"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Appel professionnel WLAN en cours"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Appel WLAN entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Appel professionnel WLAN entrant"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-fr/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-fr/strings.xml
new file mode 100644
index 0000000..380b92f
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-fr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Appel Wi-Fi en cours"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Appel professionnel Wi-Fi en cours"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Appel Wi-Fi entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Appel professionnel Wi-Fi entrant"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-gl/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-gl/strings.xml
new file mode 100644
index 0000000..a9a26d0
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-gl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Chamada en curso a través de WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Chamada de traballo en curso a través de WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Chamada entrante a través de WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Chamada de traballo entrante a través de WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-gu/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-gu/strings.xml
new file mode 100644
index 0000000..d77d83e
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-gu/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"ચાલુ WLAN કૉલ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"ચાલુ WLAN કાર્ય કૉલ"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"ઇનકમિંગ WLAN કૉલ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"ઇનકમિંગ WLAN કાર્ય કૉલ"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-hi/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-hi/strings.xml
new file mode 100644
index 0000000..17866f8
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-hi/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"जारी WLAN कॉल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"कार्यस्थल पर जारी WLAN कॉल"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"इनकमिंग WLAN कॉल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"कार्यस्थल पर इनकमिंग WLAN कॉल"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-hr/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-hr/strings.xml
new file mode 100644
index 0000000..6050309
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-hr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Poziv putem WLAN-a u tijeku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Poslovni poziv putem WLAN-a u tijeku"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Dolazni poziv putem WLAN-a"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Dolazni poslovni poziv putem WLAN-a"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-hu/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-hu/strings.xml
new file mode 100644
index 0000000..af9455b
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-hu/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Folyamatban lévő WLAN-hívás"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Folyamatban lévő munkahelyi WLAN-hívás"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Bejövő WLAN-hívás"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Bejövő munkahelyi WLAN-hívás"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-hy/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-hy/strings.xml
new file mode 100644
index 0000000..a30d100
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-hy/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Ընթացիկ զանգ WLAN ցանցով"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Ընթացիկ աշխատանքային զանգ WLAN ցանցով"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Մուտքային զանգ WLAN ցանցով"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Մուտքային աշխատանքային զանգ WLAN ցանցով"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-in/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-in/strings.xml
new file mode 100644
index 0000000..227ed23
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-in/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Panggilan WLAN yang sedang berlangsung"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Panggilan kerja WLAN yang sedang berlangsung"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Panggilan WLAN masuk"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Panggilan kerja WLAN masuk"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-is/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-is/strings.xml
new file mode 100644
index 0000000..c92f2eb
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-is/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"WLAN-símtal í gangi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"WLAN-vinnusímtal í gangi"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Móttekið WLAN-símtal"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Móttekið WLAN-vinnusímtal"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-it/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-it/strings.xml
new file mode 100644
index 0000000..67413c8
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-it/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Chiamata WLAN in corso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Chiamata WLAN di lavoro in corso"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Chiamata WLAN in arrivo"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Chiamata WLAN di lavoro in arrivo"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-iw/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-iw/strings.xml
new file mode 100644
index 0000000..2288b1f
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-iw/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"‏שיחה פעילה באמצעות רשת Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"‏שיחת עבודה פעילה באמצעות רשת Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"‏שיחה נכנסת באמצעות רשת Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"‏שיחת עבודה נכנסת באמצעות רשת Wi-Fi"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ja/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ja/strings.xml
new file mode 100644
index 0000000..64b5e03
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ja/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"無線 LAN で通話中"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"無線 LAN で仕事の通話中"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"無線 LAN で通話を着信中"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"無線 LAN で仕事の通話を着信中"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ka/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ka/strings.xml
new file mode 100644
index 0000000..bc27ae8
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ka/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"მიმდინარე WLAN ზარი"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"მიმდინარე WLAN სამსახურებრივი ზარი"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"შემომავალი WLAN ზარი"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"შემომავალი WLAN სამსახურებრივი ზარი"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-kk/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-kk/strings.xml
new file mode 100644
index 0000000..1f5ff1e
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-kk/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Қоңырау WLAN арқылы шалынуда"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Жұмыс қоңырау WLAN арқылы шалынуда"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Кіріс қоңырау WLAN арқылы шалынуда"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Кіріс жұмыс қоңырауы WLAN арқылы шалынуда"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-km/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-km/strings.xml
new file mode 100644
index 0000000..66c2787
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-km/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"ការហៅតាម WLAN ដែល​កំពុង​ដំណើរការ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"ការហៅ​ការងារ​តាម WLAN ដែល​កំពុង​ដំណើរការ"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"ការហៅ​ចូល​តាម WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"ការហៅ​ចូលការងារ​តាម WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-kn/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-kn/strings.xml
new file mode 100644
index 0000000..1bb450b
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-kn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ WLAN ಕರೆ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ WLAN ಕೆಲಸದ ಕರೆ"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"ಒಳಬರುವ WLAN ಕರೆ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"ಒಳಬರುವ WLAN ಕೆಲಸದ ಕರೆ"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ko/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ko/strings.xml
new file mode 100644
index 0000000..6a28ea3
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ko/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"발신 WLAN 전화"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"발신 WLAN 업무 전화"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"수신 WLAN 전화"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"수신 WLAN 업무 전화"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ky/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ky/strings.xml
new file mode 100644
index 0000000..1e09148
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ky/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Учурдагы WLAN чалуу"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Учурдагы WLAN чалуу (жумуш боюнча)"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Кирүүчү WLAN чалуу"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Учурдагы кирүүчү WLAN чалуу (жумуш боюнча)"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-lo/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-lo/strings.xml
new file mode 100644
index 0000000..951d68d
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-lo/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"ການໂທ WLAN ທີ່ກຳລັງດຳເນີນຢູ່"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"ການໂທ WLAN ວຽກທີ່ກຳລັງດຳເນີນຢູ່"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"ສາຍ WLAN ໂທເຂົ້າ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"ສາຍ WLAN ວຽກໂທເຂົ້າ"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-lt/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-lt/strings.xml
new file mode 100644
index 0000000..5da6763
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-lt/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Vykstantis WLAN skambutis"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Vykstantis WLAN darbo skambutis"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Gaunamasis WLAN skambutis"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Gaunamasis WLAN darbo skambutis"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-lv/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-lv/strings.xml
new file mode 100644
index 0000000..0b844f9
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-lv/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Notiekošs WLAN zvans"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Notiekošs WLAN darba zvans"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Ienākošs WLAN zvans"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Ienākošs WLAN darba zvans"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-mk/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-mk/strings.xml
new file mode 100644
index 0000000..b6b01f7
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-mk/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Тековен повик преку WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Тековен работен повик преку WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Дојдовен повик преку WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Дојдовен работен повик преку WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ml/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ml/strings.xml
new file mode 100644
index 0000000..365491d
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ml/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"നിലവിലുള്ള WLAN കോൾ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"നിലവിലുള്ള WLAN ഔദ്യോഗിക കോൾ"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"ഇൻകമിംഗ് WLAN കോൾ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"ഇൻകമിംഗ് WLAN ഔദ്യോഗിക കോൾ"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-mn/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-mn/strings.xml
new file mode 100644
index 0000000..70dbc68
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-mn/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Үргэлжилж буй WLAN дуудлага"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Үргэлжилж буй албаны WLAN дуудлага"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Орж ирж буй WLAN дуудлага"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Орж ирж буй албаны WLAN дуудлага"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-mr/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-mr/strings.xml
new file mode 100644
index 0000000..90cff42
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-mr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"सुरु असलेला WLAN कॉल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"सुरु असलेला WLAN कार्य कॉल"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"येणारा WLAN कॉल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"येणारा WLAN कार्य कॉल"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ms/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ms/strings.xml
new file mode 100644
index 0000000..80e0c55
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ms/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Panggilan Melalui WLAN Sedang Berlangsung"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Panggilan dari tempat kerja melalui WLAN sedang berlangsung"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Panggilan Masuk Melalui WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Panggilan masuk dari tempat kerja melalui WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-my/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-my/strings.xml
new file mode 100644
index 0000000..270e51d
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-my/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"လက်ရှိ WLAN ဖုန်းခေါ်ဆိုမှု"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"လက်ရှိ WLAN အလုပ်ဖုန်းခေါ်ဆိုမှု"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"အဝင် WLAN ဖုန်းခေါ်ဆိုမှု"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"အဝင် WLAN အလုပ်ဖုန်းခေါ်ဆိုမှု"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-nb/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-nb/strings.xml
new file mode 100644
index 0000000..3f48277
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-nb/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Pågående WLAN-anrop"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Pågående WLAN-jobbanrop"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Innkommende WLAN-anrop"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Innkommende WLAN-jobbanrop"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ne/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ne/strings.xml
new file mode 100644
index 0000000..5f97857
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ne/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"जारी WLAN कल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"कार्यालयको जारी WLAN कल"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"WLAN आगमन कल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"कार्यालयको जारी WLAN आगमन कल"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-nl/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-nl/strings.xml
new file mode 100644
index 0000000..4ffa14f
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-nl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Actieve WLAN-oproep"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Actieve zakelijke WLAN-oproep"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Inkomende WLAN-oproep"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Inkomende zakelijke WLAN-oproep"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-no/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-no/strings.xml
new file mode 100644
index 0000000..3f48277
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-no/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Pågående WLAN-anrop"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Pågående WLAN-jobbanrop"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Innkommende WLAN-anrop"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Innkommende WLAN-jobbanrop"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-pa/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-pa/strings.xml
new file mode 100644
index 0000000..0fc74ab
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-pa/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"ਜਾਰੀ WLAN ਕਾਲ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"ਕੰਮ ਸਬੰਧੀ ਜਾਰੀ WLAN ਕਾਲ"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"ਆ ਰਹੀ WLAN ਕਾਲ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"ਕੰਮ ਸਬੰਧੀ ਆ ਰਹੀ WLAN ਕਾਲ"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-pl/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-pl/strings.xml
new file mode 100644
index 0000000..6db0b70
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-pl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Trwające połączenie przez WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Trwające połączenie służbowe przez WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Przychodzące połączenie przez WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Przychodzące połączenie służbowe przez WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-pt-rBR/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-pt-rBR/strings.xml
new file mode 100644
index 0000000..793a0fd
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-pt-rBR/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Chamada por WLAN em andamento"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Chamada de trabalho por WLAN em andamento"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Chamada recebida por WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Chamada de trabalho recebida por WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-pt-rPT/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-pt-rPT/strings.xml
new file mode 100644
index 0000000..754087f
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-pt-rPT/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Chamada WLAN em curso…"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Chamada WLAN profissional em curso…"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"A receber chamada WLAN…"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"A receber chamada WLAN profissional…"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-pt/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-pt/strings.xml
new file mode 100644
index 0000000..793a0fd
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-pt/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Chamada por WLAN em andamento"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Chamada de trabalho por WLAN em andamento"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Chamada recebida por WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Chamada de trabalho recebida por WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ro/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ro/strings.xml
new file mode 100644
index 0000000..89e903b
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ro/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Apel WLAN în desfășurare"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Apel WLAN de serviciu în desfășurare"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Apel WLAN primit"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Apel WLAN de serviciu primit"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ru/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ru/strings.xml
new file mode 100644
index 0000000..d0fa192
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ru/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Текущий вызов WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Текущий вызов WLAN (работа)"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Входящий вызов WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Входящий вызов WLAN (работа)"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-si/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-si/strings.xml
new file mode 100644
index 0000000..ade1b0e
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-si/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"කෙරෙමින් පවතින WLAN ඇමතුම"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"කෙරෙමින් පවතින WLAN කාර්යාල ඇමතුම"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"එන WLAN ඇමතුම"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"එන WLAN කාර්යාල ඇමතුම"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-sk/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-sk/strings.xml
new file mode 100644
index 0000000..e7dbe68
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-sk/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Prebiehajúci hovor cez WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Prebiehajúci pracovný hovor cez WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Prichádzajúci hovor cez WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Prichádzajúci pracovný hovor cez WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-sl/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-sl/strings.xml
new file mode 100644
index 0000000..081c7d4
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-sl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Aktivni klic prek omrežja WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Aktivni delovni klic prek omrežja WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Dohodni klic prek omrežja WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Dohodni delovni klic prek omrežja WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-sq/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-sq/strings.xml
new file mode 100644
index 0000000..12af2c3
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-sq/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Telefonatë në vazhdim nëpërmjet WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Telefonatë pune në vazhdim nëpërmjet WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Telefonatë hyrëse nëpërmjet WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Telefonatë pune hyrëse nëpërmjet WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-sr/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-sr/strings.xml
new file mode 100644
index 0000000..933d8f8
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-sr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"WLAN позив је у току"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"WLAN пословни позив је у току"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Долазни WLAN позив"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Долазни WLAN пословни позив"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-sv/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-sv/strings.xml
new file mode 100644
index 0000000..198183b
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-sv/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Pågående WLAN-samtal"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Pågående jobbsamtal på WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Inkommande WLAN-samtal"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Inkommande jobbsamtal på WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-sw/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-sw/strings.xml
new file mode 100644
index 0000000..78afc15
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-sw/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Simu ya WLAN Inaendelea"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Simu ya kazi ya WLAN inaendelea"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Unapigiwa simu ya WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Unapigiwa simu ya kazi ya WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ta/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ta/strings.xml
new file mode 100644
index 0000000..f2b3aa3
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ta/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"செயலில் இருக்கும் WLAN அழைப்பு"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"செயலில் இருக்கும் WLAN பணி அழைப்பு"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"உள்வரும் WLAN அழைப்பு"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"உள்வரும் WLAN பணி அழைப்பு"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-te/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-te/strings.xml
new file mode 100644
index 0000000..8fd6911
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-te/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"మాట్లాడుతున్న WLAN కాల్"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"మాట్లాడుతున్న WLAN కార్యాలయ కాల్"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"ఇన్‌కమింగ్ WLAN కాల్"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"ఇన్‌కమింగ్ WLAN కార్యాలయ కాల్"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-th/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-th/strings.xml
new file mode 100644
index 0000000..bbcf8df
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-th/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"กำลังอยู่ในสายผ่าน WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"กำลังอยู่ในสายจากที่ทำงานผ่าน WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"มีสายเรียกเข้าผ่าน WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"มีสายเรียกเข้าจากที่ทำงานผ่าน WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-tl/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-tl/strings.xml
new file mode 100644
index 0000000..c8b2a11
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-tl/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Kasalukuyang Tawag sa pamamagitan ng WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Kasalukuyang tawag sa trabaho sa pamamagitan ng WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Papasok na Tawag sa pamamagitan ng WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Papasok na tawag sa trabaho sa pamamagitan ng WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-tr/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-tr/strings.xml
new file mode 100644
index 0000000..b7e6c0b
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-tr/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"WLAN Üzerinden Devam Eden Çağrı"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"WLAN üzerinden devam eden, işle ilgili çağrı"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"WLAN Üzerinden Gelen Çağrı"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"WLAN üzerinden gelen, işle ilgili çağrı"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-uk/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-uk/strings.xml
new file mode 100644
index 0000000..b1cdffb
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-uk/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Триває виклик у мережі WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Триває робочий виклик у мережі WLAN"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Вхідний виклик у мережі WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Вхідний робочий виклик у мережі WLAN"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-ur/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-ur/strings.xml
new file mode 100644
index 0000000..51ab38d
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-ur/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"‏جاری WLAN کال"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"‏جاری WLAN دفتری کال"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"‏آنے والی WLAN کال"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"‏آنے والی WLAN دفتری کال"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-uz/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-uz/strings.xml
new file mode 100644
index 0000000..df06fdf
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-uz/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Suhbat WLAN orqali davom etmoqda"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Suhbat WLAN orqali davom etmoqda (ish)"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"WLAN orqali kiruvchi chaqiruv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"WLAN orqali kiruvchi chaqiruv (ish)"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-vi/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-vi/strings.xml
new file mode 100644
index 0000000..02c32c7
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-vi/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Cuộc gọi đang diễn ra qua WLAN"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Cuộc gọi đang diễn ra qua WLAN về công việc"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Cuộc gọi đến qua WLAN"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Cuộc gọi đến qua WLAN về công việc"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-zh-rCN/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-zh-rCN/strings.xml
new file mode 100644
index 0000000..db6d7a7
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-zh-rCN/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"正在进行 WLAN 通话"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"正在进行 WLAN 工作通话"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"WLAN 来电"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"WLAN 工作来电"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-zh-rHK/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-zh-rHK/strings.xml
new file mode 100644
index 0000000..af2d168
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-zh-rHK/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"正在進行無線區域網絡通話"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"正在進行無線區域網絡工作通話"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"無線區域網絡來電"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"無線區域網絡工作來電"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-zh-rTW/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-zh-rTW/strings.xml
new file mode 100644
index 0000000..d847eb5
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-zh-rTW/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"進行中的通話 (透過 WLAN)"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"進行中的公司通話 (透過 WLAN)"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"來電 (透過 WLAN)"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"公司來電 (透過 WLAN)"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01-zu/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01-zu/strings.xml
new file mode 100644
index 0000000..8b82abd
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01-zu/strings.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ 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
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="notification_ongoing_call_wifi" msgid="183835219440326838">"Ikholi ye-WLAN eqhubekayo"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="284798501051700462">"Ikholi yomsebenzi ye-WLAN eqhubekayo"</string>
+    <string name="notification_incoming_call_wifi" msgid="2948417037217188797">"Ikholi ye-WLAN engenayo"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3668962820536702015">"Ikholi yomsebenzi ye-WLAN engenayo"</string>
+</resources>
diff --git a/java/com/android/incallui/res/values-mcc262-mnc01/strings.xml b/java/com/android/incallui/res/values-mcc262-mnc01/strings.xml
new file mode 100644
index 0000000..2679653
--- /dev/null
+++ b/java/com/android/incallui/res/values-mcc262-mnc01/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ 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
+  -->
+
+<resources>
+  <!-- This is customization of wifi call notification only for DTAG of Germany. -->
+  <!-- The "label" of the in-call Notification for an ongoing call, which is being made over
+       Wi-Fi. [CHAR LIMIT=60] -->
+  <string name="notification_ongoing_call_wifi">Ongoing WLAN Call</string>
+  <!-- The "label" of the in-call Notification for an ongoing work call, which is being made
+       over Wi-Fi. [CHAR LIMIT=60] -->
+  <string name="notification_ongoing_work_call_wifi">Ongoing WLAN work call</string>
+  <!-- The "label" of the in-call Notification for an incoming ringing call,
+       which is being made over Wi-Fi. [CHAR LIMIT=60] -->
+  <string name="notification_incoming_call_wifi">Incoming WLAN Call</string>
+  <!-- The "label" of the in-call Notification for an incoming ringing work call,
+       which is being made over Wi-Fi. [CHAR LIMIT=60] -->
+  <string name="notification_incoming_work_call_wifi">Incoming WLAN work call</string>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/incallui/res/values-mk/strings.xml b/java/com/android/incallui/res/values-mk/strings.xml
index 03be1d9..b712fe0 100644
--- a/java/com/android/incallui/res/values-mk/strings.xml
+++ b/java/com/android/incallui/res/values-mk/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропуштен повик од <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Тековен повик"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Тековен работен повик"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Појдовен повик преку Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Тековен работен повик преку Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Тековен повик преку Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Тековен работен повик преку Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"На чекање"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Дојдовен повик"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Дојдовен повик со фотографија"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важен дојдовен повик со фото., порака и локација"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важен дојдовен повик со прилози"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Дојдовен работен повик"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Дојдовен повик преку Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Дојдовен работен повик преку Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Дојдовен повик преку Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Дојдовен работен повик преку Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Дојдовниот повик може да е спам"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Дојдовно побарување за видео"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Нема услуга"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Прифатете видеоповик"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"За да воспоставите повик, прво исклучете режим на работа во авион."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Не е регистриран на мрежа."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Не е достапна мобилна мрежа."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Нема достапна мобилна мрежа."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"За да повикате, внесете важечки број."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Не може да повика."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Започнува MMI низа..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завршете го повикот"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференциски повик"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Повик во тек"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Повикот ќе продолжи преку мобилен интернет…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Не можеше да се префрли на Wi-Fi-мрежа"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видеоповикот ќе остане на мобилната мрежа. Може да се наплати за интернет-сообраќај."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Повикот ќе продолжи преку мобилен интернет…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Не можеше да се префрли на Wi-Fi-мрежа"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видеоповикот ќе остане на мобилната мрежа. Може да се наплати за мобилен интернет."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Не го прикажувај ова повторно"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ml/strings.xml b/java/com/android/incallui/res/values-ml/strings.xml
index e207ccd..db9f560 100644
--- a/java/com/android/incallui/res/values-ml/strings.xml
+++ b/java/com/android/incallui/res/values-ml/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> എന്നതിൽ നിന്നുള്ള മിസ്‌ഡ് കോൾ"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"കോൾ സജീവമാണ്"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ഓൺഗോയിംഗ് ഔദ്യോഗിക കോൾ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ഓൺഗോയിംഗ് വൈഫൈ കോൾ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ഓൺഗോയിംഗ് വൈഫൈ ഔദ്യോഗിക കോൾ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"നിലവിലുള്ള വൈഫൈ കോൾ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"നിലവിലുള്ള വൈഫൈ ഔദ്യോഗിക കോൾ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ഹോള്‍ഡിലാണ്"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ഇന്‍കമിംഗ് കോള്‍"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ഫോട്ടോ ഉൾപ്പെട്ട ഇൻകമിംഗ് കോൾ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ഫോട്ടോയും സന്ദേശവും ലൊക്കേഷനും ഉൾപ്പെട്ട പ്രധാനപ്പെട്ട ഇൻകമിംഗ് കോൾ"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"അറ്റാച്ച്‌മെന്റുകൾ ഉൾപ്പെട്ട പ്രധാനപ്പെട്ട ഇൻകമിംഗ് കോൾ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ഇൻകമിംഗ് ഔദ്യോഗിക കോൾ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ഇൻകമിംഗ് വൈഫൈ കോൾ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ഇൻകമിംഗ് വൈഫൈ ഔദ്യോഗിക കോൾ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ഇൻകമിംഗ് വൈഫൈ കോൾ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ഇൻകമിംഗ് വൈഫൈ ഔദ്യോഗിക കോൾ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"സംശയാസ്‌പദമായ ഇൻകമിംഗ് സ്‌പാം കോൾ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ഇൻകമിംഗ് വീഡിയോ അഭ്യർത്ഥന"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"സേവനമില്ല"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"വീഡിയോ കോൾ അറ്റൻഡ് ചെയ്യുക"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ഒരു കോൾ വിളിക്കാൻ, ആദ്യം ഫ്ലൈറ്റ് മോഡ് ഓഫുചെയ്യുക."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"നെറ്റ്‌വർക്കിൽ രജിസ്റ്റർ ചെയ്‌തിട്ടില്ല."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"സെല്ലുലാർ നെറ്റ്‌വർക്ക് ലഭ്യമല്ല."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"മൊബൈൽ നെറ്റ്‌വർക്ക് ലഭ്യമല്ല."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ഒരു കോൾ ചെയ്യുന്നതിന്, സാധുതയുള്ള നമ്പർ നൽകുക."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"കോൾ ചെയ്യാനായില്ല."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI സീക്വൻസ് ആരംഭിക്കുന്നു…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"കോള്‍ അവസാനിപ്പിക്കൂ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"കോൺഫറൻസ് കോൾ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"കോളിലാണ്"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"സെല്ലുലാർ ഡാറ്റ ഉപയോഗിച്ച് കോൾ തുടരുന്നു…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi നെറ്റ്‌വർക്കിലേക്ക് മാറാനായില്ല"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"സെല്ലുലാർ നെറ്റ്‌വർക്കിൽത്തന്നെ വീഡിയോ കോൾ തുടരും. സാധാരണ ഡാറ്റ നിരക്കുകൾ ബാധകമാകാം."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"മൊബൈൽ ഡാറ്റ ഉപയോഗിച്ച് കോൾ തുടരുന്നു…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"വൈഫൈ നെറ്റ്‌വർക്കിലേക്ക് മാറാനായില്ല"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"മൊബൈൽ നെറ്റ്‌വർക്കിൽത്തന്നെ വീഡിയോ കോൾ തുടരും. സാധാരണ ഡാറ്റ നിരക്കുകൾ ബാധകമാകാം."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ഇത് വീണ്ടും കാണിക്കരുത്"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-mn/strings.xml b/java/com/android/incallui/res/values-mn/strings.xml
index 0e26917..7757af9 100644
--- a/java/com/android/incallui/res/values-mn/strings.xml
+++ b/java/com/android/incallui/res/values-mn/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>-н аваагүй дуудлага"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Хийгдэж буй дуудлага"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Залгаж буй албаны дуудлага"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ярьж буй Wi-Fi дуудлага"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Залгаж буй Wi-Fi албаны дуудлага"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Холбогдсон Wi-Fi дуудлага"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Холбогдсон Wi-Fi албаны дуудлага"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Хүлээлгэнд"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Ирж буй дуудлага"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Зураг бүхий орж ирсэн дуудлага"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Зураг, зурвас, байршилтай орж ирсэн чухал дуудлага"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Хавсралт бүхий орж ирсэн чухал дуудлага"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Ирж буй албаны дуудлага"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Орж ирсэн Wi-Fi дуудлага"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Ирж буй Wi-Fi албаны дуудлага"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Ирж буй Wi-Fi дуудлага"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Ирж буй Wi-Fi албаны дуудлага"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Орж ирсэн сэжигтэй спам дуудлага"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Ирж буй видео хүсэлт"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Үйлчилгээ байхгүй"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Видео дуудлага авах"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Дуудлага хийхийн тулд юуны өмнө Нислэгийн төлвийг идэвхгүйжүүлнэ үү."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Сүлжээнд бүртгэгдээгүй."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Үүрэн сүлжээ байхгүй."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобайл сүлжээ байхгүй."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Дуудлага хийхийн тулд хүчин төгөлдөр дугаар оруулна уу."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Дуудлага хийх боломжгүй байна."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI дарааллыг эхлүүлж байна…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Дуудлагыг таслах"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Хурлын дуудлага"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Ярьж байна"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Үүрэн дата ашиглан дуудлагыг үргэлжлүүлж байна..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi сүлжээ рүү сэлгэж чадсангүй"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видео дуудлага үүрэн сүлжээнд үлдэнэ. Стандарт датаны төлбөр тооцогдож магадгүй."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Мобайл дата ашиглан дуудлагыг үргэлжлүүлж байна…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi сүлжээ рүү сэлгэж чадсангүй"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видео дуудлага мобайл сүлжээнд үлдэнэ. Стандарт датаны төлбөр тооцогдож магадгүй."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Үүнийг дахин бүү үзүүл"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-mr/strings.xml b/java/com/android/incallui/res/values-mr/strings.xml
index c56c610..e422897 100644
--- a/java/com/android/incallui/res/values-mr/strings.xml
+++ b/java/com/android/incallui/res/values-mr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> कडील सुटलेला कॉल"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"सुरू असलेला कॉल"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"सुरु असलेला कार्य कॉल"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"सुरु असलेला वाय-फाय कॉल"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"सुरु असलेला वाय-फाय कार्य कॉल"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"सुरु असलेला वाय-फाय कॉल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"सुरु असलेला वाय-फाय कार्य कॉल"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"होल्ड वर"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"येणारा कॉल"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"फोटोसह येणारा कॉल"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"फोटो, संदेश आणि स्थानासह महत्त्वाचा येणारा कॉल"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"संलग्नकांसह महत्त्वाचा येणारा कॉल"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"येणारा कार्य कॉल"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"येणारा वाय-फाय कॉल"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"येणारा वाय-फाय कार्य कॉल"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"येणारा वाय-फाय कॉल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"येणारा वाय-फाय कार्य कॉल"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"येणारा संशयित स्पॅम कॉल"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"येणारी व्हिडिओ विनंती"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"सेवा नाही"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"व्हिडिओ कॉल घ्या"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"कॉल करण्यासाठी, प्रथम विमान मोड बंद करा."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"नेटवर्कवर नोंदणीकृत नाही."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"सेल्युलर नेटवर्क उपलब्ध नाही."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"मोबाइल नेटवर्क उपलब्ध नाही."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"कॉल करण्यासाठी, एक वैध नंबर प्रविष्ट करा."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"कॉल करू शकत नाही."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI क्रम प्रारंभ करीत आहे..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"कॉल समाप्त करा"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"परिषद कॉल"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"कॉल मध्ये"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"मोबाइल डेटा वापरून कॉल सुरू ठेवत आहेत…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"वाय-फाय नेटवर्कवर स्विच करणे शक्य झाले नाही"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"व्हिडिओ कॉल मोबाईल नेटवर्कवर असेल. मानक डेटा शुल्क लागू होऊ शकतात."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"मोबाइल डेटा वापरून कॉल करणे सुरु ठेवत आहे..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"वाय-फाय नेटवर्कवर स्विच करणे शक्य झाले नाही"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"व्हिडिओ कॉल मोबाइल नेटवर्कवर असेल. मानक डेटा शुल्क लागू शकतात."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"हे पुन्हा दर्शवू नका"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ms/strings.xml b/java/com/android/incallui/res/values-ms/strings.xml
index a5be593..7a5900a 100644
--- a/java/com/android/incallui/res/values-ms/strings.xml
+++ b/java/com/android/incallui/res/values-ms/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Panggilan tidak dijawab daripada <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Panggilan sedang berjalan"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Panggilan sedang berlangsung daripada tempat kerja"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Panggilan Wi-Fi sedang berlangsung"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Panggian Wi-Fi sedang berlangsung daripada tempat kerja"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Panggilan Wi-Fi sedang berlangsung"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Panggilan Wi-Fi daripada tempat kerja sedang berlangsung"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ditunda"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Panggilan masuk"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Panggilan masuk dengan foto"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Panggilan masuk penting dengan foto, mesej dan lokasi"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Panggilan masuk penting dengan lampiran"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Panggilan masuk daripada tempat kerja"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Panggilan Wi-Fi masuk"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Panggilan masuk melalui Wi-Fi daripada tempat kerja"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Panggilan masuk Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Panggilan masuk Wi-Fi daripada tempat kerja"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Disyaki panggilan spam masuk"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Permintaan video masuk"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Tiada perkhidmatan"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Rangkaian pilihan (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) tidak tersedia"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Jawapan"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Letakkan gagang"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video dalam strim"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Suara"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Terima"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Tolak"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Jawab Panggilan Video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Untuk membuat panggilan, matikan mod Pesawat terlebih dahulu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Tidak didaftarkan pada rangkaian."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rangkaian selular tidak tersedia."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rangkaian mudah alih tidak tersedia."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Untuk membuat panggilan, masukkan nombor yang sah."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Tidak dapat memanggil."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Memulakan jujukan MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Tamatkan panggilan"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Panggilan sidang"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Dalam panggilan"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Meneruskan panggilan menggunakan data selular…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Tidak dapat beralih ke rangkaian Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Panggilan video akan menggunakan rangkaian selular. Caj data standard boleh dikenakan."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Meneruskan panggilan menggunakan data mudah alih…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Tidak dapat beralih ke rangkaian Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Panggilan video akan menggunakan rangkaian mudah alih. Caj data standard boleh dikenakan."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Jangan tunjukkan ini lagi"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-my/strings.xml b/java/com/android/incallui/res/values-my/strings.xml
index 5cca498..5513b79 100644
--- a/java/com/android/incallui/res/values-my/strings.xml
+++ b/java/com/android/incallui/res/values-my/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> မှလွတ်သွားသော ခေါ်ဆိုမှု"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ဆက်သွားနေသော ဖုန်းခေါ်မှု"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ခေါ်နေဆဲ အလုပ်မှ ခေါ်ဆိုမှု"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ခေါ်နေဆဲ ဝိုင်ဖိုင်ခေါ်ဆိုမှု"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ခေါ်နေဆဲ Wi-Fi အလုပ်မှ ခေါ်ဆိုမှု"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"လက်ရှိ Wi-Fi ဖုန်းခေါ်ဆိုမှု"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"လက်ရှိ Wi-Fi အလုပ်ဖုန်းခေါ်ဆိုမှု"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ခဏ ကိုင်ထားစဉ်"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"အဝင်ခေါ်ဆိုမှု"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ဓာတ်ပုံဖြင့် အဝင်ခေါ်ဆိုမှု"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ဓာတ်ပုံ၊မက်ဆေ့ဂျ်၊တည်နေရာဖြင့် အရေးကြီးခေါ်ဆိုမှု"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ပူးတွဲပါဖိုင်များဖြင့် အရေးကြီးသော အဝင်ခေါ်ဆိုမှု"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"အဝင် ခေါ်ဆိုမှု"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ဝင်လာသော ဝိုင်ဖိုင်ခေါ်ဆိုမှု"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Wi-Fi အလုပ်မှ အဝင် ခေါ်ဆိုမှု"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"အဝင် Wi‑Fi ဖုန်းခေါ်ဆိုမှု"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"အဝင် Wi‑Fi အလုပ်ဖုန်းခေါ်ဆိုမှု"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ခေါ်နေသော မသင်္ကာဖွယ်ရာ စပမ်းခေါ်ဆိုမှု"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"အသံ ခေါ်ဆိုမှုအဖြစ် တောင်းဆိုမှု"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ဝန်ဆောင်မှု မရှိပါ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ဗီဒီယိုခေါ်ဆိုမှုလွှဲယူပါ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ဖုန်းခေါ်ဆိုမှုပြုရန်, လေယာဥ်ပျံပေါ်အသုံးပြုသောစနစ်ကို ပိတ်ပါ"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ကွန်ယက်ပေါ်မှာ မှတ်ပုံတင်မှု မပြုလုပ်ထားပါ"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ဆဲလ်လူလာ ကွန်ရက် မရှိပါ။"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"မိုဘိုင်းကွန်ရက် မရနိုင်ပါ"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ဖုန်းခေါ်ရန်အတွက်၊ သင့်လျော်သည့်နံပါတ် ရိုက်ထည့်ပါ။"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"မခေါ်ဆိုနိုင်ပါ။"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI အမှတ်စဉ်ကို စတင်နေပါသည်…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ခေါ်ဆိုမှုအပြီးသတ်ရန်"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"အစည်းအဝေးခေါ်ဆိုမှု"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ဖုန်းပြောနေသည်"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ဆယ်လူလာဒေတာသုံးပြီး ဆက်လက်ခေါ်ဆိုနေသည်…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ကွန်ရက်သို့ မပြောင်းနိုင်ပါ"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ဗီဒီယိုခေါ်ဆိုမှုသည် ဆယ်လူလာကွန်ရက်တွင် ဆက်ရှိနေပါမည်။ ပုံမှန်ဒေတာသုံးစွဲခများ ကျသင့်နိုင်ပါသည်။"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"မိုဘိုင်းဒေတာသုံးပြီး ဆက်လက်ခေါ်ဆိုနေသည်…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi‑Fi ကွန်ရက်သို့ မပြောင်းနိုင်ပါ"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ဗီဒီယိုခေါ်ဆိုမှုသည် မိုဘိုင်းကွန်ရက်တွင် ဆက်ရှိနေပါမည်။ ပုံမှန်ဒေတာသုံးစွဲခများ ကျသင့်နိုင်ပါသည်။"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ဤသည်ကို ထပ်မပြပါနှင့်"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-nb/strings.xml b/java/com/android/incallui/res/values-nb/strings.xml
index d0883a2..4e8d796 100644
--- a/java/com/android/incallui/res/values-nb/strings.xml
+++ b/java/com/android/incallui/res/values-nb/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Tapt anrop fra <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Pågående samtale"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Pågående jobbanrop"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Pågående Wi-Fi-anrop"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Pågående jobbanrop via Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Pågående Wi-Fi-samtale"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Pågående jobbsamtale via Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Parkert"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Innkommende samtale"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Innkommende anrop med bilde"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Viktig anrop med bilde, melding og posisjon"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Viktig innkommende anrop med vedlegg"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Innkommende jobbanrop"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Innkommende anrop via Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Innkommende jobbanrop via Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Innkommende anrop via Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Innkommende jobbanrop via Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Innkommende anrop fra en mulig useriøs oppringer"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Innkommende videoforespørsel"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ingen tjeneste"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Svar på videoanropet"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"For å ringe, slå av flymodus først."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ikke registrert på nettverket."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilnettverket er ikke tilgjengelig."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilnettverket er ikke tilgjengelig."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Skriv inn et gyldig nummer for å plassere en samtale."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan ikke ringe."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Begynner MMI-sekvens…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Avslutt samtalen"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonmøte"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Samtale pågår"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Fortsetter samtalen via mobildata …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Kan ikke bytte til Wi-Fi-nettverk"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videosamtalen blir værende på mobilnettet. Standard datakostnader kan påløpe."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Fortsetter samtalen via mobildata …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Kunne ikke bytte til Wi-Fi-nettverk"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videosamtalen blir værende på mobilnettverket. Standard datakostnader kan påløpe."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ikke vis dette igjen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ne/strings.xml b/java/com/android/incallui/res/values-ne/strings.xml
index b589479..b19c2ae 100644
--- a/java/com/android/incallui/res/values-ne/strings.xml
+++ b/java/com/android/incallui/res/values-ne/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> बाट आएको छुटेको कल"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"चलिरहेको कल"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"चालू रहेको कार्यको कल"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"चालु रहेको WI-Fi कल"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"चालू रहेको Wi-Fi कार्यको कल"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"जारी रहेको WI-Fi कल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi-Fi मार्फत जारी रहेको कार्यालयको कल"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"होल्डमा"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"आगमन कल"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"तस्बिरसहितको आगमन कल"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"तस्बिर, सन्देश र स्थानसहितको महत्त्वपूर्ण आगमन कल"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"समावेश गरिएको वस्तुसहितको महत्त्वपूर्ण आगमन कल"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"आगमन कार्यको कल"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"आगमन Wi-Fi कल"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"आगमन Wi-Fi कार्यको कल"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Wi-Fi मार्फत आगमन कल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Wi-Fi मार्फत कार्यालयबाट आएको कल"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"शंकास्पद आगमन स्प्याम कल"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"आगमन भिडियो अनुरोध"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"सेवा छैन"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"भिडियो कल लिनुहोस्"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"कल राख्नका लागि, पहिले हवाइजहाज मोड बन्द गर्नुहोस्।"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"नेटवर्कमा दर्ता भएको छैन।"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"सेलुलर सञ्जाल उपलब्ध छैन।"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"मोबाइल नेटवर्क उपलब्ध छैन।"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"एक कल गर्नको लागि, एक वैध नम्बर प्रविष्ट गर्नुहोस्।"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"कल गर्न सक्दैन।"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI अनुक्रम सुरु गर्दै..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"कल अन्त्य गर्नुहोस्"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"सम्मेलन कल"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"कलमा"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"सेलुलर डेटा प्रयोग गरी कललाई निरन्तरता दिइँदै…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi नेटवर्कमा स्विच गर्न सकिएन"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"भिडियो कल सेलुलर नेटवर्कमा रहने छ। मानक डेटा शुल्क लाग्न सक्छ।"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"मोबाइल डेटा प्रयोग गरी कललाई निरन्तरता दिइँदै…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi नेटवर्कमा स्विच गर्न सकिएन"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"भिडियो कल मोबाइल नेटवर्कमा रहने छ। मानक डेटा शुल्क लाग्न सक्छ।"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"यसलाई फेरि नदेखाउनुहोस्"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-nl/strings.xml b/java/com/android/incallui/res/values-nl/strings.xml
index 930acdc..7350881 100644
--- a/java/com/android/incallui/res/values-nl/strings.xml
+++ b/java/com/android/incallui/res/values-nl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Gemiste oproep van <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Actieve oproep"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Actieve zakelijke oproep"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Actieve wifi-oproep"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Actieve zakelijke oproep via wifi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Actieve wifi-oproep"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Actieve zakelijke oproep via wifi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"In de wacht"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Inkomende oproep"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Inkomende oproep met foto"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Belangrijke oproep met foto, bericht en locatie"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Belangrijke inkomende oproep met bijlagen"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Inkomende zakelijke oproep"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Inkomende wifi-oproep"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Inkomende zakelijke oproep via wifi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Inkomende wifi-oproep"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Inkomende zakelijke oproep via wifi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Inkomende vermoedelijke spamoproep"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Binnenkomend videoverzoek"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Geen service"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Geselecteerd netwerk (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) niet beschikbaar"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Antwoord"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Ophangen"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"InStream-video"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Spraak"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Accepteren"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Weigeren"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Videogesprek beantwoorden"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Als je wilt bellen, moet je eerst de Vliegtuigmodus uitschakelen."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Niet geregistreerd op netwerk."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobiel netwerk niet beschikbaar."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiel netwerk niet beschikbaar."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Als je wilt bellen, moet je een geldig nummer invoeren."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan niet bellen."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI-reeks starten..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Oproep beëindigen"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonische vergadering"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"In gesprek"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Gesprek voortzetten via mobiele data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Overschakelen naar wifi-netwerk mislukt"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videogesprek loopt via mobiel netwerk. Er kunnen standaard datakosten in rekening worden gebracht."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Gesprek voortzetten via mobiele data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Overschakelen naar wifi-netwerk mislukt"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videogesprek loopt via mobiel netwerk. Er kunnen standaard datakosten in rekening worden gebracht."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Dit niet meer weergeven"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-no/strings.xml b/java/com/android/incallui/res/values-no/strings.xml
index d0883a2..4e8d796 100644
--- a/java/com/android/incallui/res/values-no/strings.xml
+++ b/java/com/android/incallui/res/values-no/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Tapt anrop fra <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Pågående samtale"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Pågående jobbanrop"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Pågående Wi-Fi-anrop"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Pågående jobbanrop via Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Pågående Wi-Fi-samtale"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Pågående jobbsamtale via Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Parkert"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Innkommende samtale"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Innkommende anrop med bilde"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Viktig anrop med bilde, melding og posisjon"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Viktig innkommende anrop med vedlegg"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Innkommende jobbanrop"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Innkommende anrop via Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Innkommende jobbanrop via Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Innkommende anrop via Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Innkommende jobbanrop via Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Innkommende anrop fra en mulig useriøs oppringer"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Innkommende videoforespørsel"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ingen tjeneste"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Svar på videoanropet"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"For å ringe, slå av flymodus først."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ikke registrert på nettverket."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilnettverket er ikke tilgjengelig."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilnettverket er ikke tilgjengelig."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Skriv inn et gyldig nummer for å plassere en samtale."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan ikke ringe."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Begynner MMI-sekvens…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Avslutt samtalen"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonmøte"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Samtale pågår"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Fortsetter samtalen via mobildata …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Kan ikke bytte til Wi-Fi-nettverk"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videosamtalen blir værende på mobilnettet. Standard datakostnader kan påløpe."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Fortsetter samtalen via mobildata …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Kunne ikke bytte til Wi-Fi-nettverk"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videosamtalen blir værende på mobilnettverket. Standard datakostnader kan påløpe."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ikke vis dette igjen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pa/strings.xml b/java/com/android/incallui/res/values-pa/strings.xml
index 22cd7da..b21cbd3 100644
--- a/java/com/android/incallui/res/values-pa/strings.xml
+++ b/java/com/android/incallui/res/values-pa/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> ਤੋਂ ਖੁੰਝੀ ਹੋਈ ਕਾਲ"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ਜਾਰੀ ਕਾਲ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ਕੰਮ ਸਬੰਧਿਤ ਜਾਰੀ ਕਾਲ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ਜਾਰੀ Wi-Fi ਕਾਲ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ਕੰਮ ਸਬੰਧਿਤ ਜਾਰੀ Wi-Fi ਕਾਲ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ਜਾਰੀ Wi‑Fi ਕਾਲ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ਕੰਮ ਸਬੰਧੀ ਜਾਰੀ Wi‑Fi ਕਾਲ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ਹੋਲਡ ਤੇ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ਇਨਕਮਿੰਗ ਕਾਲ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ਫ਼ੋਟੋ ਨਾਲ ਇਨਕਮਿੰਗ ਕਾਲ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ਫ਼ੋਟੋ, ਸੁਨੇਹੇ ਅਤੇ ਟਿਕਾਣੇ ਨਾਲ ਮਹੱਤਵਪੂਰਨ ਇਨਕਮਿੰਗ ਕਾਲ"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ਅਟੈਚਮੈਂਟਾਂ ਨਾਲ ਮਹੱਤਵਪੂਰਨ ਇਨਕਮਿੰਗ ਕਾਲ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ਕੰਮ ਸਬੰਧਿਤ ਆ ਰਹੀ ਕਾਲ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ਇਨਕਮਿੰਗ Wi-Fi ਕਾਲ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ਕੰਮ ਸਬੰਧਿਤ ਆ ਰਹੀ Wi-Fi ਕਾਲ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ਆ ਰਹੀ Wi‑Fi ਕਾਲ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ਕੰਮ ਸਬੰਧੀ ਆ ਰਹੀ Wi‑Fi ਕਾਲ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ਸ਼ੱਕੀ ਸਪੈਮ ਕਾਲ ਆ ਰਹੀ ਹੈ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ਇਨਕਮਿੰਗ ਵੀਡੀਓ ਬੇਨਤੀ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ਕੋਈ ਸੇਵਾ ਨਹੀਂ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ਵੀਡੀਓ ਕਾਲ ਲਓ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ਇੱਕ ਕਾਲ ਕਰਨ ਲਈ, ਪਹਿਲਾਂ ਏਅਰਪਲੇਨ ਮੋਡ ਬੰਦ ਕਰੋ।"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ਨੈਟਵਰਕ ਤੇ ਰਜਿਸਟਰ ਨਹੀਂ ਕੀਤਾ।"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ਸੈਲਿਊਲਰ ਨੈਟਵਰਕ ਉਪਲਬਧ ਨਹੀਂ"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਉਪਲਬਧ ਨਹੀਂ ਹੈ।"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ਇੱਕ ਕਾਲ ਕਰਨ ਲਈ, ਇੱਕ ਪ੍ਰਮਾਣਿਕ ਨੰਬਰ ਦਰਜ ਕਰੋ।"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ਕਾਲ ਨਹੀਂ ਕਰ ਸਕਦਾ।"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI ਕੜੀ ਚਾਲੂ ਕਰ ਰਿਹਾ ਹੈ…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ਕਾਲ ਸਮਾਪਤ ਕਰੋ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"ਕਾਨਫਰੰਸ ਕਾਲ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ਕਾਲ ਵਿੱਚ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ਸੈਲਿਊਲਰ ਡੈਟੇ ਦੀ ਵਰਤੋਂ ਨਾਲ ਕਾਲ ਜਾਰੀ ਰੱਖੀ ਜਾ ਰਹੀ ਹੈ…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ਨੈੱਟਵਰਕ \'ਤੇ ਬਦਲੀ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ਵੀਡੀਓ ਕਾਲ ਸੈਲਿਊਲਰ ਨੈੱਟਵਰਕ \'ਤੇ ਰਹੇਗੀ। ਸਧਾਰਨ ਡੈਟਾ ਖਰਚੇ ਲਾਗੂ ਹੋ ਸਕਦੇ ਹਨ।"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ਮੋਬਾਈਲ ਡੈਟੇ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕਾਲ ਜਾਰੀ ਰੱਖੀ ਜਾ ਰਹੀ ਹੈ…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi‑Fi ਨੈੱਟਵਰਕ \'ਤੇ ਬਦਲੀ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ਵੀਡੀਓ ਕਾਲ ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ \'ਤੇ ਜਾਰੀ ਰਹੇਗੀ। ਮਿਆਰੀ ਡੈਟਾ ਖਰਚੇ ਲਾਗੂ ਹੋ ਸਕਦੇ ਹਨ।"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ਇਸ ਨੂੰ ਦੁਬਾਰਾ ਨਾ ਵਿਖਾਓ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pl/strings.xml b/java/com/android/incallui/res/values-pl/strings.xml
index 77c8339..cb27c73 100644
--- a/java/com/android/incallui/res/values-pl/strings.xml
+++ b/java/com/android/incallui/res/values-pl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Nieodebrane połączenie od: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Trwa połączenie"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Trwa połączenie służbowe"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Trwające połączenie przez Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Trwa połączenie służbowe przez Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Trwające połączenie przez Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Trwa połączenie służbowe przez Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Oczekujące"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Połączenie"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Połączenie przychodzące ze zdjęciem"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Ważne połączenie przychodzące z załącznikami"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Ważne połączenie przychodzące z załącznikami"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Przychodzące połączenie służbowe"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Przychodzące połączenie przez Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Przychodzące połączenie służbowe przez Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Przychodzące połączenie przez Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Przychodzące połączenie służbowe przez Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Przychodzące połączenie podejrzanie o spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Przychodzące żądanie wideo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Brak usługi"</string>
@@ -73,10 +73,10 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Odbierz rozmowę wideo"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Aby rozpocząć połączenie, wyłącz najpierw tryb samolotowy"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nie zarejestrowano w sieci"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Sieć komórkowa jest niedostępna."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Sieć komórkowa jest niedostępna."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Aby zadzwonić, wybierz prawidłowy numer."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nie można dzwonić."</string>
-    <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Rozpoczynanie sekwencji MMI..."</string>
+    <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Uruchamiam sekwencję MMI..."</string>
     <string name="incall_error_supp_service_unknown" msgid="3062751096566282959">"Usługa nie jest obsługiwana."</string>
     <string name="incall_error_supp_service_switch" msgid="759346040980722884">"Nie można przełączyć połączeń."</string>
     <string name="incall_error_supp_service_separate" msgid="5250304200901095519">"Nie można rozdzielić połączenia."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Zakończ połączenie"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Połączenie konferencyjne"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"W trakcie rozmowy"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Kontynuuję rozmowę przy użyciu transmisji danych komórkowych…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nie udało się przełączyć na sieć Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Rozmowa wideo pozostanie w sieci komórkowej. Za transfer danych może zostać pobrana opłata."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Kontynuuję rozmowę przy użyciu mobilnej transmisji danych…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nie udało się przełączyć na sieć Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Rozmowa wideo będzie nadal prowadzona przez sieć komórkową. Za transfer danych może zostać pobrana opłata."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Nie pokazuj ponownie tego komunikatu"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pt-rBR/strings.xml b/java/com/android/incallui/res/values-pt-rBR/strings.xml
index b0e46df..f3c1b23 100644
--- a/java/com/android/incallui/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/res/values-pt-rBR/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chamada em andamento"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chamada de trabalho em andamento"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chamada Wi-Fi em andamento"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chamada trabalho por Wi-Fi em andamento"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chamada por Wi-Fi em andamento"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chamada de trabalho por Wi-Fi em andamento"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Em espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chamada recebida"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chamada recebida com foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Chamada recebida importante com foto, mensagem e local"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chamada recebida importante com anexos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chamada de trabalho recebida"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chamada Wi-Fi recebida"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chamada de trabalho recebida por Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chamada recebida por Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chamada de trabalho recebida por Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Chamada recebida suspeita (spam)"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Recebendo solicitação de vídeo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sem serviço"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atender à videochamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para fazer uma chamada, primeiro desative o modo avião."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Não registrado na rede."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rede celular não disponível."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rede móvel indisponível."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar uma chamada, digite um número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Não é possível realizar chamadas."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciando sequência MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Encerrar chamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Teleconferência"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Em chamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando a chamada com dados da rede celular…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Não foi possível alternar para a rede Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"A videochamada continuará via rede celular. Sujeito a cobranças por uso de dados."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando chamada por dados móveis…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Não foi possível alternar para a rede Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"A videochamada continuará via rede móvel. O uso de dados está sujeito a cobranças padrão."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Não exibir novamente"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pt-rPT/strings.xml b/java/com/android/incallui/res/values-pt-rPT/strings.xml
index b42b0e5..1040432 100644
--- a/java/com/android/incallui/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/res/values-pt-rPT/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chamada não atendida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chamada em curso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chamada de trabalho em curso"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chamada Wi-Fi em curso"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chamada de trabalho por Wi-Fi em curso"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chamada por Wi-Fi em curso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chamada de trabalho por Wi-Fi em curso"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Em espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chamada recebida"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chamada recebida com foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"."</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chamada recebida importante com anexos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chamada de trabalho recebida"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chamada Wi-Fi recebida"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chamada de trabalho recebida por Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chamada por Wi-Fi recebida"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chamada de trabalho por Wi-Fi recebida"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"A receber chamada spam suspeita"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Pedido de vídeo recebido"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nenhum serviço"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Aceitar videochamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para efectuar uma chamada, desactive primeiro o modo para Avião."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Sem registo na rede."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rede móvel não disponível."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rede móvel não disponível."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para telefonar, introduza um número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Não é possível telefonar."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"A iniciar sequência de MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Terminar chamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Chamada de conferência"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Numa chamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"A continuar a chamada com dados móveis…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Não foi possível mudar para a rede Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"As videochamadas continuarão a ser efetuadas através de rede móvel. Poderão ser aplicados custos de dados."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"A continuar a chamada com dados móveis…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Não foi possível mudar para a rede Wi-Fi."</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"As videochamadas irão continuar a ser efetuadas através da rede móvel. Poderão ser aplicados custos de dados padrão."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Não voltar a mostrar este aviso"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pt/strings.xml b/java/com/android/incallui/res/values-pt/strings.xml
index b0e46df..f3c1b23 100644
--- a/java/com/android/incallui/res/values-pt/strings.xml
+++ b/java/com/android/incallui/res/values-pt/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chamada em andamento"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chamada de trabalho em andamento"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chamada Wi-Fi em andamento"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chamada trabalho por Wi-Fi em andamento"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chamada por Wi-Fi em andamento"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chamada de trabalho por Wi-Fi em andamento"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Em espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chamada recebida"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chamada recebida com foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Chamada recebida importante com foto, mensagem e local"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chamada recebida importante com anexos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chamada de trabalho recebida"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chamada Wi-Fi recebida"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chamada de trabalho recebida por Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chamada recebida por Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chamada de trabalho recebida por Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Chamada recebida suspeita (spam)"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Recebendo solicitação de vídeo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sem serviço"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atender à videochamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para fazer uma chamada, primeiro desative o modo avião."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Não registrado na rede."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rede celular não disponível."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rede móvel indisponível."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar uma chamada, digite um número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Não é possível realizar chamadas."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciando sequência MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Encerrar chamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Teleconferência"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Em chamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando a chamada com dados da rede celular…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Não foi possível alternar para a rede Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"A videochamada continuará via rede celular. Sujeito a cobranças por uso de dados."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando chamada por dados móveis…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Não foi possível alternar para a rede Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"A videochamada continuará via rede móvel. O uso de dados está sujeito a cobranças padrão."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Não exibir novamente"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ro/strings.xml b/java/com/android/incallui/res/values-ro/strings.xml
index db8be10..b78be2e 100644
--- a/java/com/android/incallui/res/values-ro/strings.xml
+++ b/java/com/android/incallui/res/values-ro/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Apel nepreluat de la <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Apel în desfășurare"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Apel de serviciu în desfășurare"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Apel Wi-Fi în desfășurare"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Apel de serviciu prin Wi-Fi în desfășurare"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Apel Wi-Fi în desfășurare"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Apel de serviciu prin Wi-Fi în desfășurare"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"În așteptare"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Apel de intrare"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Apel primit cu fotografie"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Apel primit important cu poză, mesaj și locație"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Apel primit important cu atașamente"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Apel de serviciu primit"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Apel prin Wi-Fi primit"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Apel de serviciu prin Wi-Fi primit"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Apel primit prin Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Apel de serviciu primit prin Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Un apel primit posibil spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Solicitare de trecere la apel video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Fără serviciu"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Preluați apelul video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Pentru a efectua un apel, mai întâi dezactivați modul Avion."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Neînregistrat în rețea."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rețeaua mobilă nu este disponibilă"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rețeaua mobilă nu este disponibilă."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Pentru a apela, introduceți un număr valid."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nu se poate apela."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Se pornește secvența MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Încheiați apelul"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Teleconferință"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Apel în desfășurare"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Se continuă apelul folosind datele mobile…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nu s-a putut comuta la rețeaua Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Apelul video rămâne în rețeaua mobilă. Se pot aplica tarife standard pentru date."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Se continuă apelul folosind datele mobile…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nu s-a putut comuta la rețeaua Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Apelul video continuă prin rețeaua mobilă. Se pot aplica tarife standard pentru date."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Nu mai afișa acest mesaj"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ru/strings.xml b/java/com/android/incallui/res/values-ru/strings.xml
index 8fd924e..06276c6 100644
--- a/java/com/android/incallui/res/values-ru/strings.xml
+++ b/java/com/android/incallui/res/values-ru/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропущенные вызовы от абонента <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Текущий вызов"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Текущий звонок (работа)"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Текущий Wi-Fi-звонок"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Текущий Wi-Fi-звонок (работа)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Текущий вызов по Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Текущий вызов по Wi-Fi (работа)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ждет ответа"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Входящий вызов"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Входящий вызов с фотографией"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важный вызов с фото, сообщением и геоданными"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важный входящий вызов с прикрепленными файлами"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Входящий звонок (работа)"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Входящий Wi-Fi-звонок"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Входящий Wi-Fi-звонок (работа)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Входящий вызов по Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Входящий вызов по Wi-Fi (работа)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Входящий вызов: подозрение на спам"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Входящий видеовызов"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Сеть не найдена"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Продолжить на этом устройстве"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Перед тем как звонить, отключите режим полета."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Нет регистрации в сети."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мобильная сеть недоступна."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобильная сеть недоступна."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Недействительный номер."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Не удалось позвонить."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Запуск последовательности MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завершить вызов"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференц-вызов"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Вызов"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Переключение на мобильные данные…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Не удалось подключиться к сети Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видеовызов будет выполняться по мобильной сети. Может взиматься стандартная плата за передачу данных."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Переключение на мобильный Интернет…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Не удалось переключиться на сеть Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видеовызов будет выполняться по мобильной сети. Может взиматься стандартная плата за передачу данных."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Больше не показывать"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-si/strings.xml b/java/com/android/incallui/res/values-si/strings.xml
index 989879a..0497b78 100644
--- a/java/com/android/incallui/res/values-si/strings.xml
+++ b/java/com/android/incallui/res/values-si/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> වෙතින් මඟ හැරුණු ඇමතුම"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"කරගෙනය යන ඇමතුම"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"කරගෙන යන කාර්යාල ඇමතුම"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"දැනට ක්‍රියාත්මක Wi-Fi ඇමතුම"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"කරගෙන යන Wi-Fi කාර්යාල ඇමතුම"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"කරගෙන යන Wi-Fi ඇමතුම"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"කරගෙන යන Wi-Fi කාර්යාල ඇමතුම"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"රඳවා ගනිමින්"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"එන ඇමතුම"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ඡායාරූපය සමග එන ඇමතුම"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ඡායාරූපය, පණිවිඩය සහ ස්ථානය සමග වැදගත් එන ඇමතුම"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ඇමුණුම් සමග වැදගත් එන ඇමතුම"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"පැමිණෙන කාර්යාල ඇමතුම"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"පැමිණෙන Wi-Fi ඇමතුම"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"පැමිණෙන Wi-Fi කාර්යාල ඇමතුම"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"එන Wi-Fi ඇමතුම"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"එන Wi-Fi කාර්යාල ඇමතුම"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"එන සැකසහිත අයාචිත තැපැල් ඇමතුම"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"පැමිණෙන වීඩියෝ ඉල්ලීම"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"සේවාව නැත"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"වීඩියෝ ඇමතුම ගන්න"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ඇමතුමක් ගැනීමට, මුලින්ම ගුවන්යානා ආකාරය අක්‍රිය කරන්න."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ජාලය මත ලියාපදිංචි වී නැත."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"සෙලියුලර් ජාලය නොමැත"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"ජංගම ජාලය නොමැත."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ඇමතුමක් ලබාගැනීමට, වලංගු අංකයක් ලබාගන්න."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ඇමතුම් ගැනීමට නොහැක."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI අනුපිළිවෙල ආරම්භ කරමින්…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ඇමතුම අවසන් කරන්න"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"සම්මන්ත්‍රණ ඇමතුම"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ඇමතුමක"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"සෙලියුලර් දත්ත භාවිතයෙන් ඇමතුම දිගටම කරගෙන යමින්…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ජාලය වෙත මාරු කිරීමට නොහැකි විය"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"වීඩියෝ ඇමතුම සෙලියුලර් ජාලයේ පවතිනු ඇත. සම්මත දත්ත ගාස්තු අදාළ විය හැකිය."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ජංගම දත්ත භාවිතයෙන් ඇමතුම දිගටම කරගෙන යමින්…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi ජාලය වෙත මාරු කිරීමට නොහැකි විය"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"වීඩියෝ ඇමතුම ජංගම ජාලයේ පවතිනු ඇත. සම්මත දත්ත ගාස්තු අදාළ විය හැකිය."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"නැවත මෙය නොපෙන්වන්න"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sk/strings.xml b/java/com/android/incallui/res/values-sk/strings.xml
index d09ba44..b83cd94 100644
--- a/java/com/android/incallui/res/values-sk/strings.xml
+++ b/java/com/android/incallui/res/values-sk/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Zmeškaný hovor od volajúceho <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Prebiehajúci hovor"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Prebiehajúci pracovný hovor"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Odchádzajúci hovor prostredníctvom siete Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Prebiehajúci pracovný hovor cez Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Prebiehajúci hovor cez Wi‑Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Prebiehajúci pracovný hovor cez Wi‑Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Podržaný hovor"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Prichádzajúci hovor"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Prichádzajúci hovor s fotkou"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Dôležitý prich. hovor s fotkou, správou a polohou"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Dôležitý prichádzajúci hovor s prílohami"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Prichádzajúci pracovný hovor"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Prichádzajúci hovor prostredníctvom siete Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Prichádzajúci pracovný hovor cez Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Prichádzajúci hovor cez Wi‑Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Prichádzajúci pracovný hovor cez Wi‑Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Prichádzajúci hovor, pri ktorom je podozrenie, že ide o spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Prichádzajúca žiadosť o video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Žiadny signál"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Prevziať videohovor"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Ak chcete telefonovať, vypnite najprv režim v lietadle."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Prihlásenie do siete nebolo úspešné."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilná sieť nie je k dispozícii."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilná sieť nie je k dispozícii."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Ak chcete volať, zadajte platné číslo"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Hovor nie je možné uskutočniť"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Prebieha spúšťanie sekvencie MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Ukončiť hovor"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenčný hovor"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Prebieha hovor"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Pokračuje sa v hovore pomocou mobilných dát…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nepodarilo sa prepnúť na sieť Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videohovor bude pokračovať v mobilnej sieti. Môžu sa účtovať štandardné poplatky za prenos dát."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Pokračuje sa v hovore pomocou mobilných dát…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nepodarilo sa prepnúť na sieť Wi‑Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videohovor bude pokračovať v mobilnej sieti. Môžu sa účtovať štandardné poplatky za prenos dát."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Informácie nabudúce nezobrazovať"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sl/strings.xml b/java/com/android/incallui/res/values-sl/strings.xml
index b083e1b..cf51ff5 100644
--- a/java/com/android/incallui/res/values-sl/strings.xml
+++ b/java/com/android/incallui/res/values-sl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Neodgovorjeni klic od: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Aktivni klic"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Aktivni delovni klic"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Odhodni klic prek Wi-Fi-ja"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Aktivni delovni klic prek omrežja Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Aktivni klic prek omrežja Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Aktivni delovni klic prek omrežja Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Zadržano"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Dohodni klic"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Dohodni klic s fotografijo"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Pomemben klic s fotografijo, sporočilom, lokacijo"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Pomemben dohodni klic s prilogami"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Dohodni delovni klic"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Dohodni klic prek Wi-Fi-ja"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Dohodni delovni klic prek omrežja Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Dohodni klic prek omrežja Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Dohodni delovni klic prek omrežja Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Domnevno neželeni dohodni klic"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Dohodna zahteva za video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ni storitve"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Sprejmi videoklic"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Če želite poklicati, najprej izklopite način za letalo."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ni registrirano v omrežju."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilno omrežje ni na voljo."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilno omrežje ni na voljo."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Če želite opraviti klic, vnesite veljavno številko."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Klicanje ni mogoče."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Začetek zaporedja MMI ..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Končaj klic"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenčni klic"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Poteka klic"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Nadaljevanje klica prek prenosa podatkov v mobilnih omrežjih …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ni bilo mogoče preklopiti v omrežje Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videoklic bo še naprej potekal v mobilnem omrežju. Morda boste morali plačati standardne stroške prenosa podatkov."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Nadaljevanje klica prek prenosa podatkov v mobilnem omrežju …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Ni bilo mogoče preklopiti v omrežje Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videoklic bo še naprej potekal v mobilnem omrežju. Morda boste morali plačati standardne stroške prenosa podatkov."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Tega ne kaži več"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sq/strings.xml b/java/com/android/incallui/res/values-sq/strings.xml
index fd19642..76bb87b 100644
--- a/java/com/android/incallui/res/values-sq/strings.xml
+++ b/java/com/android/incallui/res/values-sq/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Telefonatë e humbur nga <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Telefonatë në vazhdim"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Telefonatë pune dalëse"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Telefonatë në vazhdim me Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Telefonatë pune dalëse përmes Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Telefonatë në vazhdim me Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Telefonatë pune dalëse me Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Në pritje"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Telefonatë hyrëse"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Telefonatë hyrëse me fotografi"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Tel. e rëndësishme me foto, mesazh e vendndodhje"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Telefonatë hyrëse e rëndësishme me bashkëngjitje"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Telefonatë pune hyrëse"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Telefonatë hyrëse Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Telefonatë pune hyrëse përmes Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Telefonatë hyrëse me Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Telefonatë pune hyrëse me Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Telefonatë e dyshuar si e padëshiruar"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Kërkesë për video hyrëse"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nuk ka shërbim"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Prano telefonatën me video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Për të kryer telefonatë, së pari çaktivizo modalitetin e aeroplanit."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"I paregjistruar në rrjet."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rrjeti celular nuk mundësohet."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rrjeti celular nuk mundësohet."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Për të kryer një telefonatë, fut një numër të vlefshëm."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nuk mund të telefonojë."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Po fillon sekuencën MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Mbylle telefonatën"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonatë konferencë"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Në telefonatë"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Po vazhdon telefonatën duke përdorur të dhënat celulare…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nuk mund të kalonte në rrjetin Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Telefonata me video do të mbetet në rrjetin celular. Mund të zbatohen tarifat standarde."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Po vazhdon telefonatën duke përdorur të dhënat celulare…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nuk mund të kalonte në rrjetin Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Telefonata me video do të mbetet në rrjetin celular. Mund të zbatohen tarifat standarde të të dhënave."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Mos e shfaq më këtë"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sr/strings.xml b/java/com/android/incallui/res/values-sr/strings.xml
index 4fa7a61..85e76a9 100644
--- a/java/com/android/incallui/res/values-sr/strings.xml
+++ b/java/com/android/incallui/res/values-sr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропуштен позив од: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Актуелни позив"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Текући позив за Work"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Текући Wi-Fi позив"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Текући позив за Work преко Wi-Fi-ја"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi‑Fi позив у току"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi‑Fi пословни позив у току"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"На чекању"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Долазни позив"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Долазни позив са сликом"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важан долазни позив са сликом, поруком и локацијом"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важан долазни позив са прилозима"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Долазни позив за Work"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Долазни Wi-Fi позив"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Долазни позив за Work преко Wi-Fi-ја"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Долазни Wi‑Fi позив"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Долазни Wi‑Fi пословни позив"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Сумња на непожељан долазни позив"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Захтев за долазни видео позив"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Нема услуге"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Преузми видео позив"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Да бисте упутили позив, прво искључите режим рада у авиону."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Није регистровано на мрежи."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мобилна мрежа није доступна."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобилна мрежа није доступна."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Да бисте упутили позив, унесите важећи број."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Позив није успео."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Покретање MMI секвенце"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завршите позив"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференцијски позив"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"У позиву"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Позив се наставља помоћу мобилних података…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Пребацивање на Wi-Fi мрежу није успело"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видео позив ће остати на мобилној мрежи. Могу да важе стандардне накнаде за пренос података."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Позив се наставља помоћу мобилних података…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Пребацивање на Wi‑Fi мрежу није успело"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видео позив ће остати на мобилној мрежи. Важе стандардне накнаде за пренос података."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Не приказуј ово поново"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sv/strings.xml b/java/com/android/incallui/res/values-sv/strings.xml
index 6d58d90..4bbce1d 100644
--- a/java/com/android/incallui/res/values-sv/strings.xml
+++ b/java/com/android/incallui/res/values-sv/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Missat samtal från <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Pågående samtal"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Pågående jobbsamtal"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Pågående Wi-Fi-samtal"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Pågående jobbsamtal via Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Pågående Wi-Fi-samtal"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Pågående jobbsamtal på Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Parkerat"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Inkommande samtal"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Inkommande samtal med foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Viktigt inkommande samtal med foto, meddelande och plats"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Viktigt inkommande samtal med bilagor"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Inkommande jobbsamtal"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Inkommande Wi-Fi-samtal"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Inkommande jobbsamtal via Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Inkommande Wi-Fi-samtal"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Inkommande jobbsamtal på Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Inkommande misstänkt spamsamtal"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Inkommande begäran om videosamtal"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ingen tjänst"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Svara på videosamtal"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Om du vill ringa ett samtal måste du först inaktivera flygplansläge."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Inte registrerat på nätverk."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Det finns inget mobilnät tillgängligt."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Inga tillgängliga mobilnätverk."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Ange ett giltigt nummer om du vill ringa ett samtal."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Det gick inte att ringa."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Startar sekvens för MMI-kod…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Avsluta samtal"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenssamtal"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"I samtal"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Samtalet fortsätter med mobildata …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Det gick inte att växla till Wi-Fi-nätverk"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videosamtalet förblir i mobilnätverket. Vanliga dataavgifter kan tillkomma."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Samtalet fortsätter med mobildata …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Det gick inte att växla till Wi-Fi-nätverk"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videosamtalet förblir i mobilnätverket. Vanliga dataavgifter kan tillkomma."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Visa inte detta igen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sw/strings.xml b/java/com/android/incallui/res/values-sw/strings.xml
index 0bb1b8c..17c3a52 100644
--- a/java/com/android/incallui/res/values-sw/strings.xml
+++ b/java/com/android/incallui/res/values-sw/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Simu ambayo hukujibu kutoka <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Simu inayoendelea"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Simu ya kazi inayoendelea"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Simu ya Wi-Fi inayoendelea"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Simu ya Wi-Fi ya kazi inayoendelea"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Simu ya Wi-Fi inaendelea"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Simu ya Wi-Fi ya kazi inaendelea"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Inangoja"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Unapigiwa simu"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Simu inayoingia yenye picha"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Simu muhimu yenye picha, ujumbe na mahali"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Simu muhimu inayoingia yenye viambatisho"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Simu ya kazi inayoingia"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Simu ya Wi-Fi inayoingia"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Simu ya Wi-Fi ya kazi inayoingia"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Simu ya Wi-Fi inaingia"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Simu ya Wi-Fi ya kazi inaingia"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Simu inayoingia inashukiwa kuwa taka"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Ombi  linaloingia la video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Hakuna huduma"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Pokea Simu ya Video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Kupiga simu, kwanza zima hali ya ndegeni."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Haijasajiliwa kwa mitandao"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mitandao ya simu za mkononi haipatikani"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mtandao wa simu haupatikani."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Ili upige simu, weka nambari sahihi."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Haiwezi kupiga simu."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Inaanzisha msururu wa MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Kata simu"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Simu ya kongamano"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Mazungumzo ya simu yanaendelea"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Endelea na mazungumzo ya simu ukitumia data ya kifaa cha mkononi…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Imeshindwa kuhamia mtandao wa Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Hangout ya video itaendelea kwenye mtandao wa simu. Huenda ukatozwa gharama za kawaida za data."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Endelea na mazungumzo ya simu ukitumia data ya simu…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Imeshindwa kuhamia mtandao wa Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Hangout ya video itaendelea kwenye mtandao wa simu. Huenda ukatozwa gharama za kawaida za data."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Usiionyeshe tena"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ta/strings.xml b/java/com/android/incallui/res/values-ta/strings.xml
index bae8d6a..bb228a0 100644
--- a/java/com/android/incallui/res/values-ta/strings.xml
+++ b/java/com/android/incallui/res/values-ta/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> இடமிருந்து தவறிய அழைப்பு"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"செயலில் இருக்கும் அழைப்பு"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"வெளிச்செல்லும் அழைப்பு (பணி)"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"வெளிச்செல்லும் வைஃபை அழைப்பு"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"வெளிச்செல்லும் வைஃபை அழைப்பு (பணி)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"செயலில் இருக்கும் வைஃபை அழைப்பு"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"செயலில் இருக்கும் வைஃபை அழைப்பு (பணி)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"காத்திருப்பில்"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"உள்வரும் அழைப்பு"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"படத்துடன் உள்வரும் அழைப்பு"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"படம், செய்தி, இருப்பிடத்துடன் உள்வரும் முக்கியமான அழைப்பு"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"இணைப்புகளுடன் உள்வரும் முக்கியமான அழைப்பு"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"உள்வரும் அழைப்பு (பணி)"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"உள்வரும் வைஃபை அழைப்பு"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"உள்வரும் வைஃபை அழைப்பு (பணி)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"உள்வரும் வைஃபை அழைப்பு"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"உள்வரும் வைஃபை அழைப்பு (பணி)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"உள்வரும் சந்தேகத்திற்குரிய ஸ்பேம் அழைப்பு"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"உள்வரும் வீடியோ கோரிக்கை"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"சேவை இல்லை"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"வீடியோ அழைப்பை எடு"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"அழைப்பதற்கு, முதலில் விமானப் பயன்முறையை முடக்கவும்."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"நெட்வொர்க்கில் பதிவுசெய்யப்படவில்லை."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"செல்லுலார் நெட்வொர்க் கிடைக்கவில்லை."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"மொபைல் நெட்வொர்க் கிடைக்கவில்லை."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"அழைக்க, சரியான எண்ணை உள்ளிடவும்."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"அழைக்க முடியாது."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI வரிசையைத் தொடங்குகிறது..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"அழைப்பைத் துண்டிக்கும்"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"குழு அழைப்பு"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"அழைப்பில்"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"செல்லுலார் தரவைப் பயன்படுத்தி அழைப்பைத் தொடர்கிறது…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"வைஃபை நெட்வொர்க்கிற்கு மாற முடியவில்லை"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"செல்லுலார் நெட்வொர்க்கைப் பயன்படுத்தி தொடர்ந்து வீடியோ அழைப்பைச் செய்யலாம். வழக்கமான தரவுக் கட்டணங்கள் விதிக்கப்படக்கூடும்."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"மொபைல் தரவைப் பயன்படுத்தி அழைப்பைத் தொடர்கிறது…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"வைஃபை நெட்வொர்க்கிற்கு மாற முடியவில்லை"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"மொபைல் நெட்வொர்க்கைப் பயன்படுத்தி தொடர்ந்து வீடியோ அழைப்பைச் செய்யலாம். வழக்கமான தரவுக் கட்டணங்கள் விதிக்கப்படக்கூடும்."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"இதை மீண்டும் காட்டாதே"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-te/strings.xml b/java/com/android/incallui/res/values-te/strings.xml
index 6b83388..a5da32a 100644
--- a/java/com/android/incallui/res/values-te/strings.xml
+++ b/java/com/android/incallui/res/values-te/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> నుండి సమాధానం ఇవ్వని కాల్"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"కాల్ కొనసాగుతోంది"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"కార్యాలయ కాల్ కొనసాగుతోంది"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi కాల్ కొనసాగుతోంది"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Wi-Fi కార్యాలయ కాల్ కొనసాగుతోంది"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"మాట్లాడుతున్న Wi‑Fi కాల్"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"మాట్లాడుతున్న Wi‑Fi కార్యాలయ కాల్"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"హోల్డ్‌లో ఉంది"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ఇన్‌కమింగ్ కాల్"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ఫోటోతో ఇన్‌కమింగ్ కాల్"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ఫోటో, సందేశం, స్థానంతో ముఖ్యమైన ఇన్‌కమింగ్ కాల్"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"జోడింపులతో ముఖ్యమైన ఇన్‌కమింగ్ కాల్"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ఇన్‌కమింగ్ కార్యాలయ కాల్"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi కాల్ వస్తోంది"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ఇన్‌కమింగ్ Wi-Fi కార్యాలయ కాల్"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ఇన్‌కమింగ్ Wi-Fi కాల్"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ఇన్‌కమింగ్ Wi-Fi కార్యాలయ కాల్"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"అనుమానాస్పద స్పామ్ కాల్ వస్తోంది"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ఇన్‌కమింగ్ వీడియో అభ్యర్థన"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"సేవ లేదు"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"వీడియో కాల్‌ను తీయి"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"కాల్ చేయడానికి, మొదట ఎయిర్‌ప్లైన్ మోడ్‌ను ఆపివేయండి."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"నెట్‌వర్క్‌లో నమోదు కాలేదు."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"సెల్యులార్ నెట్‌వర్క్ అందుబాటులో లేదు."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"మొబైల్ నెట్‌వర్క్ అందుబాటులో లేదు."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"కాల్ చేయడానికి, చెల్లుబాటు అయ్యే నంబర్‌ను నమోదు చేయండి."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"కాల్ చేయలేరు."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI శ్రేణిని ప్రారంభిస్తోంది…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"కాల్‌ను ముగిస్తుంది"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"కాన్ఫరెన్స్ కాల్"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"కాల్‌లో ఉన్నారు"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"సెల్యులార్ డేటాను ఉపయోగించి కాల్‌ను కొనసాగిస్తోంది…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi నెట్‌వర్క్‌కి మార్చలేకపోయింది"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"వీడియో కాల్ సెల్యులార్ నెట్‌వర్క్‌లో కొనసాగుతుంది. ప్రామాణిక డేటా ఛార్జీలు వర్తించవచ్చు."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"మొబైల్ డేటాను ఉపయోగించి కాల్‌ను కొనసాగిస్తోంది…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi నెట్‌వర్క్‌కి మార్చడం సాధ్యపడలేదు"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"వీడియో కాల్ మొబైల్ నెట్‌వర్క్‌లో కొనసాగుతుంది. ప్రామాణిక డేటా ఛార్జీలు వర్తించవచ్చు."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"దీన్ని మళ్లీ చూపవద్దు"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-th/strings.xml b/java/com/android/incallui/res/values-th/strings.xml
index 11023b9..102faf2 100644
--- a/java/com/android/incallui/res/values-th/strings.xml
+++ b/java/com/android/incallui/res/values-th/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"สายที่ไม่ได้รับจาก <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"โทรต่อเนื่อง"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"กำลังอยู่ในสายจากที่ทำงาน"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"กำลังโทรผ่าน Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"กำลังอยู่ในสายจากที่ทำงานผ่าน Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"กำลังโทรผ่าน Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"กำลังอยู่ในสายจากที่ทำงานผ่าน Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"พักสาย"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"สายเรียกเข้า"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"สายเรียกเข้าพร้อมรูปภาพ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"สายเรียกเข้าที่สำคัญพร้อมรูปภาพ ข้อความ และตำแหน่ง"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"สายเรียกเข้าที่สำคัญพร้อมไฟล์แนบ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"มีสายเรียกเข้าจากที่ทำงาน"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"สายโทรเข้าผ่าน Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"มีสายเรียกเข้าจากที่ทำงานผ่าน Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"สายโทรเข้าผ่าน Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"มีสายเรียกเข้าจากที่ทำงานผ่าน Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"สายเรียกเข้าที่สงสัยว่าเป็นสแปม"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"คำขอโทรเข้าเป็นวิดีโอ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ไม่มีบริการ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"รับสายแฮงเอาท์วิดีโอ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"หากต้องการโทรออก ให้ปิดโหมดใช้งานบนเครื่องบินก่อน"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ยังไม่ได้ลงทะเบียนบนเครือข่าย"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"เครือข่ายมือถือใช้งานไม่ได้"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"เครือข่ายมือถือใช้งานไม่ได้"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"หากต้องการโทรออก โปรดป้อนหมายเลขที่ถูกต้อง"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ไม่สามารถโทรได้"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"กำลังเริ่มต้นลำดับ MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"วางสาย"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"การประชุมสาย"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"อยู่ในสาย"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"กำลังทำการโทรต่อโดยใช้ข้อมูลเครือข่ายมือถือ…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"ไม่สามารถเปลี่ยนไปใช้เครือข่าย Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"แฮงเอาท์วิดีโอจะยังคงอยู่ในเครือข่ายมือถือ อาจมีการเรียกเก็บค่าบริการข้อมูลมาตรฐาน"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"โทรต่อโดยใช้อินเทอร์เน็ตมือถือ..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ไม่สามารถเปลี่ยนไปใช้เครือข่าย Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"แฮงเอาท์วิดีโอจะยังคงอยู่ในเครือข่ายมือถือ อาจมีการเรียกเก็บค่าบริการข้อมูลมาตรฐาน"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"อย่าแสดงสิ่งนี้อีก"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-tl/strings.xml b/java/com/android/incallui/res/values-tl/strings.xml
index 00a4623..9cc2f54 100644
--- a/java/com/android/incallui/res/values-tl/strings.xml
+++ b/java/com/android/incallui/res/values-tl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Hindi nasagot ang tawag mula kay <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Kasalukuyang tawag"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Kasalukuyang tawag sa trabaho"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Isinasagawang tawag sa Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Kasalukuyang tawag sa trabaho sa pamamagitan ng Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Kasalukuyang isinasagawang tawag sa Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Kasalukuyang isinasagawang tawag sa trabaho gamit ang Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Naka-hold"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Papasok na tawag"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Papasok na tawag na may larawan"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Mahalagang papasok na tawag na may larawan, mensahe, at lokasyon"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Mahalagang papasok na tawag na may mga attachment"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Papasok na tawag sa trabaho"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Papasok na tawag sa Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Papasok na tawag sa trabaho sa pamamagitan ng Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Papasok na tawag sa Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Papasok na tawag sa trabaho gamit ang Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Papasok na pinaghihinalaang spam na tawag"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Papasok na kahilingan ng video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Walang serbisyo"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Sagutin ang Video Call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Upang tumawag, paki-off ang Airplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Hindi nakarehistro sa network."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Hindi available ang cellular network"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Hindi available ang mobile network."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Upang tumawag, maglagay ng wastong numero."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Hindi makatawag."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Sinisimulan ang pagkakasunud-sunod ng MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Tapusin ang tawag"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conference call"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Nasa tawag"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Ipinagpapatuloy ang tawag gamit ang cellular data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Hindi makalipat sa Wi-Fi network"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Mananatili sa cellular network ang video call. Maaaring may mga babayaran sa data."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Ipinagpapatuloy ang tawag gamit ang mobile data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Hindi makalipat sa Wi-Fi network"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Mananatili sa mobile network ang video call. Maaaring may mga babayaran sa data."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Huwag itong ipakitang muli"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-tr/strings.xml b/java/com/android/incallui/res/values-tr/strings.xml
index 9820a69..9126624 100644
--- a/java/com/android/incallui/res/values-tr/strings.xml
+++ b/java/com/android/incallui/res/values-tr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Cevapsız çağrı: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Devam eden çağrılar"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Süren iş çağrısı"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Giden kablosuz çağrı"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Süren kablosuz iş çağrısı"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Devam eden kablosuz çağrı"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"İşle ilgili devam eden kablosuz çağrı"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Beklemede"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Gelen çağrı"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Fotoğraf eklenmiş gelen çağrı"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Fotoğraf, mesaj ve konum eklenmiş önemli çağrı"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Ek iliştirilmiş önemli gelen çağrı"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Gelen iş çağrısı"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Gelen kablosuz çağrı"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Gelen kablosuz iş çağrısı"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Gelen kablosuz çağrı"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"İşle ilgili gelen kablosuz çağrı"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Spam olabilecek gelen arama"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Gelen video isteği"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Hizmet yok"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Video Görüşmesini Al"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Bir çağrı yapmak için öncelikle Uçak modunu kapatın."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ağda kayıtlı değil."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Hücresel ağ kullanılamıyor."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobil ağ kullanılamıyor."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Telefon etmek için geçerli bir numara girin."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Arama yapılamıyor."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI dizisi başlatılıyor..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Çağrı sonlandırılır"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferans çağrısı"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Konferans çağrısında"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Görüşmeye hücresel veri kullanılarak devam ediliyor…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Kablosuz ağa geçilemedi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video görüşmesi hücresel ağda devam edecek. Standart veri ücretleri alınabilir."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Görüşmeye mobil veri kullanılarak devam ediliyor…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Kablosuz ağa geçilemedi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Görüntülü görüşme mobil ağda devam edecek. Standart veri ücretleri alınabilir."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Bunu bir daha gösterme"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-uk/strings.xml b/java/com/android/incallui/res/values-uk/strings.xml
index b3b297d..30c202c 100644
--- a/java/com/android/incallui/res/values-uk/strings.xml
+++ b/java/com/android/incallui/res/values-uk/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропущений виклик: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Поточний виклик"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Поточний дзвінок на робочий телефон"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Активний дзвінок через Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Поточний дзвінок на робочий телефон через Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Поточний дзвінок через Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Поточний дзвінок на робочий телефон через Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Очікує"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Вхідний виклик"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Вхідний дзвінок із фото"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важливий дзвінок із фото, повідомленням і адресою"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важливий вхідний дзвінок із вкладеними файлами"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Вхідний дзвінок на робочий телефон"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Вхідний дзвінок через Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Вхідний дзвінок на робочий телефон через Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Вхідний дзвінок через Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Вхідний дзвінок на робочий телефон через Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Цей дзвінок може бути спамом"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Запит на вхідний відеодзвінок"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Нема служби"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Прийняти відеодзвінок"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Щоб установ. з\'єднання, споч. вимк. режим польоту."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Не зареєстровано в мережі."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мобільна мережа недоступна."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобільна мережа недоступна."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Щоб зателефонувати, введіть дійсний номер."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Неможливо зателефонувати."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Запуск ряду MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завершити виклик"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференц-зв’язок"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Триває виклик"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Продовження виклику через мобільний трафік…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Не вдалося перейти в мережу Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Відеодзвінок продовжиться в мобільній мережі. Діють стандартні тарифи."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Продовження виклику з використанням мобільного Інтернету…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Не вдалося перейти на мережу Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Відеодзвінок продовжиться з використанням мобільного Інтернету. Діють стандартні тарифи."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Більше не показувати це"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ur/strings.xml b/java/com/android/incallui/res/values-ur/strings.xml
index e3326a2..8e70bad 100644
--- a/java/com/android/incallui/res/values-ur/strings.xml
+++ b/java/com/android/incallui/res/values-ur/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> کی جانب سے چھوٹی ہوئی کال"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"جاری کال"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"کام سے متعلق جاری کال"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"‏Wi-Fi کال جاری ہے"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"‏کام سے متعلق جاری Wi-Fi کال"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"‏جاری Wi-Fi کال"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"‏کام سے متعلق جاری Wi-Fi کال"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ہولڈ پر"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"آنے والی کال"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"تصویر کے ساتھ آنے والی کال"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"تصویر، پیغام اور مقام کے ساتھ آنے والی اہم کال"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"منسلکات کے ساتھ آنے والی اہم کال"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"کام سے متعلق آنے والی کال"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"‏Wi-Fi کال آ رہی ہے"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"‏کام سے متعلق آنے والی Wi-Fi کال"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"‏Wi-Fi کال آ رہی ہے"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"‏کام سے متعلق آنے والی Wi-Fi کال"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"آنے والی مشتبہ سپام کال"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"اِن کمنگ ویڈیو درخواست"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"کوئی سروس نہیں ہے"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ویڈیو کال لیں"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"کال کرنے کیلئے، پہلے ہوائی جہاز طرز کو آف کریں۔"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"نیٹ ورک پر رجسٹرڈ نہیں ہے۔"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"سیلولر نیٹ ورک دستیاب نہیں ہے۔"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"موبائل نیٹ ورک دستیاب نہیں ہے۔"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"کال کرنے کیلئے، ایک درست نمبر درج کریں۔"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"کال نہیں کر سکتے۔"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"‏MMI ترتیب شروع ہو رہی ہے…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"کال ختم کریں"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"کانفرنس کال"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"کال میں"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"سیلولر ڈیٹا استعمال کرکے کال جاری ہے"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"‏Wi-Fi نیٹ ورک پر سوئچ نہیں ہو سکا"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ویڈیو کال سیلولر نیٹ ورک پر رہے گی۔ ڈیٹا کے معیاری چارجز کا اطلاق ہو سکتا ہے۔"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"موبائل ڈیٹا استعمال کرکے کال جاری ہے"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"‏Wi-Fi نیٹ ورک پر سوئچ نہیں ہو سکا"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ویڈیو کال موبائل نیٹ ورک پر رہے گی۔ ڈیٹا کے معیاری چارجز کا اطلاق ہو سکتا ہے۔"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"اسے دوبارہ مت دکھائیں"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-uz/strings.xml b/java/com/android/incallui/res/values-uz/strings.xml
index 3828501..2341da3 100644
--- a/java/com/android/incallui/res/values-uz/strings.xml
+++ b/java/com/android/incallui/res/values-uz/strings.xml
@@ -31,12 +31,12 @@
     <string name="voicemail_settings_number_label" msgid="8935904934161608885">"Ovozli pochta raqami"</string>
     <string name="notification_dialing" msgid="9072177265772083826">"Raqam terilmoqda"</string>
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> chaqiruvi javobsiz qoldi"</string>
-    <string name="notification_ongoing_call" msgid="8712641937577776125">"Joriy qo‘ng‘iroq"</string>
+    <string name="notification_ongoing_call" msgid="8712641937577776125">"Joriy chaqiruv"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chiquvchi ishchi qo‘ng‘irog‘i"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chiquvchi Wi-Fi qo‘ng‘irog‘i"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chiquvchi Wi-Fi ishchi qo‘ng‘irog‘i"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Joriy Wi-Fi qo‘ng‘iroq"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Joriy Wi-Fi qo‘ng‘iroq (ish)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Kutmoqda"</string>
-    <string name="notification_incoming_call" msgid="7520580807513849283">"Kiruvchi qo‘ng‘iroq"</string>
+    <string name="notification_incoming_call" msgid="7520580807513849283">"Kiruvchi chaqiruv"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Suratga ega kiruvchi chaqiruv"</string>
     <string name="notification_incoming_call_with_message" msgid="5608687985694956601">"Xabarga ega kiruvchi chaqiruv"</string>
     <string name="notification_incoming_call_with_location" msgid="4519498445081598767">"Joylashuv axborotiga ega kiruvchi chaqiruv"</string>
@@ -55,9 +55,9 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Surat, xabar va joy. ax. ega muhim kiruv. chaqiruv"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Biriktirmalarga ega muhim kiruvchi chaqiruv"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Kiruvchi ishchi qo‘ng‘irog‘i"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Kiruvchi Wi-Fi qo‘ng‘irog‘i"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Kiruvchi Wi-Fi ishchi qo‘ng‘irog‘i"</string>
-    <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Shubhali kiruvchi qo‘ng‘iroq"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Kiruvchi Wi-Fi chaqiruv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Kiruvchi Wi-Fi chaqiruv (ish)"</string>
+    <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Kiruvchi chaqiruv: shubhali spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Kiruvchi video so\'rovi"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Xizmat mavjud emas"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Tanlangan tarmoq (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) mavjud emas"</string>
@@ -71,10 +71,10 @@
     <string name="notification_external_video_call" msgid="7709394856028436683">"Boshqa qurilmada hozir video qo‘ng‘iroq amalga oshirilmoqda."</string>
     <string name="notification_take_call" msgid="5631659438864492229">"Qo‘ng‘iroqni qabul qilish"</string>
     <string name="notification_take_video_call" msgid="4473387503712341390">"Video qo‘ng‘iroq. qabul qilish"</string>
-    <string name="incall_error_power_off" msgid="3244691852792529453">"Qo‘ng‘iroq qilish uchun, avval \"Parvoz rejimi\" o‘chirilishi kerak."</string>
+    <string name="incall_error_power_off" msgid="3244691852792529453">"Chaqiruv uchun, avval \"Parvoz rejimi\" o‘chirilishi kerak."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Tarmoqda ro‘yxatdan o‘tmagan."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobil tarmoq mavjud emas."</string>
-    <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Qo‘ng‘iroq qilish uchun raqamni to‘g‘ri kiriting."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Uyali aloqa tarmog‘i mavjud emas."</string>
+    <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Chaqiruv uchun raqamni to‘g‘ri kiriting."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Qo‘ng‘iroq qilib bo‘lmadi."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI tartibi ishga tushmoqda..."</string>
     <string name="incall_error_supp_service_unknown" msgid="3062751096566282959">"Xizmat qo‘llab-quvvatlanmaydi."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Qo‘ng‘iroqni tugatish"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferens-aloqa"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Qo‘ng‘iroq davom etmoqda"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Qo‘ng‘iroq mobil internet orqali davom ettirilmoqda…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi tarmog‘iga o‘tib bo‘lmadi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video qo‘ng‘iroq uyali tarmoqda davom etilaveradi. Internet uchun operator tarifi bo‘yicha haq olinishi mumkin."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Qo‘ng‘iroq mobil internetga o‘tkazilmoqda…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi tarmog‘iga o‘tib bo‘lmadi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video qo‘ng‘iroq mobil internet orqali davom ettiriladi. Internet uchun operator tarifi bo‘yicha haq olinishi mumkin."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Bu xabar boshqa ko‘rsatilmasin"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-vi/strings.xml b/java/com/android/incallui/res/values-vi/strings.xml
index b466b02..8c0dbce 100644
--- a/java/com/android/incallui/res/values-vi/strings.xml
+++ b/java/com/android/incallui/res/values-vi/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Cuộc gọi nhỡ từ <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Cuộc gọi đang thực hiện"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Cuộc gọi đang diễn ra về công việc"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Cuộc gọi đang diễn ra qua Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Cuộc gọi đang diễn ra qua Wi-Fi về công việc"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Cuộc gọi đang diễn ra qua Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Cuộc gọi về công việc đang diễn ra qua Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Đang chờ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Cuộc gọi đến"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Cuộc gọi đến có ảnh"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Cuộc gọi đến quan trọng có ảnh, tin nhắn và vị trí"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Cuộc gọi đến quan trọng có tệp đính kèm"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Cuộc gọi đến về công việc"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Cuộc gọi đến qua Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Cuộc gọi đến qua Wi-Fi về công việc"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Cuộc gọi đến qua Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Cuộc gọi đến về công việc qua Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Cuộc gọi spam đến bị nghi ngờ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Yêu cầu video đến"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Không có dịch vụ nào"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Nhận cuộc gọi điện video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Để thực hiện cuộc gọi, trước tiên, hãy tắt chế độ trên Máy bay."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Chưa được đăng ký trên mạng."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Không có mạng di động."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mạng di động không khả dụng."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Để thực hiện cuộc gọi, hãy nhập một số hợp lệ."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Không thực hiện được cuộc gọi."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Khởi động chuỗi MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Kết thúc cuộc gọi"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Cuộc gọi nhiều bên"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Đang trong cuộc gọi"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Đang tiếp tục cuộc gọi bằng cách sử dụng dữ liệu di động…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Không thể chuyển sang mạng Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Cuộc gọi điện video sẽ duy trì trên mạng di động. Có thể áp dụng phí dữ liệu chuẩn."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Đang tiếp tục cuộc gọi bằng cách sử dụng dữ liệu di động…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Không thể chuyển sang mạng Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Cuộc gọi điện video sẽ tiếp tục trên mạng di động. Bạn có thể phải trả phí dữ liệu chuẩn."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Không hiển thị lại"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-zh-rCN/strings.xml b/java/com/android/incallui/res/values-zh-rCN/strings.xml
index e26ab0c..4ede0cb 100644
--- a/java/com/android/incallui/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/res/values-zh-rCN/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"来自<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>的未接电话"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"当前通话"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"工作通话进行中"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"正在进行 WLAN 通话"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"WLAN 工作通话进行中"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"正在进行 WLAN 通话"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"正在进行 WLAN 工作通话"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"保持"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"来电"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"包含照片的来电"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"包含照片、讯息和位置信息的重要来电"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"包含附件的重要来电"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"工作来电"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"WLAN 来电"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"WLAN 工作来电"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"WLAN 来电"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"WLAN 工作来电"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"有疑似骚扰来电"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"收到视频通话邀请"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"无服务"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"接通视频通话"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"要进行呼叫，请先关闭飞行模式。"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"尚未注册网络。"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"无法连接到移动网络。"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"无法连接到移动网络。"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"要拨打电话，请输入有效的电话号码。"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"无法拨打该电话。"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"正在启动 MMI 序列..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"结束通话"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"电话会议"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"正在通话"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"正在使用移动数据网络继续通话…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"无法切换到 WLAN 网络"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"系统将使用移动网络继续视频通话。这可能会产生标准数据流量费。"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"正在使用移动数据继续通话…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"无法切换到 WLAN 网络"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"系统将使用移动网络继续视频通话。这可能会产生标准数据流量费。"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"不再显示"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-zh-rHK/strings.xml b/java/com/android/incallui/res/values-zh-rHK/strings.xml
index 5eb8892..c4934ea 100644
--- a/java/com/android/incallui/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/res/values-zh-rHK/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"來自 <xliff:g id="MISSED_CALL_FROM">%s</xliff:g> 的未接來電"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"通話中"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"正在進行工作通話"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"正在進行 Wi-Fi 通話"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"正在進行 Wi-Fi 工作通話"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"正在進行 Wi-Fi 通話"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"正在進行 Wi-Fi 工作通話"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"保留通話"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"來電"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"附有相片的來電"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"附有相片、訊息和位置的重要來電"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"附有附件的重要來電"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"工作來電"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi 來電"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Wi-Fi 工作來電"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Wi-Fi 來電"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Wi-Fi 工作來電"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"疑似收到垃圾來電"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"收到視像要求"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"沒有服務"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"接受視像通話"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"請先關閉飛行模式後再撥打電話。"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"未在網絡上完成註冊。"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"無法連線至流動網絡。"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"無法使用流動網絡。"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"要撥打電話，請輸入有效的號碼。"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"無法通話。"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"開始 MMI 序列..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"結束通話"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"會議通話"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"正在通話"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"使用流動數據繼續通話…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"無法切換為 Wi-Fi 網絡"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"視像通話仍會使用流動網絡 (可能需要支付標準數據用量費用)。"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"使用流動數據繼續通話…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"無法切換為 Wi-Fi 網絡"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"視像通話仍會使用流動網絡 (可能需要支付標準數據用量費用)。"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"不要再顯示此訊息"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-zh-rTW/strings.xml b/java/com/android/incallui/res/values-zh-rTW/strings.xml
index 9f02866..9b85a28 100644
--- a/java/com/android/incallui/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/res/values-zh-rTW/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"來自 <xliff:g id="MISSED_CALL_FROM">%s</xliff:g> 的未接來電"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"通話中"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"進行中的公司通話"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"撥出的 Wi-Fi 電話"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"進行中的公司通話 (透過 Wi-Fi)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"進行中的通話 (透過 Wi-Fi)"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"進行中的公司通話 (透過 Wi-Fi)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"通話保留"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"來電"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"包含相片的來電"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"包含相片、訊息和位置資訊的重要來電"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"包含附件的重要來電"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"公司來電"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"撥入的 Wi-Fi 電話"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"公司來電 (透過 Wi-Fi)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"來電 (透過 Wi-Fi)"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"公司來電 (透過 Wi-Fi)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"可疑的騷擾/廣告來電"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"收到視訊要求"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"沒有服務"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"接聽視訊通話"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"撥號前，請先關閉飛航模式。"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"尚未註冊網路。"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"無法連線到行動網路。"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"無法使用行動網路。"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"如要撥打電話，請輸入有效的號碼。"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"無法通話。"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"開始 MMI 序列…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"結束通話"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"電話會議"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"通話中"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"使用行動數據繼續進行通話…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"無法切換至 Wi-Fi 網路"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"視訊通話將繼續透過行動網路進行 (可能需支付一般數據傳輸費用)。"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"使用行動網路繼續進行通話…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"無法切換至 Wi-Fi 網路"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"視訊通話將繼續透過行動網路進行 (可能需支付一般數據傳輸費用)。"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"不要再顯示這項說明"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-zu/strings.xml b/java/com/android/incallui/res/values-zu/strings.xml
index db415cc..bc5a927 100644
--- a/java/com/android/incallui/res/values-zu/strings.xml
+++ b/java/com/android/incallui/res/values-zu/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Uphuthelwe ikholi kusukela ku-<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Ikholi eqhubekayo"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ikholi yomsebenzi eqhubekayo"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ikholi ye-Wi-Fi eqhubekayo"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ikholi yomsebenzi eqhubekayo ye-Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ikholi ye-Wi-Fi eqhubekayo"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ikholi yomsebenzi eqhubekayo ye-Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ibambile"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Ikholi engenayo"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Ikholi engenayo enesithombe"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Ikholi engenayo ebalulekile enesithombe, umlayezo nendawo"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Ikholi engenayo ebalulekile enokunamathiselwe kwi-imeyili"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Ikholi engenayo yomsebenzi"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Ikholi ye-Wi-Fi engenayo"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Ikholi engenayo yomsebenzi ye-Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Ikholi ye-Wi-Fi engenayo"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Ikholi engenayo yomsebenzi ye-Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Ikholi engenayo osolisayo kagaxekile"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Isicelo sevidiyo engenayo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ayikho isevisi"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Thatha ikholi yevidiyo"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Ukwenza ikholi, vala kuqala imodi Yendiza."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ayibhalisiwe kwinethiwekhi."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Inethiwekhi yeselula ayitholakali."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Inethiwekhi yefoni ayitholakali"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Ukuze wenze ikholi, faka inombolo evumelekile."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Ayikwazi ukushaya."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iqalisa ukulandelana kwe-MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Qeda ikholi"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Ikholi yengqungquthela"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Isecingweni"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Iqhuba ikholi isebenzisa idatha yeselula…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ayikwazanga ukushintshela kunethiwekhi ye-Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Ikholi yevidiyo izohlala kunethiwekhi yeselula. Izindleko zedatha ejwayelekile zingasebenza."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Iqhubekisa ikholi isebenzisa idatha yeselula…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Ayikwazanga ukushintshela kunethiwekhi ye-Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Ikholi yevidiyo izohlala ikunethiwekhi yeselula. Amashaji edatha avamile angasebenza."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ungabonisi lokhu futhi"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values/dimens.xml b/java/com/android/incallui/res/values/dimens.xml
index 18816f6..56b9ae1 100644
--- a/java/com/android/incallui/res/values/dimens.xml
+++ b/java/com/android/incallui/res/values/dimens.xml
@@ -38,7 +38,7 @@
   <dimen name="incall_dialpad_zero_key_number_margin_bottom">0dp</dimen>
   <dimen name="incall_dialpad_digits_adjustable_text_size">20sp</dimen>
   <dimen name="incall_dialpad_digits_adjustable_height">50dp</dimen>
-  <dimen name="incall_dialpad_key_numbers_size">36sp</dimen>
+  <dimen name="incall_dialpad_key_numbers_size">36dp</dimen>
 
   <!-- Dimensions for OTA Call Card -->
   <dimen name="otaactivate_layout_marginTop">10dp</dimen>
@@ -58,6 +58,8 @@
 
   <dimen name="conference_call_manager_button_dimension">48dp</dimen>
 
+  <dimen name="return_to_call_initial_offset_y">120dp</dimen>
+
   <!-- Whether or not the landscape mode layout is currently being used -->
   <bool name="is_layout_landscape">false</bool>
 
diff --git a/java/com/android/incallui/res/values/strings.xml b/java/com/android/incallui/res/values/strings.xml
index aede428..4113313 100644
--- a/java/com/android/incallui/res/values/strings.xml
+++ b/java/com/android/incallui/res/values/strings.xml
@@ -78,10 +78,10 @@
   <string name="notification_ongoing_work_call">Ongoing work call</string>
   <!-- The "label" of the in-call Notification for an ongoing call, which is being made over
        Wi-Fi. [CHAR LIMIT=60] -->
-  <string name="notification_ongoing_call_wifi">Ongoing Wi-Fi call</string>
+  <string name="notification_ongoing_call_wifi">Ongoing Wi\u2011Fi call</string>
   <!-- The "label" of the in-call Notification for an ongoing work call, which is being made
        over Wi-Fi. [CHAR LIMIT=60] -->
-  <string name="notification_ongoing_work_call_wifi">Ongoing Wi-Fi work call</string>
+  <string name="notification_ongoing_work_call_wifi">Ongoing Wi\u2011Fi work call</string>
   <!-- The "label" of the in-call Notification for a call that's on hold -->
   <string name="notification_on_hold">On hold</string>
   <!-- The "label" of the in-call Notification for an incoming ringing call. [CHAR LIMIT=60] -->
@@ -126,10 +126,10 @@
   <string name="notification_incoming_work_call">Incoming work call</string>
   <!-- The "label" of the in-call Notification for an incoming ringing call,
        which is being made over Wi-Fi. [CHAR LIMIT=60] -->
-  <string name="notification_incoming_call_wifi">Incoming Wi-Fi call</string>
+  <string name="notification_incoming_call_wifi">Incoming Wi\u2011Fi call</string>
   <!-- The "label" of the in-call Notification for an incoming ringing work call,
        which is being made over Wi-Fi. [CHAR LIMIT=60] -->
-  <string name="notification_incoming_work_call_wifi">Incoming Wi-Fi work call</string>
+  <string name="notification_incoming_work_call_wifi">Incoming Wi\u2011Fi work call</string>
   <!-- The "label" of the in-call Notification for an incoming ringing spam call. -->
   <string name="notification_incoming_spam_call">Incoming suspected spam call</string>
   <!-- The "label" of the in-call Notification for upgrading an existing call to a video call. -->
@@ -190,7 +190,7 @@
        This string is currently unused (see comments in InCallActivity.java.) -->
   <string name="incall_error_emergency_only">Not registered on network.</string>
   <!-- In-call screen: call failure message displayed in an error dialog -->
-  <string name="incall_error_out_of_service">Cellular network not available.</string>
+  <string name="incall_error_out_of_service">Mobile network not available.</string>
   <!-- In-call screen: call failure message displayed in an error dialog -->
   <string name="incall_error_no_phone_number_supplied">To place a call, enter a valid number.</string>
   <!-- In-call screen: call failure message displayed in an error dialog -->
@@ -349,11 +349,11 @@
   <string name="generic_conference_call_name">In call</string>
 
   <!-- Displayed when handover from WiFi to Lte occurs during a video call -->
-  <string name="video_call_wifi_to_lte_handover_toast">Continuing call using cellular data…</string>
+  <string name="video_call_wifi_to_lte_handover_toast">Continuing call using mobile data\u2026</string>
 
   <!-- Displayed when WiFi handover from LTE fails during a video call. -->
-  <string name="video_call_lte_to_wifi_failed_title">Couldn\'t switch to Wi-Fi network</string>
-  <string name="video_call_lte_to_wifi_failed_message">Video call will remain on cellular network. Standard
+  <string name="video_call_lte_to_wifi_failed_title">Couldn\'t switch to Wi\u2011Fi network</string>
+  <string name="video_call_lte_to_wifi_failed_message">Video call will remain on the mobile network. Standard
     data charges may apply.
   </string>
   <string name="video_call_lte_to_wifi_failed_do_not_show">Do not show this again</string>
diff --git a/java/com/android/incallui/res/values/styles.xml b/java/com/android/incallui/res/values/styles.xml
index 68a38f0..3c036c9 100644
--- a/java/com/android/incallui/res/values/styles.xml
+++ b/java/com/android/incallui/res/values/styles.xml
@@ -78,4 +78,13 @@
     <item name="android:colorAccent">@color/dialer_theme_color</item>
   </style>
 
+  <style name="Theme.Incall.DialogHolder" parent="Theme.AppCompat.Translucent">
+    <item name="android:windowBackground">@android:color/transparent</item>
+    <item name="android:windowActivityTransitions">false</item>
+
+    <item name="android:statusBarColor">@android:color/transparent</item>
+    <item name="android:navigationBarColor">@android:color/transparent</item>
+    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
+  </style>
+
 </resources>
diff --git a/java/com/android/incallui/sessiondata/MultimediaFragment.java b/java/com/android/incallui/sessiondata/MultimediaFragment.java
index 85a60b6..3e6cdbb 100644
--- a/java/com/android/incallui/sessiondata/MultimediaFragment.java
+++ b/java/com/android/incallui/sessiondata/MultimediaFragment.java
@@ -107,6 +107,7 @@
   public View onCreateView(
       LayoutInflater layoutInflater, @Nullable ViewGroup viewGroup, @Nullable Bundle bundle) {
     if (isSpam) {
+      LogUtil.i("MultimediaFragment.onCreateView", "show spam layout");
       return layoutInflater.inflate(R.layout.fragment_spam, viewGroup, false);
     }
 
@@ -116,23 +117,30 @@
     if (hasMap && MapsComponent.get(getContext()).getMaps().isAvailable()) {
       if (hasImage) {
         if (hasSubject) {
+          LogUtil.i("MultimediaFragment.onCreateView", "show text, image, location layout");
           return layoutInflater.inflate(
               R.layout.fragment_composer_text_image_frag, viewGroup, false);
         } else {
+          LogUtil.i("MultimediaFragment.onCreateView", "show image, location layout");
           return layoutInflater.inflate(R.layout.fragment_composer_image_frag, viewGroup, false);
         }
       } else if (hasSubject) {
+        LogUtil.i("MultimediaFragment.onCreateView", "show text, location layout");
         return layoutInflater.inflate(R.layout.fragment_composer_text_frag, viewGroup, false);
       } else {
+        LogUtil.i("MultimediaFragment.onCreateView", "show location layout");
         return layoutInflater.inflate(R.layout.fragment_composer_frag, viewGroup, false);
       }
     } else if (hasImage) {
       if (hasSubject) {
+        LogUtil.i("MultimediaFragment.onCreateView", "show text, image layout");
         return layoutInflater.inflate(R.layout.fragment_composer_text_image, viewGroup, false);
       } else {
+        LogUtil.i("MultimediaFragment.onCreateView", "show image layout");
         return layoutInflater.inflate(R.layout.fragment_composer_image, viewGroup, false);
       }
     } else {
+      LogUtil.i("MultimediaFragment.onCreateView", "show text layout");
       return layoutInflater.inflate(R.layout.fragment_composer_text, viewGroup, false);
     }
   }
@@ -155,11 +163,11 @@
       ((TextView) view.findViewById(R.id.spam_text)).setText(R.string.spam_message_text);
     }
 
-    TextView messageText = (TextView) view.findViewById(R.id.answer_message_text);
+    TextView messageText = view.findViewById(R.id.answer_message_text);
     if (messageText != null) {
       messageText.setText(getSubject());
     }
-    ImageView mainImage = (ImageView) view.findViewById(R.id.answer_message_image);
+    ImageView mainImage = view.findViewById(R.id.answer_message_image);
     if (mainImage != null) {
       Glide.with(this)
           .load(getImageUri())
@@ -185,6 +193,7 @@
                     Target<Drawable> target,
                     DataSource dataSource,
                     boolean isFirstResource) {
+                  LogUtil.enterBlock("MultimediaFragment.onResourceReady");
                   view.findViewById(R.id.loading_spinner).setVisibility(View.GONE);
                   return false;
                 }
@@ -192,7 +201,7 @@
           .into(mainImage);
       mainImage.setClipToOutline(true);
     }
-    FrameLayout fragmentHolder = (FrameLayout) view.findViewById(R.id.answer_message_frag);
+    FrameLayout fragmentHolder = view.findViewById(R.id.answer_message_frag);
     if (fragmentHolder != null) {
       fragmentHolder.setClipToOutline(true);
       Fragment mapFragment =
@@ -202,7 +211,7 @@
           .replace(R.id.answer_message_frag, mapFragment)
           .commitNow();
     }
-    avatarImageView = ((ImageView) view.findViewById(R.id.answer_message_avatar));
+    avatarImageView = view.findViewById(R.id.answer_message_avatar);
     if (avatarImageView != null) {
       avatarImageView.setVisibility(showAvatar ? View.VISIBLE : View.GONE);
     }
diff --git a/java/com/android/incallui/sessiondata/res/layout/fragment_composer_image.xml b/java/com/android/incallui/sessiondata/res/layout/fragment_composer_image.xml
index ed29e78..3b3327d 100644
--- a/java/com/android/incallui/sessiondata/res/layout/fragment_composer_image.xml
+++ b/java/com/android/incallui/sessiondata/res/layout/fragment_composer_image.xml
@@ -24,8 +24,8 @@
 
   <ImageView
       android:id="@id/answer_message_image"
-      android:layout_width="match_parent"
-      android:layout_height="wrap_content"
+      android:layout_width="wrap_content"
+      android:layout_height="match_parent"
       android:layout_marginTop="@dimen/answer_message_contents_margin_top"
       android:layout_marginBottom="4dp"
       android:layout_centerInParent="true"
@@ -34,7 +34,7 @@
       android:background="@drawable/answer_data_background"
       android:elevation="@dimen/answer_data_elevation"
       android:adjustViewBounds="true"
-      android:scaleType="fitCenter"/>
+      android:scaleType="centerCrop"/>
 
   <ProgressBar
       android:layout_width="wrap_content"
diff --git a/java/com/android/incallui/sessiondata/res/layout/fragment_composer_text.xml b/java/com/android/incallui/sessiondata/res/layout/fragment_composer_text.xml
index d2147ea..b93db63 100644
--- a/java/com/android/incallui/sessiondata/res/layout/fragment_composer_text.xml
+++ b/java/com/android/incallui/sessiondata/res/layout/fragment_composer_text.xml
@@ -16,29 +16,34 @@
   -->
 
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:paddingTop="16dp"
     android:paddingStart="@dimen/answer_message_margin_start_end"
     android:paddingEnd="@dimen/answer_message_margin_start_end">
 
-  <TextView
+  <android.support.v7.widget.AppCompatTextView
       android:id="@id/answer_message_text"
-      android:layout_width="match_parent"
+      android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_marginTop="@dimen/answer_message_contents_margin_top"
       android:layout_marginBottom="4dp"
       android:layout_centerHorizontal="true"
       android:layout_alignTop="@+id/answer_message_avatar"
-      android:paddingTop="44dp"
-      android:paddingBottom="44dp"
-      android:paddingStart="18dp"
-      android:paddingEnd="18dp"
-      android:background="@drawable/answer_text_only_background"
       android:elevation="@dimen/answer_data_elevation"
-      android:gravity="center_horizontal"
+      android:gravity="center"
+      android:paddingTop="22dp"
+      android:paddingBottom="22dp"
+      android:paddingStart="32dp"
+      android:paddingEnd="32dp"
+      android:minHeight="108dp"
+      android:lineSpacingMultiplier="1.2"
       android:textColor="@color/background_dialer_white"
-      android:textAppearance="@style/Dialer.Incall.TextAppearance.Message"/>
+      android:textAppearance="@style/Dialer.Incall.TextAppearance.Message"
+      android:background="@drawable/answer_text_only_background"
+      app:autoSizeTextType="uniform"
+      app:autoSizeMaxTextSize="44sp"/>
 
   <ImageView
       android:id="@id/answer_message_avatar"
diff --git a/java/com/android/incallui/spam/SpamCallListListener.java b/java/com/android/incallui/spam/SpamCallListListener.java
index 547337e..b9c70eb 100644
--- a/java/com/android/incallui/spam/SpamCallListListener.java
+++ b/java/com/android/incallui/spam/SpamCallListListener.java
@@ -24,6 +24,7 @@
 import android.content.Intent;
 import android.graphics.drawable.Icon;
 import android.support.annotation.NonNull;
+import android.support.v4.os.BuildCompat;
 import android.telecom.DisconnectCause;
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
@@ -35,8 +36,7 @@
 import com.android.dialer.logging.ContactLookupResult;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
+import com.android.dialer.notification.NotificationChannelId;
 import com.android.dialer.spam.Spam;
 import com.android.incallui.R;
 import com.android.incallui.call.CallList;
@@ -49,9 +49,8 @@
  * etc).
  */
 public class SpamCallListListener implements CallList.Listener {
+  static final int NOTIFICATION_ID = 1;
 
-  static final int NOTIFICATION_ID = R.id.notification_spam_call;
-  private static final String TAG = "SpamCallListListener";
   private final Context context;
   private final Random random;
 
@@ -65,10 +64,6 @@
     this.random = rand;
   }
 
-  private static String pii(String pii) {
-    return com.android.incallui.Log.pii(pii);
-  }
-
   @Override
   public void onIncomingCall(final DialerCall call) {
     String number = call.getNumber();
@@ -127,7 +122,6 @@
     if (call.isSpam()) {
       maybeShowSpamCallNotification(call);
     } else {
-      LogUtil.d(TAG, "Showing not spam notification for number=" + pii(call.getNumber()));
       maybeShowNonSpamCallNotification(call);
     }
   }
@@ -161,7 +155,7 @@
     if (callHistoryStatus == DialerCall.CALL_HISTORY_STATUS_PRESENT) {
       return false;
     } else if (callHistoryStatus == DialerCall.CALL_HISTORY_STATUS_UNKNOWN) {
-      LogUtil.i(TAG, "DialerCall history status is unknown, returning false");
+      LogUtil.i("SpamCallListListener.shouldShowAfterCallNotification", "history status unknown");
       return false;
     }
 
@@ -171,7 +165,7 @@
       return false;
     }
 
-    LogUtil.i(TAG, "shouldShowAfterCallNotification, returning true");
+    LogUtil.i("SpamCallListListener.shouldShowAfterCallNotification", "returning true");
     return true;
   }
 
@@ -179,7 +173,7 @@
    * Creates a notification builder with properties common among the two after call notifications.
    */
   private Notification.Builder createAfterCallNotificationBuilder(DialerCall call) {
-    Builder builder =
+    Notification.Builder builder =
         new Builder(context)
             .setContentIntent(
                 createActivityPendingIntent(call, SpamNotificationActivity.ACTION_SHOW_DIALOG))
@@ -187,7 +181,9 @@
             .setPriority(Notification.PRIORITY_DEFAULT)
             .setColor(context.getColor(R.color.dialer_theme_color))
             .setSmallIcon(R.drawable.ic_call_end_white_24dp);
-    NotificationChannelManager.applyChannel(builder, context, Channel.DEFAULT, null);
+    if (BuildCompat.isAtLeastO()) {
+      builder.setChannelId(NotificationChannelId.DEFAULT);
+    }
     return builder;
   }
 
@@ -234,21 +230,20 @@
     int thresholdForShowing = Spam.get(context).percentOfSpamNotificationsToShow();
     if (thresholdForShowing == 0) {
       LogUtil.d(
-          TAG,
-          "shouldThrottleSpamNotification, not showing - percentOfSpamNotificationsToShow is 0");
+          "SpamCallListListener.shouldThrottleSpamNotification",
+          "not showing - percentOfSpamNotificationsToShow is 0");
       return true;
     } else if (randomNumber < thresholdForShowing) {
       LogUtil.d(
-          TAG,
-          "shouldThrottleSpamNotification, showing " + randomNumber + " < " + thresholdForShowing);
+          "SpamCallListListener.shouldThrottleSpamNotification",
+          "showing " + randomNumber + " < " + thresholdForShowing);
       return false;
     } else {
       LogUtil.d(
-          TAG,
-          "shouldThrottleSpamNotification, not showing "
-              + randomNumber
-              + " >= "
-              + thresholdForShowing);
+          "SpamCallListListener.shouldThrottleSpamNotification",
+          "not showing %d >= %d",
+          randomNumber,
+          thresholdForShowing);
       return true;
     }
   }
@@ -257,15 +252,23 @@
     int randomNumber = random.nextInt(100);
     int thresholdForShowing = Spam.get(context).percentOfNonSpamNotificationsToShow();
     if (thresholdForShowing == 0) {
-      LogUtil.d(TAG, "Not showing non spam notification: percentOfNonSpamNotificationsToShow is 0");
+      LogUtil.d(
+          "SpamCallListListener.shouldThrottleNonSpamNotification",
+          "not showing non spam notification: percentOfNonSpamNotificationsToShow is 0");
       return true;
     } else if (randomNumber < thresholdForShowing) {
       LogUtil.d(
-          TAG, "Showing non spam notification: " + randomNumber + " < " + thresholdForShowing);
+          "SpamCallListListener.shouldThrottleNonSpamNotification",
+          "showing non spam notification: %d < %d",
+          randomNumber,
+          thresholdForShowing);
       return false;
     } else {
       LogUtil.d(
-          TAG, "Not showing non spam notification:" + randomNumber + " >= " + thresholdForShowing);
+          "SpamCallListListener.shouldThrottleNonSpamNotification",
+          "not showing non spam notification: %d >= %d",
+          randomNumber,
+          thresholdForShowing);
       return true;
     }
   }
diff --git a/java/com/android/incallui/speakerbuttonlogic/AndroidManifest.xml b/java/com/android/incallui/speakerbuttonlogic/AndroidManifest.xml
new file mode 100644
index 0000000..9557d03
--- /dev/null
+++ b/java/com/android/incallui/speakerbuttonlogic/AndroidManifest.xml
@@ -0,0 +1,18 @@
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<manifest
+    package="com.android.incallui.speakerbuttonlogic">
+</manifest>
diff --git a/java/com/android/incallui/speakerbuttonlogic/SpeakerButtonInfo.java b/java/com/android/incallui/speakerbuttonlogic/SpeakerButtonInfo.java
new file mode 100644
index 0000000..5ab821b
--- /dev/null
+++ b/java/com/android/incallui/speakerbuttonlogic/SpeakerButtonInfo.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright (C) 2017 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.incallui.speakerbuttonlogic;
+
+import android.support.annotation.DrawableRes;
+import android.support.annotation.IntDef;
+import android.support.annotation.StringRes;
+import android.telecom.CallAudioState;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** Info about how a "Speaker" button should be displayed */
+public class SpeakerButtonInfo {
+
+  // Testing note: most of this is exercised in ReturnToCallTest.java
+
+  /** Preferred size for icons */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({IconSize.SIZE_24_DP, IconSize.SIZE_36_DP})
+  public @interface IconSize {
+    int SIZE_24_DP = 1;
+    int SIZE_36_DP = 2;
+  }
+
+  @DrawableRes public final int icon;
+  @StringRes public final int contentDescription;
+  @StringRes public final int label;
+  public final boolean checkable;
+  public final boolean isChecked;
+
+  public SpeakerButtonInfo(CallAudioState audioState, @IconSize int iconSize) {
+    if ((audioState.getSupportedRouteMask() & CallAudioState.ROUTE_BLUETOOTH)
+        == CallAudioState.ROUTE_BLUETOOTH) {
+      checkable = false;
+      isChecked = false;
+      label = R.string.incall_label_audio;
+
+      if ((audioState.getRoute() & CallAudioState.ROUTE_BLUETOOTH)
+          == CallAudioState.ROUTE_BLUETOOTH) {
+        icon =
+            iconSize == IconSize.SIZE_36_DP
+                ? R.drawable.quantum_ic_bluetooth_audio_white_36
+                : R.drawable.quantum_ic_bluetooth_audio_white_24;
+        contentDescription = R.string.incall_content_description_bluetooth;
+      } else if ((audioState.getRoute() & CallAudioState.ROUTE_SPEAKER)
+          == CallAudioState.ROUTE_SPEAKER) {
+        icon =
+            iconSize == IconSize.SIZE_36_DP
+                ? R.drawable.quantum_ic_volume_up_white_36
+                : R.drawable.quantum_ic_volume_up_white_24;
+        contentDescription = R.string.incall_content_description_speaker;
+      } else if ((audioState.getRoute() & CallAudioState.ROUTE_WIRED_HEADSET)
+          == CallAudioState.ROUTE_WIRED_HEADSET) {
+        icon =
+            iconSize == IconSize.SIZE_36_DP
+                ? R.drawable.quantum_ic_headset_white_36
+                : R.drawable.quantum_ic_headset_white_24;
+        contentDescription = R.string.incall_content_description_headset;
+      } else {
+        icon =
+            iconSize == IconSize.SIZE_36_DP
+                ? R.drawable.quantum_ic_phone_in_talk_white_36
+                : R.drawable.quantum_ic_phone_in_talk_white_24;
+        contentDescription = R.string.incall_content_description_earpiece;
+      }
+    } else {
+      checkable = true;
+      isChecked = audioState.getRoute() == CallAudioState.ROUTE_SPEAKER;
+      label = R.string.incall_label_speaker;
+      icon =
+          iconSize == IconSize.SIZE_36_DP
+              ? R.drawable.quantum_ic_volume_up_white_36
+              : R.drawable.quantum_ic_volume_up_white_24;
+      contentDescription = R.string.incall_content_description_speaker;
+    }
+  }
+}
diff --git a/java/com/android/incallui/video/impl/SpeakerButtonController.java b/java/com/android/incallui/video/impl/SpeakerButtonController.java
index e12032a..d98545f 100644
--- a/java/com/android/incallui/video/impl/SpeakerButtonController.java
+++ b/java/com/android/incallui/video/impl/SpeakerButtonController.java
@@ -88,7 +88,7 @@
         icon = R.drawable.quantum_ic_headset_white_36;
         contentDescriptionResId = R.string.incall_content_description_headset;
       } else {
-        icon = R.drawable.ic_phone_audio_white_36dp;
+        icon = R.drawable.quantum_ic_phone_in_talk_white_36;
         contentDescriptionResId = R.string.incall_content_description_earpiece;
       }
     } else {
diff --git a/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java b/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java
index b7a960e..489f72b 100644
--- a/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java
+++ b/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java
@@ -495,7 +495,7 @@
   }
 
   private View[] getAllPreviewRelatedViews() {
-    return new View[] {previewRoot};
+    return new View[] {previewRoot, mutePreviewOverlay};
   }
 
   private int getOffsetTop(View view) {
@@ -644,12 +644,6 @@
     updateVideoOffViews();
   }
 
-  /**
-   * This method scales the video feed inside the texture view, it doesn't change the texture view's
-   * size. In the old UI we would change the view size to match the aspect ratio of the video. In
-   * the new UI the view is always square (with the circular clip) so we have to do additional work
-   * to make sure the non-square video doesn't look squished.
-   */
   @Override
   public void onLocalVideoDimensionsChanged() {
     LogUtil.i("SurfaceViewVideoCallFragment.onLocalVideoDimensionsChanged", null);
@@ -834,6 +828,9 @@
   }
 
   @Override
+  public void onAudioRouteSelectorDismiss() {}
+
+  @Override
   public void setPrimary(@NonNull PrimaryInfo primaryInfo) {
     LogUtil.i("SurfaceViewVideoCallFragment.setPrimary", primaryInfo.toString());
     contactGridManager.setPrimary(primaryInfo);
diff --git a/java/com/android/incallui/video/impl/VideoCallFragment.java b/java/com/android/incallui/video/impl/VideoCallFragment.java
index 8e2f5ae..f9b5d45 100644
--- a/java/com/android/incallui/video/impl/VideoCallFragment.java
+++ b/java/com/android/incallui/video/impl/VideoCallFragment.java
@@ -59,6 +59,7 @@
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.FragmentUtils;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.ThreadUtil;
 import com.android.dialer.compat.ActivityCompat;
 import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment;
 import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment.AudioRouteSelectorPresenter;
@@ -99,8 +100,8 @@
   @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
   static final String ARG_CALL_ID = "call_id";
 
-  private static final float BLUR_PREVIEW_RADIUS = 16.0f;
-  private static final float BLUR_PREVIEW_SCALE_FACTOR = 1.0f;
+  @VisibleForTesting static final float BLUR_PREVIEW_RADIUS = 16.0f;
+  @VisibleForTesting static final float BLUR_PREVIEW_SCALE_FACTOR = 1.0f;
   private static final float BLUR_REMOTE_RADIUS = 25.0f;
   private static final float BLUR_REMOTE_SCALE_FACTOR = 0.25f;
   private static final float ASPECT_RATIO_MATCH_THRESHOLD = 0.2f;
@@ -121,6 +122,10 @@
           outline.setOval(x - radius, y - radius, x + radius, y + radius);
         }
       };
+
+  // Must use a named method reference as otherwise they do not match.
+  // https://stackoverflow.com/questions/28190304/two-exact-method-references-are-not-equal
+  private final Runnable updatePreviewVideoIfSafe = this::updatePreviewVideoScaling;
   private InCallScreenDelegate inCallScreenDelegate;
   private VideoCallScreenDelegate videoCallScreenDelegate;
   private InCallButtonUiDelegate inCallButtonUiDelegate;
@@ -349,6 +354,9 @@
     super.onPause();
     LogUtil.i("VideoCallFragment.onPause", null);
     inCallScreenDelegate.onInCallScreenPaused();
+
+    // If this is scheduled we should remove it
+    ThreadUtil.getUiThreadHandler().removeCallbacks(updatePreviewVideoIfSafe);
   }
 
   @Override
@@ -665,22 +673,14 @@
     updateRemoteVideoScaling();
   }
 
-  /**
-   * This method scales the video feed inside the texture view, it doesn't change the texture view's
-   * size. In the old UI we would change the view size to match the aspect ratio of the video. In
-   * the new UI the view is always square (with the circular clip) so we have to do additional work
-   * to make sure the non-square video doesn't look squished.
-   */
   @Override
   public void onLocalVideoDimensionsChanged() {
     LogUtil.i("VideoCallFragment.onLocalVideoDimensionsChanged", null);
-    updatePreviewVideoScaling();
   }
 
   @Override
   public void onLocalVideoOrientationChanged() {
     LogUtil.i("VideoCallFragment.onLocalVideoOrientationChanged", null);
-    updatePreviewVideoScaling();
   }
 
   /** Called when the remote video's dimensions change. */
@@ -853,6 +853,9 @@
   }
 
   @Override
+  public void onAudioRouteSelectorDismiss() {}
+
+  @Override
   public void setPrimary(@NonNull PrimaryInfo primaryInfo) {
     LogUtil.i("VideoCallFragment.setPrimary", primaryInfo.toString());
     contactGridManager.setPrimary(primaryInfo);
@@ -1045,7 +1048,6 @@
     params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
     previewTextureView.setLayoutParams(params);
     previewTextureView.setOutlineProvider(circleOutlineProvider);
-    updatePreviewVideoScaling();
     updateOverlayBackground();
     contactGridManager.setIsMiddleRowVisible(false);
     updateMutePreviewOverlayVisibility();
@@ -1053,6 +1055,9 @@
     previewOffBlurredImageView.setLayoutParams(params);
     previewOffBlurredImageView.setOutlineProvider(circleOutlineProvider);
     previewOffBlurredImageView.setClipToOutline(true);
+
+    // Wait until the layout pass has finished before updating the scaling
+    ThreadUtil.postOnUiThread(updatePreviewVideoIfSafe);
   }
 
   private void updateVideoOffViews() {
@@ -1101,52 +1106,58 @@
         BLUR_REMOTE_SCALE_FACTOR);
   }
 
-  private void updateBlurredImageView(
+  @VisibleForTesting
+  void updateBlurredImageView(
       TextureView textureView,
       ImageView blurredImageView,
       boolean isVideoEnabled,
       float blurRadius,
       float scaleFactor) {
-    boolean didBlur = false;
-    long startTimeMillis = SystemClock.elapsedRealtime();
-    if (!isVideoEnabled) {
-      int width = Math.round(textureView.getWidth() * scaleFactor);
-      int height = Math.round(textureView.getHeight() * scaleFactor);
-      // This call takes less than 10 milliseconds.
-      Bitmap bitmap = textureView.getBitmap(width, height);
-      if (bitmap != null) {
-        // TODO: When the view is first displayed after a rotation the bitmap is empty
-        // and thus this blur has no effect.
-        // This call can take 100 milliseconds.
-        blur(getContext(), bitmap, blurRadius);
+    Context context = getContext();
 
-        // TODO: Figure out why only have to apply the transform in landscape mode
-        if (width > height) {
-          bitmap =
-              Bitmap.createBitmap(
-                  bitmap,
-                  0,
-                  0,
-                  bitmap.getWidth(),
-                  bitmap.getHeight(),
-                  textureView.getTransform(null),
-                  true);
-        }
-
-        blurredImageView.setImageBitmap(bitmap);
-        blurredImageView.setVisibility(View.VISIBLE);
-        didBlur = true;
-      }
-    }
-    if (!didBlur) {
+    if (isVideoEnabled || context == null) {
       blurredImageView.setImageBitmap(null);
       blurredImageView.setVisibility(View.GONE);
+      return;
     }
 
+    long startTimeMillis = SystemClock.elapsedRealtime();
+    int width = Math.round(textureView.getWidth() * scaleFactor);
+    int height = Math.round(textureView.getHeight() * scaleFactor);
+
+    // This call takes less than 10 milliseconds.
+    Bitmap bitmap = textureView.getBitmap(width, height);
+
+    if (bitmap == null) {
+      blurredImageView.setImageBitmap(null);
+      blurredImageView.setVisibility(View.GONE);
+      return;
+    }
+
+    // TODO: When the view is first displayed after a rotation the bitmap is empty
+    // and thus this blur has no effect.
+    // This call can take 100 milliseconds.
+    blur(getContext(), bitmap, blurRadius);
+
+    // TODO: Figure out why only have to apply the transform in landscape mode
+    if (width > height) {
+      bitmap =
+          Bitmap.createBitmap(
+              bitmap,
+              0,
+              0,
+              bitmap.getWidth(),
+              bitmap.getHeight(),
+              textureView.getTransform(null),
+              true);
+    }
+
+    blurredImageView.setImageBitmap(bitmap);
+    blurredImageView.setVisibility(View.VISIBLE);
+
     LogUtil.i(
         "VideoCallFragment.updateBlurredImageView",
-        "didBlur: %b, took %d millis",
-        didBlur,
+        "took %d millis",
         (SystemClock.elapsedRealtime() - startTimeMillis));
   }
 
diff --git a/java/com/android/incallui/video/impl/res/layout/frag_videocall_surfaceview.xml b/java/com/android/incallui/video/impl/res/layout/frag_videocall_surfaceview.xml
index c672466..1a2bc24 100644
--- a/java/com/android/incallui/video/impl/res/layout/frag_videocall_surfaceview.xml
+++ b/java/com/android/incallui/video/impl/res/layout/frag_videocall_surfaceview.xml
@@ -14,7 +14,7 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
@@ -32,7 +32,7 @@
     android:id="@+id/videocall_remote_video_off"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
-    android:layout_gravity="center"
+    android:layout_centerInParent="true"
     android:accessibilityTraversalBefore="@+id/videocall_speaker_button"
     android:drawablePadding="8dp"
     android:drawableTop="@drawable/quantum_ic_videocam_off_white_36"
@@ -71,20 +71,23 @@
       android:visibility="gone"
       android:importantForAccessibility="no"
       tools:visibility="visible"/>
-
-    <ImageView
-      android:id="@+id/videocall_video_preview_mute_overlay"
-      android:layout_width="32dp"
-      android:layout_height="32dp"
-      android:layout_gravity="center"
-      android:background="@drawable/videocall_background_circle_white"
-      android:contentDescription="@string/incall_content_description_muted"
-      android:scaleType="center"
-      android:src="@drawable/quantum_ic_mic_off_black_24"
-      android:visibility="gone"
-      tools:visibility="visible"/>
   </FrameLayout>
 
+  <ImageView
+    android:id="@+id/videocall_video_preview_mute_overlay"
+    android:layout_width="32dp"
+    android:layout_height="32dp"
+    android:layout_alignBottom="@id/videocall_preview_root"
+    android:layout_alignEnd="@id/videocall_preview_root"
+    android:layout_marginBottom="-8dp"
+    android:layout_marginEnd="-8dp"
+    android:background="@drawable/videocall_background_circle_white"
+    android:contentDescription="@string/incall_content_description_muted"
+    android:scaleType="center"
+    android:src="@drawable/quantum_ic_mic_off_black_24"
+    android:visibility="gone"
+    tools:visibility="visible"/>
+
   <View
     android:id="@+id/videocall_green_screen_background"
     android:layout_width="match_parent"
@@ -102,4 +105,4 @@
     android:layout_height="wrap_content"
     android:layout_gravity="top"/>
 
-</FrameLayout>
+</RelativeLayout>
diff --git a/java/com/android/incallui/video/impl/res/values-h580dp/dimens.xml b/java/com/android/incallui/video/impl/res/values-h580dp/dimens.xml
index a53fb64..e9e7f9e 100644
--- a/java/com/android/incallui/video/impl/res/values-h580dp/dimens.xml
+++ b/java/com/android/incallui/video/impl/res/values-h580dp/dimens.xml
@@ -19,5 +19,5 @@
   <dimen name="videocall_button_size">72dp</dimen>
   <dimen name="videocall_preview_width">88dp</dimen>
   <dimen name="videocall_preview_height">88dp</dimen>
-  <dimen name="videocall_preview_long">104dp</dimen>
+  <dimen name="videocall_preview_long">116dp</dimen>
 </resources>
diff --git a/java/com/android/incallui/video/impl/res/values-land/dimens.xml b/java/com/android/incallui/video/impl/res/values-land/dimens.xml
index 6485735..d0a5e40 100644
--- a/java/com/android/incallui/video/impl/res/values-land/dimens.xml
+++ b/java/com/android/incallui/video/impl/res/values-land/dimens.xml
@@ -15,5 +15,5 @@
   ~ limitations under the License
   -->
 <resources>
-  <dimen name="videocall_preview_long">92dp</dimen>
+  <dimen name="videocall_preview_long">96dp</dimen>
 </resources>
diff --git a/java/com/android/incallui/video/impl/res/values-land/styles.xml b/java/com/android/incallui/video/impl/res/values-land/styles.xml
index a809708..f60dbd1 100644
--- a/java/com/android/incallui/video/impl/res/values-land/styles.xml
+++ b/java/com/android/incallui/video/impl/res/values-land/styles.xml
@@ -16,7 +16,8 @@
   -->
 <resources>
   <style name="VideoPreviewHolder">
-    <item name="android:layout_gravity">bottom|end</item>
+    <item name="android:layout_alignParentBottom">true</item>
+    <item name="android:layout_alignParentEnd">true</item>
     <item name="android:layout_width">@dimen/videocall_preview_long</item>
     <item name="android:layout_height">@dimen/videocall_preview_height</item>
     <item name="android:layout_marginBottom">@dimen/videocall_preview_margin_bottom</item>
diff --git a/java/com/android/incallui/video/impl/res/values-w460dp/dimens.xml b/java/com/android/incallui/video/impl/res/values-w460dp/dimens.xml
index a53fb64..e9e7f9e 100644
--- a/java/com/android/incallui/video/impl/res/values-w460dp/dimens.xml
+++ b/java/com/android/incallui/video/impl/res/values-w460dp/dimens.xml
@@ -19,5 +19,5 @@
   <dimen name="videocall_button_size">72dp</dimen>
   <dimen name="videocall_preview_width">88dp</dimen>
   <dimen name="videocall_preview_height">88dp</dimen>
-  <dimen name="videocall_preview_long">104dp</dimen>
+  <dimen name="videocall_preview_long">116dp</dimen>
 </resources>
diff --git a/java/com/android/incallui/video/impl/res/values/dimens.xml b/java/com/android/incallui/video/impl/res/values/dimens.xml
index aa08c9d..606b158 100644
--- a/java/com/android/incallui/video/impl/res/values/dimens.xml
+++ b/java/com/android/incallui/video/impl/res/values/dimens.xml
@@ -17,7 +17,7 @@
 <resources>
   <dimen name="videocall_preview_width">72dp</dimen>
   <dimen name="videocall_preview_height">72dp</dimen>
-  <dimen name="videocall_preview_long">84dp</dimen>
+  <dimen name="videocall_preview_long">96dp</dimen>
   <dimen name="videocall_preview_margin_bottom">24dp</dimen>
   <dimen name="videocall_preview_margin_start">24dp</dimen>
   <dimen name="videocall_preview_margin_end">24dp</dimen>
diff --git a/java/com/android/incallui/video/impl/res/values/styles.xml b/java/com/android/incallui/video/impl/res/values/styles.xml
index f73075f..010aca2 100644
--- a/java/com/android/incallui/video/impl/res/values/styles.xml
+++ b/java/com/android/incallui/video/impl/res/values/styles.xml
@@ -23,7 +23,8 @@
     <item name="android:stateListAnimator">@animator/disabled_alpha</item>
   </style>
   <style name="VideoPreviewHolder">
-    <item name="android:layout_gravity">bottom|start</item>
+    <item name="android:layout_alignParentBottom">true</item>
+    <item name="android:layout_alignParentStart">true</item>
     <item name="android:layout_width">@dimen/videocall_preview_width</item>
     <item name="android:layout_height">@dimen/videocall_preview_long</item>
     <item name="android:layout_marginBottom">@dimen/videocall_preview_margin_bottom</item>
diff --git a/java/com/android/incallui/videotech/VideoTech.java b/java/com/android/incallui/videotech/VideoTech.java
index 7da74c0..34c3e2c 100644
--- a/java/com/android/incallui/videotech/VideoTech.java
+++ b/java/com/android/incallui/videotech/VideoTech.java
@@ -17,6 +17,7 @@
 package com.android.incallui.videotech;
 
 import android.content.Context;
+import android.support.annotation.Nullable;
 import com.android.incallui.video.protocol.VideoCallScreen;
 import com.android.incallui.video.protocol.VideoCallScreenDelegate;
 import com.android.incallui.videotech.utils.SessionModificationState;
@@ -41,6 +42,8 @@
 
   void onCallStateChanged(Context context, int newState);
 
+  void onRemovedFromCallList();
+
   @SessionModificationState
   int getSessionModificationState();
 
@@ -62,7 +65,7 @@
 
   void unpause();
 
-  void setCamera(String cameraId);
+  void setCamera(@Nullable String cameraId);
 
   void setDeviceOrientation(int rotation);
 
diff --git a/java/com/android/incallui/videotech/empty/EmptyVideoTech.java b/java/com/android/incallui/videotech/empty/EmptyVideoTech.java
index d0a111d..85eb64e 100644
--- a/java/com/android/incallui/videotech/empty/EmptyVideoTech.java
+++ b/java/com/android/incallui/videotech/empty/EmptyVideoTech.java
@@ -17,6 +17,7 @@
 package com.android.incallui.videotech.empty;
 
 import android.content.Context;
+import android.support.annotation.Nullable;
 import com.android.dialer.common.Assert;
 import com.android.incallui.video.protocol.VideoCallScreen;
 import com.android.incallui.video.protocol.VideoCallScreenDelegate;
@@ -56,6 +57,9 @@
   public void onCallStateChanged(Context context, int newState) {}
 
   @Override
+  public void onRemovedFromCallList() {}
+
+  @Override
   public int getSessionModificationState() {
     return SessionModificationState.NO_REQUEST;
   }
@@ -90,7 +94,7 @@
   public void unpause() {}
 
   @Override
-  public void setCamera(String cameraId) {}
+  public void setCamera(@Nullable String cameraId) {}
 
   @Override
   public void setDeviceOrientation(int rotation) {}
diff --git a/java/com/android/incallui/videotech/ims/ImsVideoCallCallback.java b/java/com/android/incallui/videotech/ims/ImsVideoCallCallback.java
index 17c2e65..b839293 100644
--- a/java/com/android/incallui/videotech/ims/ImsVideoCallCallback.java
+++ b/java/com/android/incallui/videotech/ims/ImsVideoCallCallback.java
@@ -161,6 +161,13 @@
     }
   }
 
+  // In the vendor code rx_pause and rx_resume get triggered when the video player starts or stops
+  // playing the incoming video stream.  For the case where you're resuming a held call, its
+  // definitely a good signal to use to know that the video is resuming (though the video state
+  // should change to indicate its not paused in this case as well).  However, keep in mind you'll
+  // get these signals as well on carriers that don't support the video pause signalling (like TMO)
+  // so you want to ensure you don't send sessionModifyRequests with pause/resume based on these
+  // signals. Also, its technically possible to have a pause/resume if the video signal degrades.
   @Override
   public void onCallSessionEvent(int event) {
     switch (event) {
diff --git a/java/com/android/incallui/videotech/ims/ImsVideoTech.java b/java/com/android/incallui/videotech/ims/ImsVideoTech.java
index 01e4bb8..8fa983a 100644
--- a/java/com/android/incallui/videotech/ims/ImsVideoTech.java
+++ b/java/com/android/incallui/videotech/ims/ImsVideoTech.java
@@ -18,6 +18,7 @@
 
 import android.content.Context;
 import android.os.Build;
+import android.support.annotation.Nullable;
 import android.telecom.Call;
 import android.telecom.Call.Details;
 import android.telecom.VideoProfile;
@@ -25,6 +26,7 @@
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.LoggingBindings;
+import com.android.dialer.util.CallUtil;
 import com.android.incallui.video.protocol.VideoCallScreen;
 import com.android.incallui.video.protocol.VideoCallScreenDelegate;
 import com.android.incallui.videotech.VideoTech;
@@ -41,6 +43,12 @@
   private int previousVideoState = VideoProfile.STATE_AUDIO_ONLY;
   private boolean paused = false;
 
+  // Hold onto a flag of whether or not stopTransmission was called but resumeTransmission has not
+  // been. This is needed because there is time between calling stopTransmission and
+  // call.getDetails().getVideoState() reflecting the change. During that time, pause() and
+  // unpause() will send the incorrect VideoProfile.
+  private boolean transmissionStopped = false;
+
   public ImsVideoTech(LoggingBindings logger, VideoTechListener listener, Call call) {
     this.logger = logger;
     this.listener = listener;
@@ -53,12 +61,31 @@
       return false;
     }
 
-    boolean hasCapabilities =
-        call.getDetails().can(Call.Details.CAPABILITY_SUPPORTS_VT_LOCAL_TX)
-            && call.getDetails().can(Call.Details.CAPABILITY_SUPPORTS_VT_REMOTE_RX);
+    if (call.getVideoCall() == null) {
+      return false;
+    }
 
-    return call.getVideoCall() != null
-        && (hasCapabilities || VideoProfile.isVideo(call.getDetails().getVideoState()));
+    // We are already in an IMS video call
+    if (VideoProfile.isVideo(call.getDetails().getVideoState())) {
+      return true;
+    }
+
+    // The user has disabled IMS video calling in system settings
+    if (!CallUtil.isVideoEnabled(context)) {
+      return false;
+    }
+
+    // The current call doesn't support transmitting video
+    if (!call.getDetails().can(Call.Details.CAPABILITY_SUPPORTS_VT_LOCAL_TX)) {
+      return false;
+    }
+
+    // The current call remote device doesn't support receiving video
+    if (!call.getDetails().can(Call.Details.CAPABILITY_SUPPORTS_VT_REMOTE_RX)) {
+      return false;
+    }
+
+    return true;
   }
 
   @Override
@@ -120,6 +147,9 @@
   }
 
   @Override
+  public void onRemovedFromCallList() {}
+
+  @Override
   public int getSessionModificationState() {
     return sessionModificationState;
   }
@@ -183,7 +213,7 @@
   public void stopTransmission() {
     LogUtil.enterBlock("ImsVideoTech.stopTransmission");
 
-    setCamera(null);
+    transmissionStopped = true;
 
     int unpausedVideoState = getUnpausedVideoState(call.getDetails().getVideoState());
     call.getVideoCall()
@@ -195,6 +225,8 @@
   public void resumeTransmission() {
     LogUtil.enterBlock("ImsVideoTech.resumeTransmission");
 
+    transmissionStopped = false;
+
     int unpausedVideoState = getUnpausedVideoState(call.getDetails().getVideoState());
     call.getVideoCall()
         .sendSessionModifyRequest(
@@ -208,6 +240,10 @@
       LogUtil.i("ImsVideoTech.pause", "sending pause request");
       paused = true;
       int pausedVideoState = call.getDetails().getVideoState() | VideoProfile.STATE_PAUSED;
+      if (transmissionStopped && VideoProfile.isTransmissionEnabled(pausedVideoState)) {
+        LogUtil.i("ImsVideoTech.pause", "overriding TX to false due to user request");
+        pausedVideoState &= ~VideoProfile.STATE_TX_ENABLED;
+      }
       call.getVideoCall().sendSessionModifyRequest(new VideoProfile(pausedVideoState));
     } else {
       LogUtil.i(
@@ -224,6 +260,10 @@
       LogUtil.i("ImsVideoTech.unpause", "sending unpause request");
       paused = false;
       int unpausedVideoState = getUnpausedVideoState(call.getDetails().getVideoState());
+      if (transmissionStopped && VideoProfile.isTransmissionEnabled(unpausedVideoState)) {
+        LogUtil.i("ImsVideoTech.unpause", "overriding TX to false due to user request");
+        unpausedVideoState &= ~VideoProfile.STATE_TX_ENABLED;
+      }
       call.getVideoCall().sendSessionModifyRequest(new VideoProfile(unpausedVideoState));
     } else {
       LogUtil.i(
@@ -235,7 +275,7 @@
   }
 
   @Override
-  public void setCamera(String cameraId) {
+  public void setCamera(@Nullable String cameraId) {
     call.getVideoCall().setCamera(cameraId);
     call.getVideoCall().requestCameraCapabilities();
   }
@@ -248,7 +288,7 @@
   private boolean canPause() {
     return call.getDetails().can(Details.CAPABILITY_CAN_PAUSE_VIDEO)
         && call.getState() == Call.STATE_ACTIVE
-        && isTransmitting();
+        && isTransmittingOrReceiving();
   }
 
   static int getUnpausedVideoState(int videoState) {
diff --git a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java
index e49d0b8..55ee2db 100644
--- a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java
+++ b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java
@@ -17,9 +17,13 @@
 package com.android.incallui.videotech.lightbringer;
 
 import android.content.Context;
+import android.os.Build;
 import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
 import android.telecom.Call;
+import com.android.contacts.common.compat.telecom.TelecomManagerCompat;
 import com.android.dialer.common.Assert;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.lightbringer.Lightbringer;
 import com.android.dialer.lightbringer.LightbringerListener;
 import com.android.incallui.video.protocol.VideoCallScreen;
@@ -30,15 +34,18 @@
 public class LightbringerTech implements VideoTech, LightbringerListener {
   private final Lightbringer lightbringer;
   private final VideoTechListener listener;
+  private final Call call;
   private final String callingNumber;
   private int callState = Call.STATE_NEW;
 
   public LightbringerTech(
       @NonNull Lightbringer lightbringer,
       @NonNull VideoTechListener listener,
+      @NonNull Call call,
       @NonNull String callingNumber) {
     this.lightbringer = Assert.isNotNull(lightbringer);
     this.listener = Assert.isNotNull(listener);
+    this.call = Assert.isNotNull(call);
     this.callingNumber = Assert.isNotNull(callingNumber);
 
     lightbringer.registerListener(this);
@@ -46,7 +53,11 @@
 
   @Override
   public boolean isAvailable(Context context) {
-    return callState == Call.STATE_ACTIVE && lightbringer.isReachable(context, callingNumber);
+    return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O
+        && ConfigProviderBindings.get(context).getBoolean("enable_lightbringer_video_upgrade", true)
+        && callState == Call.STATE_ACTIVE
+        && lightbringer.supportsUpgrade(context, callingNumber)
+        && TelecomManagerCompat.supportsHandover();
   }
 
   @Override
@@ -80,13 +91,16 @@
   }
 
   @Override
+  public void onRemovedFromCallList() {}
+
+  @Override
   public int getSessionModificationState() {
     return SessionModificationState.NO_REQUEST;
   }
 
   @Override
   public void upgradeToVideo() {
-    // TODO: upgrade to a video call
+    lightbringer.requestUpgrade(call);
   }
 
   @Override
@@ -120,17 +134,13 @@
   }
 
   @Override
-  public void pause() {
-    throw Assert.createUnsupportedOperationFailException();
-  }
+  public void pause() {}
 
   @Override
-  public void unpause() {
-    throw Assert.createUnsupportedOperationFailException();
-  }
+  public void unpause() {}
 
   @Override
-  public void setCamera(String cameraId) {
+  public void setCamera(@Nullable String cameraId) {
     throw Assert.createUnsupportedOperationFailException();
   }
 
diff --git a/java/com/android/incallui/wifi/AndroidManifest.xml b/java/com/android/incallui/wifi/AndroidManifest.xml
deleted file mode 100644
index 843f8f3..0000000
--- a/java/com/android/incallui/wifi/AndroidManifest.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<manifest
-  package="com.android.incallui.wifi">
-</manifest>
diff --git a/java/com/android/incallui/wifi/EnableWifiCallingPrompt.java b/java/com/android/incallui/wifi/EnableWifiCallingPrompt.java
deleted file mode 100644
index 85603bf..0000000
--- a/java/com/android/incallui/wifi/EnableWifiCallingPrompt.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Copyright (C) 2017 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.incallui.wifi;
-
-import android.app.AlertDialog;
-import android.app.Dialog;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.content.DialogInterface.OnClickListener;
-import android.content.Intent;
-import android.support.annotation.NonNull;
-import android.telecom.DisconnectCause;
-import android.util.Pair;
-import com.android.dialer.common.Assert;
-import com.android.dialer.common.LogUtil;
-
-/** Prompts the user to enable Wi-Fi calling. */
-public class EnableWifiCallingPrompt {
-  // This is a hidden constant in android.telecom.DisconnectCause. Telecom sets this as a disconnect
-  // reason if it wants us to prompt the user to enable Wi-Fi calling. In Android-O we might
-  // consider using a more explicit way to signal this.
-  private static final String REASON_WIFI_ON_BUT_WFC_OFF = "REASON_WIFI_ON_BUT_WFC_OFF";
-  private static final String ACTION_WIFI_CALLING_SETTINGS =
-      "android.settings.WIFI_CALLING_SETTINGS";
-  private static final String ANDROID_SETTINGS_PACKAGE = "com.android.settings";
-
-  public static boolean shouldShowPrompt(@NonNull DisconnectCause cause) {
-    Assert.isNotNull(cause);
-    if (cause.getReason() != null && cause.getReason().startsWith(REASON_WIFI_ON_BUT_WFC_OFF)) {
-      LogUtil.i(
-          "EnableWifiCallingPrompt.shouldShowPrompt",
-          "showing prompt for disconnect cause: %s",
-          cause);
-      return true;
-    }
-    return false;
-  }
-
-  @NonNull
-  public static Pair<Dialog, CharSequence> createDialog(
-      final @NonNull Context context, @NonNull DisconnectCause cause) {
-    Assert.isNotNull(context);
-    Assert.isNotNull(cause);
-    CharSequence message = cause.getDescription();
-    Dialog dialog =
-        new AlertDialog.Builder(context)
-            .setMessage(message)
-            .setPositiveButton(
-                R.string.incall_enable_wifi_calling_button,
-                new OnClickListener() {
-                  @Override
-                  public void onClick(DialogInterface dialog, int which) {
-                    openWifiCallingSettings(context);
-                  }
-                })
-            .setNegativeButton(android.R.string.cancel, null)
-            .create();
-    return new Pair<Dialog, CharSequence>(dialog, message);
-  }
-
-  private static void openWifiCallingSettings(@NonNull Context context) {
-    LogUtil.i("EnableWifiCallingPrompt.openWifiCallingSettings", "opening settings");
-    context.startActivity(
-        new Intent(ACTION_WIFI_CALLING_SETTINGS).setPackage(ANDROID_SETTINGS_PACKAGE));
-  }
-
-  private EnableWifiCallingPrompt() {}
-}
diff --git a/java/com/android/incallui/wifi/res/values-af/strings.xml b/java/com/android/incallui/wifi/res/values-af/strings.xml
deleted file mode 100644
index d9df5c6..0000000
--- a/java/com/android/incallui/wifi/res/values-af/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Aktiveer"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-am/strings.xml b/java/com/android/incallui/wifi/res/values-am/strings.xml
deleted file mode 100644
index 1aa5673..0000000
--- a/java/com/android/incallui/wifi/res/values-am/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"አንቃ"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ar/strings.xml b/java/com/android/incallui/wifi/res/values-ar/strings.xml
deleted file mode 100644
index 972cd37..0000000
--- a/java/com/android/incallui/wifi/res/values-ar/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"تمكين"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-az/strings.xml b/java/com/android/incallui/wifi/res/values-az/strings.xml
deleted file mode 100644
index 46bbda1..0000000
--- a/java/com/android/incallui/wifi/res/values-az/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Aktiv edin"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/wifi/res/values-b+sr+Latn/strings.xml
deleted file mode 100644
index 51a57e4..0000000
--- a/java/com/android/incallui/wifi/res/values-b+sr+Latn/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Omogući"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-be/strings.xml b/java/com/android/incallui/wifi/res/values-be/strings.xml
deleted file mode 100644
index a8277a1..0000000
--- a/java/com/android/incallui/wifi/res/values-be/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Уключыць"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-bg/strings.xml b/java/com/android/incallui/wifi/res/values-bg/strings.xml
deleted file mode 100644
index ff5b94d..0000000
--- a/java/com/android/incallui/wifi/res/values-bg/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Активиране"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-bn/strings.xml b/java/com/android/incallui/wifi/res/values-bn/strings.xml
deleted file mode 100644
index 94e84c3..0000000
--- a/java/com/android/incallui/wifi/res/values-bn/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"সক্ষম করুন"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-bs/strings.xml b/java/com/android/incallui/wifi/res/values-bs/strings.xml
deleted file mode 100644
index 51a57e4..0000000
--- a/java/com/android/incallui/wifi/res/values-bs/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Omogući"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ca/strings.xml b/java/com/android/incallui/wifi/res/values-ca/strings.xml
deleted file mode 100644
index 8af77c9..0000000
--- a/java/com/android/incallui/wifi/res/values-ca/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Activa"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-cs/strings.xml b/java/com/android/incallui/wifi/res/values-cs/strings.xml
deleted file mode 100644
index b057d1c..0000000
--- a/java/com/android/incallui/wifi/res/values-cs/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Zapnout"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-da/strings.xml b/java/com/android/incallui/wifi/res/values-da/strings.xml
deleted file mode 100644
index 81f837f..0000000
--- a/java/com/android/incallui/wifi/res/values-da/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Aktivér"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-de/strings.xml b/java/com/android/incallui/wifi/res/values-de/strings.xml
deleted file mode 100644
index d6dda7e..0000000
--- a/java/com/android/incallui/wifi/res/values-de/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Aktivieren"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-el/strings.xml b/java/com/android/incallui/wifi/res/values-el/strings.xml
deleted file mode 100644
index c181743..0000000
--- a/java/com/android/incallui/wifi/res/values-el/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Ενεργοποίηση"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-en-rAU/strings.xml b/java/com/android/incallui/wifi/res/values-en-rAU/strings.xml
deleted file mode 100644
index 6877c49..0000000
--- a/java/com/android/incallui/wifi/res/values-en-rAU/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Enable"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-en-rGB/strings.xml b/java/com/android/incallui/wifi/res/values-en-rGB/strings.xml
deleted file mode 100644
index 6877c49..0000000
--- a/java/com/android/incallui/wifi/res/values-en-rGB/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Enable"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-en-rIN/strings.xml b/java/com/android/incallui/wifi/res/values-en-rIN/strings.xml
deleted file mode 100644
index 6877c49..0000000
--- a/java/com/android/incallui/wifi/res/values-en-rIN/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Enable"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-es-rUS/strings.xml b/java/com/android/incallui/wifi/res/values-es-rUS/strings.xml
deleted file mode 100644
index f460251..0000000
--- a/java/com/android/incallui/wifi/res/values-es-rUS/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Habilitar"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-es/strings.xml b/java/com/android/incallui/wifi/res/values-es/strings.xml
deleted file mode 100644
index f460251..0000000
--- a/java/com/android/incallui/wifi/res/values-es/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Habilitar"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-et/strings.xml b/java/com/android/incallui/wifi/res/values-et/strings.xml
deleted file mode 100644
index ae447bd..0000000
--- a/java/com/android/incallui/wifi/res/values-et/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Luba"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-eu/strings.xml b/java/com/android/incallui/wifi/res/values-eu/strings.xml
deleted file mode 100644
index 557bdfb..0000000
--- a/java/com/android/incallui/wifi/res/values-eu/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Gaitu"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-fa/strings.xml b/java/com/android/incallui/wifi/res/values-fa/strings.xml
deleted file mode 100644
index a1bf8da..0000000
--- a/java/com/android/incallui/wifi/res/values-fa/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"فعال کردن"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-fi/strings.xml b/java/com/android/incallui/wifi/res/values-fi/strings.xml
deleted file mode 100644
index 06aac1d..0000000
--- a/java/com/android/incallui/wifi/res/values-fi/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Ota käyttöön"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-fr-rCA/strings.xml b/java/com/android/incallui/wifi/res/values-fr-rCA/strings.xml
deleted file mode 100644
index ff7bc8b..0000000
--- a/java/com/android/incallui/wifi/res/values-fr-rCA/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Activer"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-fr/strings.xml b/java/com/android/incallui/wifi/res/values-fr/strings.xml
deleted file mode 100644
index ff7bc8b..0000000
--- a/java/com/android/incallui/wifi/res/values-fr/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Activer"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-gl/strings.xml b/java/com/android/incallui/wifi/res/values-gl/strings.xml
deleted file mode 100644
index eb6e939..0000000
--- a/java/com/android/incallui/wifi/res/values-gl/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Activar"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-gu/strings.xml b/java/com/android/incallui/wifi/res/values-gu/strings.xml
deleted file mode 100644
index 39b9849..0000000
--- a/java/com/android/incallui/wifi/res/values-gu/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"સક્ષમ કરો"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-hi/strings.xml b/java/com/android/incallui/wifi/res/values-hi/strings.xml
deleted file mode 100644
index f6c6b78..0000000
--- a/java/com/android/incallui/wifi/res/values-hi/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"सक्षम करें"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-hr/strings.xml b/java/com/android/incallui/wifi/res/values-hr/strings.xml
deleted file mode 100644
index 51a57e4..0000000
--- a/java/com/android/incallui/wifi/res/values-hr/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Omogući"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-hu/strings.xml b/java/com/android/incallui/wifi/res/values-hu/strings.xml
deleted file mode 100644
index c1daa24..0000000
--- a/java/com/android/incallui/wifi/res/values-hu/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Engedélyezés"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-hy/strings.xml b/java/com/android/incallui/wifi/res/values-hy/strings.xml
deleted file mode 100644
index e9390bd..0000000
--- a/java/com/android/incallui/wifi/res/values-hy/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Միացնել"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-in/strings.xml b/java/com/android/incallui/wifi/res/values-in/strings.xml
deleted file mode 100644
index c6ed43c..0000000
--- a/java/com/android/incallui/wifi/res/values-in/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Aktifkan"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-is/strings.xml b/java/com/android/incallui/wifi/res/values-is/strings.xml
deleted file mode 100644
index 03316aa..0000000
--- a/java/com/android/incallui/wifi/res/values-is/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Kveikja"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-it/strings.xml b/java/com/android/incallui/wifi/res/values-it/strings.xml
deleted file mode 100644
index d53ccdc..0000000
--- a/java/com/android/incallui/wifi/res/values-it/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Abilita"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-iw/strings.xml b/java/com/android/incallui/wifi/res/values-iw/strings.xml
deleted file mode 100644
index c624f64..0000000
--- a/java/com/android/incallui/wifi/res/values-iw/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"הפעל"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ja/strings.xml b/java/com/android/incallui/wifi/res/values-ja/strings.xml
deleted file mode 100644
index e918153..0000000
--- a/java/com/android/incallui/wifi/res/values-ja/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"有効にする"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ka/strings.xml b/java/com/android/incallui/wifi/res/values-ka/strings.xml
deleted file mode 100644
index bd778d5..0000000
--- a/java/com/android/incallui/wifi/res/values-ka/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"ჩართვა"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-kk/strings.xml b/java/com/android/incallui/wifi/res/values-kk/strings.xml
deleted file mode 100644
index c0c62a4..0000000
--- a/java/com/android/incallui/wifi/res/values-kk/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Қосу"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-km/strings.xml b/java/com/android/incallui/wifi/res/values-km/strings.xml
deleted file mode 100644
index 73f194f..0000000
--- a/java/com/android/incallui/wifi/res/values-km/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"បើក"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-kn/strings.xml b/java/com/android/incallui/wifi/res/values-kn/strings.xml
deleted file mode 100644
index 2f776cf..0000000
--- a/java/com/android/incallui/wifi/res/values-kn/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"ಸಕ್ರಿಯಗೊಳಿಸಿ"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ko/strings.xml b/java/com/android/incallui/wifi/res/values-ko/strings.xml
deleted file mode 100644
index 354efe6..0000000
--- a/java/com/android/incallui/wifi/res/values-ko/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"사용"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ky/strings.xml b/java/com/android/incallui/wifi/res/values-ky/strings.xml
deleted file mode 100644
index 6cf39db..0000000
--- a/java/com/android/incallui/wifi/res/values-ky/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Иштетүү"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-lo/strings.xml b/java/com/android/incallui/wifi/res/values-lo/strings.xml
deleted file mode 100644
index a34d48e..0000000
--- a/java/com/android/incallui/wifi/res/values-lo/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"ເປິດນຳໃຊ້"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-lt/strings.xml b/java/com/android/incallui/wifi/res/values-lt/strings.xml
deleted file mode 100644
index b473b2d..0000000
--- a/java/com/android/incallui/wifi/res/values-lt/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Įgalinti"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-lv/strings.xml b/java/com/android/incallui/wifi/res/values-lv/strings.xml
deleted file mode 100644
index 6704846..0000000
--- a/java/com/android/incallui/wifi/res/values-lv/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Iespējot"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-mk/strings.xml b/java/com/android/incallui/wifi/res/values-mk/strings.xml
deleted file mode 100644
index 30e6e84..0000000
--- a/java/com/android/incallui/wifi/res/values-mk/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Овозможи"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ml/strings.xml b/java/com/android/incallui/wifi/res/values-ml/strings.xml
deleted file mode 100644
index d20daa1..0000000
--- a/java/com/android/incallui/wifi/res/values-ml/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"പ്രവർത്തനക്ഷമമാക്കുക"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-mn/strings.xml b/java/com/android/incallui/wifi/res/values-mn/strings.xml
deleted file mode 100644
index a0b6bb4..0000000
--- a/java/com/android/incallui/wifi/res/values-mn/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Идэвхжүүлэх"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-mr/strings.xml b/java/com/android/incallui/wifi/res/values-mr/strings.xml
deleted file mode 100644
index e45dda1..0000000
--- a/java/com/android/incallui/wifi/res/values-mr/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"सक्षम करा"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ms/strings.xml b/java/com/android/incallui/wifi/res/values-ms/strings.xml
deleted file mode 100644
index d87f96c..0000000
--- a/java/com/android/incallui/wifi/res/values-ms/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Dayakan"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-my/strings.xml b/java/com/android/incallui/wifi/res/values-my/strings.xml
deleted file mode 100644
index 93fba1c..0000000
--- a/java/com/android/incallui/wifi/res/values-my/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"ဖွင့်ရန်"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-nb/strings.xml b/java/com/android/incallui/wifi/res/values-nb/strings.xml
deleted file mode 100644
index 0afafec..0000000
--- a/java/com/android/incallui/wifi/res/values-nb/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Slå på"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ne/strings.xml b/java/com/android/incallui/wifi/res/values-ne/strings.xml
deleted file mode 100644
index 0f15de7..0000000
--- a/java/com/android/incallui/wifi/res/values-ne/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"सक्षम पार्नुहोस्"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-nl/strings.xml b/java/com/android/incallui/wifi/res/values-nl/strings.xml
deleted file mode 100644
index 4fed4b3..0000000
--- a/java/com/android/incallui/wifi/res/values-nl/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Inschakelen"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-no/strings.xml b/java/com/android/incallui/wifi/res/values-no/strings.xml
deleted file mode 100644
index 0afafec..0000000
--- a/java/com/android/incallui/wifi/res/values-no/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Slå på"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-pa/strings.xml b/java/com/android/incallui/wifi/res/values-pa/strings.xml
deleted file mode 100644
index 3397491..0000000
--- a/java/com/android/incallui/wifi/res/values-pa/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"ਯੋਗ ਬਣਾਓ"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-pl/strings.xml b/java/com/android/incallui/wifi/res/values-pl/strings.xml
deleted file mode 100644
index 43ff017..0000000
--- a/java/com/android/incallui/wifi/res/values-pl/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Włącz"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-pt-rBR/strings.xml b/java/com/android/incallui/wifi/res/values-pt-rBR/strings.xml
deleted file mode 100644
index 4f1a423..0000000
--- a/java/com/android/incallui/wifi/res/values-pt-rBR/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Ativar"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-pt-rPT/strings.xml b/java/com/android/incallui/wifi/res/values-pt-rPT/strings.xml
deleted file mode 100644
index 4f1a423..0000000
--- a/java/com/android/incallui/wifi/res/values-pt-rPT/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Ativar"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-pt/strings.xml b/java/com/android/incallui/wifi/res/values-pt/strings.xml
deleted file mode 100644
index 4f1a423..0000000
--- a/java/com/android/incallui/wifi/res/values-pt/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Ativar"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ro/strings.xml b/java/com/android/incallui/wifi/res/values-ro/strings.xml
deleted file mode 100644
index af90045..0000000
--- a/java/com/android/incallui/wifi/res/values-ro/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Activați"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ru/strings.xml b/java/com/android/incallui/wifi/res/values-ru/strings.xml
deleted file mode 100644
index 00ae00e..0000000
--- a/java/com/android/incallui/wifi/res/values-ru/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Включить"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-si/strings.xml b/java/com/android/incallui/wifi/res/values-si/strings.xml
deleted file mode 100644
index a19c389..0000000
--- a/java/com/android/incallui/wifi/res/values-si/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"සබල කරන්න"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-sk/strings.xml b/java/com/android/incallui/wifi/res/values-sk/strings.xml
deleted file mode 100644
index 252f6e5..0000000
--- a/java/com/android/incallui/wifi/res/values-sk/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Povoliť"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-sl/strings.xml b/java/com/android/incallui/wifi/res/values-sl/strings.xml
deleted file mode 100644
index f1efb71..0000000
--- a/java/com/android/incallui/wifi/res/values-sl/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Omogoči"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-sq/strings.xml b/java/com/android/incallui/wifi/res/values-sq/strings.xml
deleted file mode 100644
index c69185d..0000000
--- a/java/com/android/incallui/wifi/res/values-sq/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Aktivizo"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-sr/strings.xml b/java/com/android/incallui/wifi/res/values-sr/strings.xml
deleted file mode 100644
index 8bd22f6..0000000
--- a/java/com/android/incallui/wifi/res/values-sr/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Омогући"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-sv/strings.xml b/java/com/android/incallui/wifi/res/values-sv/strings.xml
deleted file mode 100644
index d0dbc40..0000000
--- a/java/com/android/incallui/wifi/res/values-sv/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Aktivera"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-sw/strings.xml b/java/com/android/incallui/wifi/res/values-sw/strings.xml
deleted file mode 100644
index f0cb245..0000000
--- a/java/com/android/incallui/wifi/res/values-sw/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Washa"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ta/strings.xml b/java/com/android/incallui/wifi/res/values-ta/strings.xml
deleted file mode 100644
index 38628af..0000000
--- a/java/com/android/incallui/wifi/res/values-ta/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"இயக்கு"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-te/strings.xml b/java/com/android/incallui/wifi/res/values-te/strings.xml
deleted file mode 100644
index 40fd08f..0000000
--- a/java/com/android/incallui/wifi/res/values-te/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"ప్రారంభించు"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-th/strings.xml b/java/com/android/incallui/wifi/res/values-th/strings.xml
deleted file mode 100644
index f201a20..0000000
--- a/java/com/android/incallui/wifi/res/values-th/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"เปิดใช้"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-tl/strings.xml b/java/com/android/incallui/wifi/res/values-tl/strings.xml
deleted file mode 100644
index b182eec..0000000
--- a/java/com/android/incallui/wifi/res/values-tl/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"I-enable"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-tr/strings.xml b/java/com/android/incallui/wifi/res/values-tr/strings.xml
deleted file mode 100644
index 65e70e2..0000000
--- a/java/com/android/incallui/wifi/res/values-tr/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Etkinleştir"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-uk/strings.xml b/java/com/android/incallui/wifi/res/values-uk/strings.xml
deleted file mode 100644
index db64076..0000000
--- a/java/com/android/incallui/wifi/res/values-uk/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Увімкнути"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-ur/strings.xml b/java/com/android/incallui/wifi/res/values-ur/strings.xml
deleted file mode 100644
index a788280..0000000
--- a/java/com/android/incallui/wifi/res/values-ur/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"فعال کریں"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-uz/strings.xml b/java/com/android/incallui/wifi/res/values-uz/strings.xml
deleted file mode 100644
index dd5c475..0000000
--- a/java/com/android/incallui/wifi/res/values-uz/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Yoqish"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-vi/strings.xml b/java/com/android/incallui/wifi/res/values-vi/strings.xml
deleted file mode 100644
index 003d5ad..0000000
--- a/java/com/android/incallui/wifi/res/values-vi/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Bật"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-zh-rCN/strings.xml b/java/com/android/incallui/wifi/res/values-zh-rCN/strings.xml
deleted file mode 100644
index a198042..0000000
--- a/java/com/android/incallui/wifi/res/values-zh-rCN/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"启用"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-zh-rHK/strings.xml b/java/com/android/incallui/wifi/res/values-zh-rHK/strings.xml
deleted file mode 100644
index b7cf926..0000000
--- a/java/com/android/incallui/wifi/res/values-zh-rHK/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"啟用"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-zh-rTW/strings.xml b/java/com/android/incallui/wifi/res/values-zh-rTW/strings.xml
deleted file mode 100644
index b7cf926..0000000
--- a/java/com/android/incallui/wifi/res/values-zh-rTW/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"啟用"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values-zu/strings.xml b/java/com/android/incallui/wifi/res/values-zu/strings.xml
deleted file mode 100644
index 6c516e7..0000000
--- a/java/com/android/incallui/wifi/res/values-zu/strings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="incall_enable_wifi_calling_button" msgid="2741166159276797490">"Vumela"</string>
-</resources>
diff --git a/java/com/android/incallui/wifi/res/values/strings.xml b/java/com/android/incallui/wifi/res/values/strings.xml
deleted file mode 100644
index 1b52b9f..0000000
--- a/java/com/android/incallui/wifi/res/values/strings.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-
-  <!-- Button to enable Wi-Fi calling. This is displayed in a dialog after a phone call disconnects
-      because there is no cellular service.
-      [CHAR LIMIT=20] -->
-  <string name="incall_enable_wifi_calling_button">Enable</string>
-
-</resources>
diff --git a/java/com/android/voicemail/AndroidManifest.xml b/java/com/android/voicemail/AndroidManifest.xml
new file mode 100644
index 0000000..aedfd6f
--- /dev/null
+++ b/java/com/android/voicemail/AndroidManifest.xml
@@ -0,0 +1,36 @@
+<!--
+  ~ Copyright (C) 2017 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
+  -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+  package="com.android.voicemailomtp">
+
+  <uses-sdk
+    android:minSdkVersion="23"
+    android:targetSdkVersion="26"/>
+
+  <!-- Applications using this module should merge these permissions using android_manifest_merge -->
+
+  <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"/>
+  <uses-permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"/>
+  <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"/>
+  <uses-permission android:name="android.permission.WAKE_LOCK"/>
+  <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
+  <uses-permission android:name="android.permission.SEND_SMS"/>
+  <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
+  <uses-permission android:name="android.permission.INTERNET"/>
+  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
+
+  <application/>
+</manifest>
diff --git a/java/com/android/voicemail/impl/AndroidManifest.xml b/java/com/android/voicemail/impl/AndroidManifest.xml
index 95e6e82..be7dac1 100644
--- a/java/com/android/voicemail/impl/AndroidManifest.xml
+++ b/java/com/android/voicemail/impl/AndroidManifest.xml
@@ -97,6 +97,11 @@
         android:exported="false"/>
 
     <service
+        android:name="com.android.voicemail.impl.transcribe.TranscriptionService"
+        android:permission="android.permission.BIND_JOB_SERVICE"
+        android:exported="false"/>
+
+    <service
         android:name="com.android.voicemail.impl.OmtpService"
         android:permission="android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"
         android:exported="true"
diff --git a/java/com/android/voicemail/impl/OmtpConstants.java b/java/com/android/voicemail/impl/OmtpConstants.java
index 599d0d5..97da2a8 100644
--- a/java/com/android/voicemail/impl/OmtpConstants.java
+++ b/java/com/android/voicemail/impl/OmtpConstants.java
@@ -234,6 +234,39 @@
   public static final int CHANGE_PIN_INVALID_CHARACTER = 5;
   public static final int CHANGE_PIN_SYSTEM_ERROR = 6;
 
-  /** Indicates the client is Google visual voicemail version 1.0. */
-  public static final String CLIENT_TYPE_GOOGLE_10 = "google.vvm.10";
+  public static String getClientType() {
+    String manufacturer =
+        truncate(
+            android.os.Build.MANUFACTURER
+                .replace('=', '_')
+                .replace(';', '_')
+                .replace('.', '_')
+                .replace(' ', '_'),
+            12);
+
+    String version =
+        truncate(
+            android.os.Build.VERSION
+                .RELEASE
+                .replace('=', '_')
+                .replace(';', '_')
+                .replace('.', '_')
+                .replace(' ', '_'),
+            8);
+
+    String model =
+        truncate(
+            android.os.Build.MODEL
+                .replace('=', '_')
+                .replace(';', '_')
+                .replace('.', '_')
+                .replace(' ', '_'),
+            28 - manufacturer.length() - version.length());
+
+    return String.format("%s.%s.%s", manufacturer, model, version);
+  }
+
+  private static final String truncate(String string, int length) {
+    return string.substring(0, Math.min(length, string.length()));
+  }
 }
diff --git a/java/com/android/voicemail/impl/OmtpReceiver.java b/java/com/android/voicemail/impl/OmtpReceiver.java
deleted file mode 100644
index 9baf954..0000000
--- a/java/com/android/voicemail/impl/OmtpReceiver.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (C) 2017 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.voicemail.impl;
-
-import android.annotation.TargetApi;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Build.VERSION_CODES;
-import android.telecom.PhoneAccountHandle;
-import android.telephony.VisualVoicemailSms;
-import com.android.dialer.common.Assert;
-import com.android.dialer.logging.DialerImpression;
-import com.android.dialer.logging.Logger;
-import com.android.voicemail.VoicemailComponent;
-import com.android.voicemail.impl.settings.VisualVoicemailSettingsUtil;
-import com.android.voicemail.impl.sync.VvmAccountManager;
-
-/** Listens to com.android.phone.vvm.ACTION_TEMP_VISUAL_VOICEMAIL_SERVICE_EVENT */
-@TargetApi(VERSION_CODES.O)
-public class OmtpReceiver extends BroadcastReceiver {
-
-  private static final String TAG = "VvmOmtpReceiver";
-
-  public static final String ACTION_SMS_RECEIVED = "com.android.vociemailomtp.sms.sms_received";
-
-  public static final String EXTRA_VOICEMAIL_SMS = "extra_voicemail_sms";
-
-  private static final String EXTRA_WHAT = "what";
-
-  private static final int MSG_ON_CELL_SERVICE_CONNECTED = 1;
-
-  private static final int MSG_ON_SMS_RECEIVED = 2;
-
-  private static final int MSG_ON_SIM_REMOVED = 3;
-
-  private static final int MSG_TASK_STOPPED = 5;
-
-  private static final String DATA_PHONE_ACCOUNT_HANDLE = "data_phone_account_handle";
-
-  private static final String DATA_SMS = "data_sms";
-
-  @Override
-  public void onReceive(Context context, Intent intent) {
-    // ACTION_VISUAL_VOICEMAIL_SERVICE_EVENT is not a protected broadcast pre-O.
-    if (!VoicemailComponent.get(context).getVoicemailClient().isVoicemailModuleEnabled()) {
-      VvmLog.e(TAG, "ACTION_VISUAL_VOICEMAIL_SERVICE_EVENT received when module is disabled");
-      return;
-    }
-
-    int what = intent.getIntExtra(EXTRA_WHAT, -1);
-    PhoneAccountHandle phoneAccountHandle = intent.getParcelableExtra(DATA_PHONE_ACCOUNT_HANDLE);
-    OmtpVvmCarrierConfigHelper config = new OmtpVvmCarrierConfigHelper(context, phoneAccountHandle);
-    if (!config.isValid()) {
-      VvmLog.i(TAG, "VVM not supported on " + phoneAccountHandle);
-      return;
-    }
-    if (!VisualVoicemailSettingsUtil.isEnabled(context, phoneAccountHandle)
-        && !config.isLegacyModeEnabled()) {
-      VvmLog.i(TAG, "VVM is disabled");
-      return;
-    }
-    switch (what) {
-      case MSG_ON_CELL_SERVICE_CONNECTED:
-        VvmLog.i(TAG, "onCellServiceConnected");
-        Logger.get(context).logImpression(DialerImpression.Type.VVM_UNBUNDLED_EVENT_RECEIVED);
-        ActivationTask.start(context, phoneAccountHandle, null);
-        break;
-      case MSG_ON_SMS_RECEIVED:
-        VvmLog.i(TAG, "onSmsReceived");
-        Logger.get(context).logImpression(DialerImpression.Type.VVM_UNBUNDLED_EVENT_RECEIVED);
-        VisualVoicemailSms sms = intent.getParcelableExtra(DATA_SMS);
-        Intent receivedIntent = new Intent(ACTION_SMS_RECEIVED);
-        receivedIntent.setPackage(context.getPackageName());
-        receivedIntent.putExtra(EXTRA_VOICEMAIL_SMS, sms);
-        context.sendBroadcast(receivedIntent);
-        break;
-      case MSG_ON_SIM_REMOVED:
-        VvmLog.i(TAG, "onSimRemoved");
-        Logger.get(context).logImpression(DialerImpression.Type.VVM_UNBUNDLED_EVENT_RECEIVED);
-        VvmAccountManager.removeAccount(context, phoneAccountHandle);
-        break;
-      case MSG_TASK_STOPPED:
-        VvmLog.i(TAG, "onStopped");
-        Logger.get(context).logImpression(DialerImpression.Type.VVM_UNBUNDLED_EVENT_RECEIVED);
-        break;
-      default:
-        throw Assert.createIllegalStateFailException("unexpected what: " + what);
-    }
-  }
-}
diff --git a/java/com/android/voicemail/impl/TelephonyManagerStub.java b/java/com/android/voicemail/impl/TelephonyManagerStub.java
deleted file mode 100644
index 4762e90..0000000
--- a/java/com/android/voicemail/impl/TelephonyManagerStub.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (C) 2017 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.voicemail.impl;
-
-import android.annotation.TargetApi;
-import android.os.Build.VERSION_CODES;
-
-/**
- * Temporary stub for public APIs that should be added into telephony manager.
- *
- * <p>TODO(b/32637799) remove this.
- */
-@TargetApi(VERSION_CODES.O)
-public class TelephonyManagerStub {
-
-  public static void showVoicemailNotification(int voicemailCount) {}
-
-  /**
-   * Dismisses the message waiting (voicemail) indicator.
-   *
-   * @param subId the subscription id we should dismiss the notification for.
-   */
-  public static void clearMwiIndicator(int subId) {}
-
-  public static void setShouldCheckVisualVoicemailConfigurationForMwi(int subId, boolean enabled) {}
-}
diff --git a/java/com/android/voicemail/impl/TelephonyVvmConfigManager.java b/java/com/android/voicemail/impl/TelephonyVvmConfigManager.java
index b4def2f..046113c 100644
--- a/java/com/android/voicemail/impl/TelephonyVvmConfigManager.java
+++ b/java/com/android/voicemail/impl/TelephonyVvmConfigManager.java
@@ -21,7 +21,7 @@
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import android.util.ArrayMap;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.voicemail.impl.utils.XmlUtils;
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/java/com/android/voicemail/impl/VoicemailClientImpl.java b/java/com/android/voicemail/impl/VoicemailClientImpl.java
index 83c0523..83ce6c5 100644
--- a/java/com/android/voicemail/impl/VoicemailClientImpl.java
+++ b/java/com/android/voicemail/impl/VoicemailClientImpl.java
@@ -24,8 +24,8 @@
 import android.telecom.PhoneAccountHandle;
 import android.telephony.TelephonyManager;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.voicemail.VisualVoicemailTypeExtensions;
 import com.android.voicemail.VoicemailClient;
 import com.android.voicemail.impl.settings.VisualVoicemailSettingsUtil;
diff --git a/java/com/android/voicemail/impl/VoicemailModule.java b/java/com/android/voicemail/impl/VoicemailModule.java
index 5a4e739..e689e47 100644
--- a/java/com/android/voicemail/impl/VoicemailModule.java
+++ b/java/com/android/voicemail/impl/VoicemailModule.java
@@ -18,6 +18,7 @@
 
 import android.content.Context;
 import android.support.v4.os.BuildCompat;
+import com.android.dialer.inject.ApplicationContext;
 import com.android.voicemail.VoicemailClient;
 import com.android.voicemail.VoicemailPermissionHelper;
 import com.android.voicemail.stub.StubVoicemailClient;
@@ -31,7 +32,7 @@
 
   @Provides
   @Singleton
-  static VoicemailClient provideVoicemailClient(Context context) {
+  static VoicemailClient provideVoicemailClient(@ApplicationContext Context context) {
     if (!BuildCompat.isAtLeastO()) {
       VvmLog.i("VoicemailModule.provideVoicemailClient", "SDK below O");
       return new StubVoicemailClient();
diff --git a/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java b/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java
deleted file mode 100644
index 1e2de60..0000000
--- a/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 2015 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.voicemail.impl;
-
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.telecom.PhoneAccountHandle;
-import android.telecom.TelecomManager;
-import com.android.voicemail.VoicemailComponent;
-import com.android.voicemail.impl.settings.VisualVoicemailSettingsUtil;
-
-/**
- * When a new package is installed, check if it matches any of the vvm carrier apps of the currently
- * enabled dialer VVM sources. The dialer VVM client will be disabled upon carrier VVM app
- * installation, unless it was explicitly enabled by the user.
- */
-public class VvmPackageInstallReceiver extends BroadcastReceiver {
-
-  private static final String TAG = "VvmPkgInstallReceiver";
-
-  @Override
-  public void onReceive(Context context, Intent intent) {
-    if (!VoicemailComponent.get(context).getVoicemailClient().isVoicemailModuleEnabled()) {
-      return;
-    }
-
-    if (intent.getData() == null) {
-      return;
-    }
-
-    String packageName = intent.getData().getSchemeSpecificPart();
-    if (packageName == null) {
-      return;
-    }
-
-    // This get called every time an app is installed and will be noisy. Don't log until the app
-    // is identified as a carrier VVM app.
-    for (PhoneAccountHandle phoneAccount :
-        context.getSystemService(TelecomManager.class).getCallCapablePhoneAccounts()) {
-      OmtpVvmCarrierConfigHelper carrierConfigHelper =
-          new OmtpVvmCarrierConfigHelper(context, phoneAccount);
-      if (!carrierConfigHelper.isValid()) {
-        continue;
-      }
-      if (carrierConfigHelper.getCarrierVvmPackageNames() == null) {
-        continue;
-      }
-      if (!carrierConfigHelper.getCarrierVvmPackageNames().contains(packageName)) {
-        continue;
-      }
-
-      VvmLog.i(TAG, "Carrier app installed");
-      if (VisualVoicemailSettingsUtil.isEnabledUserSet(context, phoneAccount)) {
-        // Skip the check if this voicemail source's setting is overridden by the user.
-        VvmLog.i(TAG, "VVM enabled by user, not disabling");
-        continue;
-      }
-
-      // Force deactivate the client. The user can re-enable it in the settings.
-      // There is no need to update the settings for deactivation. At this point, if the
-      // default value is used it should be false because a carrier package is present.
-      VvmLog.i(TAG, "Carrier VVM package installed, disabling system VVM client");
-      VisualVoicemailSettingsUtil.setEnabled(context, phoneAccount, false);
-    }
-  }
-}
diff --git a/java/com/android/voicemail/impl/com/google/internal/communications/voicemailtranscription/v1/VoicemailTranscriptionServiceGrpc.java b/java/com/android/voicemail/impl/com/google/internal/communications/voicemailtranscription/v1/VoicemailTranscriptionServiceGrpc.java
new file mode 100644
index 0000000..448c693
--- /dev/null
+++ b/java/com/android/voicemail/impl/com/google/internal/communications/voicemailtranscription/v1/VoicemailTranscriptionServiceGrpc.java
@@ -0,0 +1,254 @@
+/*
+ * Copyright (C) 2017 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.google.internal.communications.voicemailtranscription.v1;
+
+import static io.grpc.stub.ClientCalls.asyncUnaryCall;
+import static io.grpc.stub.ClientCalls.asyncServerStreamingCall;
+import static io.grpc.stub.ClientCalls.asyncClientStreamingCall;
+import static io.grpc.stub.ClientCalls.asyncBidiStreamingCall;
+import static io.grpc.stub.ClientCalls.blockingUnaryCall;
+import static io.grpc.stub.ClientCalls.blockingServerStreamingCall;
+import static io.grpc.stub.ClientCalls.futureUnaryCall;
+import static io.grpc.MethodDescriptor.generateFullMethodName;
+import static io.grpc.stub.ServerCalls.asyncUnaryCall;
+import static io.grpc.stub.ServerCalls.asyncServerStreamingCall;
+import static io.grpc.stub.ServerCalls.asyncClientStreamingCall;
+import static io.grpc.stub.ServerCalls.asyncBidiStreamingCall;
+import static io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall;
+import static io.grpc.stub.ServerCalls.asyncUnimplementedStreamingCall;
+
+/**
+ * <pre>
+ * RPC service for transcribing voicemails.
+ * </pre>
+ */
+@javax.annotation.Generated(
+    value = "by gRPC proto compiler (version 1.0.3)",
+    comments = "Source: voicemail_transcription.proto")
+public class VoicemailTranscriptionServiceGrpc {
+
+  private VoicemailTranscriptionServiceGrpc() {}
+
+  public static final String SERVICE_NAME = "google.internal.communications.voicemailtranscription.v1.VoicemailTranscriptionService";
+
+  // Static method descriptors that strictly reflect the proto.
+  @io.grpc.ExperimentalApi("https://github.com/grpc/grpc-java/issues/1901")
+  public static final io.grpc.MethodDescriptor<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest,
+      com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse> METHOD_TRANSCRIBE_VOICEMAIL =
+      io.grpc.MethodDescriptor.create(
+          io.grpc.MethodDescriptor.MethodType.UNARY,
+          generateFullMethodName(
+              "google.internal.communications.voicemailtranscription.v1.VoicemailTranscriptionService", "TranscribeVoicemail"),
+          io.grpc.protobuf.lite.ProtoLiteUtils.marshaller(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest.getDefaultInstance()),
+          io.grpc.protobuf.lite.ProtoLiteUtils.marshaller(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse.getDefaultInstance()));
+
+  /**
+   * Creates a new async stub that supports all call types for the service
+   */
+  public static VoicemailTranscriptionServiceStub newStub(io.grpc.Channel channel) {
+    return new VoicemailTranscriptionServiceStub(channel);
+  }
+
+  /**
+   * Creates a new blocking-style stub that supports unary and streaming output calls on the service
+   */
+  public static VoicemailTranscriptionServiceBlockingStub newBlockingStub(
+      io.grpc.Channel channel) {
+    return new VoicemailTranscriptionServiceBlockingStub(channel);
+  }
+
+  /**
+   * Creates a new ListenableFuture-style stub that supports unary and streaming output calls on the service
+   */
+  public static VoicemailTranscriptionServiceFutureStub newFutureStub(
+      io.grpc.Channel channel) {
+    return new VoicemailTranscriptionServiceFutureStub(channel);
+  }
+
+  /**
+   * <pre>
+   * RPC service for transcribing voicemails.
+   * </pre>
+   */
+  public static abstract class VoicemailTranscriptionServiceImplBase implements io.grpc.BindableService {
+
+    /**
+     * <pre>
+     * Returns a transcript of the given voicemail.
+     * </pre>
+     */
+    public void transcribeVoicemail(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest request,
+        io.grpc.stub.StreamObserver<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse> responseObserver) {
+      asyncUnimplementedUnaryCall(METHOD_TRANSCRIBE_VOICEMAIL, responseObserver);
+    }
+
+    @java.lang.Override public io.grpc.ServerServiceDefinition bindService() {
+      return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+          .addMethod(
+            METHOD_TRANSCRIBE_VOICEMAIL,
+            asyncUnaryCall(
+              new MethodHandlers<
+                com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest,
+                com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse>(
+                  this, METHODID_TRANSCRIBE_VOICEMAIL)))
+          .build();
+    }
+  }
+
+  /**
+   * <pre>
+   * RPC service for transcribing voicemails.
+   * </pre>
+   */
+  public static final class VoicemailTranscriptionServiceStub extends io.grpc.stub.AbstractStub<VoicemailTranscriptionServiceStub> {
+    private VoicemailTranscriptionServiceStub(io.grpc.Channel channel) {
+      super(channel);
+    }
+
+    private VoicemailTranscriptionServiceStub(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      super(channel, callOptions);
+    }
+
+    @java.lang.Override
+    protected VoicemailTranscriptionServiceStub build(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      return new VoicemailTranscriptionServiceStub(channel, callOptions);
+    }
+
+    /**
+     * <pre>
+     * Returns a transcript of the given voicemail.
+     * </pre>
+     */
+    public void transcribeVoicemail(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest request,
+        io.grpc.stub.StreamObserver<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse> responseObserver) {
+      asyncUnaryCall(
+          getChannel().newCall(METHOD_TRANSCRIBE_VOICEMAIL, getCallOptions()), request, responseObserver);
+    }
+  }
+
+  /**
+   * <pre>
+   * RPC service for transcribing voicemails.
+   * </pre>
+   */
+  public static final class VoicemailTranscriptionServiceBlockingStub extends io.grpc.stub.AbstractStub<VoicemailTranscriptionServiceBlockingStub> {
+    private VoicemailTranscriptionServiceBlockingStub(io.grpc.Channel channel) {
+      super(channel);
+    }
+
+    private VoicemailTranscriptionServiceBlockingStub(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      super(channel, callOptions);
+    }
+
+    @java.lang.Override
+    protected VoicemailTranscriptionServiceBlockingStub build(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      return new VoicemailTranscriptionServiceBlockingStub(channel, callOptions);
+    }
+
+    /**
+     * <pre>
+     * Returns a transcript of the given voicemail.
+     * </pre>
+     */
+    public com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse transcribeVoicemail(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest request) {
+      return blockingUnaryCall(
+          getChannel(), METHOD_TRANSCRIBE_VOICEMAIL, getCallOptions(), request);
+    }
+  }
+
+  /**
+   * <pre>
+   * RPC service for transcribing voicemails.
+   * </pre>
+   */
+  public static final class VoicemailTranscriptionServiceFutureStub extends io.grpc.stub.AbstractStub<VoicemailTranscriptionServiceFutureStub> {
+    private VoicemailTranscriptionServiceFutureStub(io.grpc.Channel channel) {
+      super(channel);
+    }
+
+    private VoicemailTranscriptionServiceFutureStub(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      super(channel, callOptions);
+    }
+
+    @java.lang.Override
+    protected VoicemailTranscriptionServiceFutureStub build(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      return new VoicemailTranscriptionServiceFutureStub(channel, callOptions);
+    }
+
+    /**
+     * <pre>
+     * Returns a transcript of the given voicemail.
+     * </pre>
+     */
+    public com.google.common.util.concurrent.ListenableFuture<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse> transcribeVoicemail(
+        com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest request) {
+      return futureUnaryCall(
+          getChannel().newCall(METHOD_TRANSCRIBE_VOICEMAIL, getCallOptions()), request);
+    }
+  }
+
+  private static final int METHODID_TRANSCRIBE_VOICEMAIL = 0;
+
+  private static class MethodHandlers<Req, Resp> implements
+      io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>,
+      io.grpc.stub.ServerCalls.ServerStreamingMethod<Req, Resp>,
+      io.grpc.stub.ServerCalls.ClientStreamingMethod<Req, Resp>,
+      io.grpc.stub.ServerCalls.BidiStreamingMethod<Req, Resp> {
+    private final VoicemailTranscriptionServiceImplBase serviceImpl;
+    private final int methodId;
+
+    public MethodHandlers(VoicemailTranscriptionServiceImplBase serviceImpl, int methodId) {
+      this.serviceImpl = serviceImpl;
+      this.methodId = methodId;
+    }
+
+    @java.lang.Override
+    @java.lang.SuppressWarnings("unchecked")
+    public void invoke(Req request, io.grpc.stub.StreamObserver<Resp> responseObserver) {
+      switch (methodId) {
+        case METHODID_TRANSCRIBE_VOICEMAIL:
+          serviceImpl.transcribeVoicemail((com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest) request,
+              (io.grpc.stub.StreamObserver<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse>) responseObserver);
+          break;
+        default:
+          throw new AssertionError();
+      }
+    }
+
+    @java.lang.Override
+    @java.lang.SuppressWarnings("unchecked")
+    public io.grpc.stub.StreamObserver<Req> invoke(
+        io.grpc.stub.StreamObserver<Resp> responseObserver) {
+      switch (methodId) {
+        default:
+          throw new AssertionError();
+      }
+    }
+  }
+
+  public static io.grpc.ServiceDescriptor getServiceDescriptor() {
+    return new io.grpc.ServiceDescriptor(SERVICE_NAME,
+        METHOD_TRANSCRIBE_VOICEMAIL);
+  }
+
+}
diff --git a/java/com/android/voicemail/impl/fetch/VoicemailFetchedCallback.java b/java/com/android/voicemail/impl/fetch/VoicemailFetchedCallback.java
index f386fce..d15ce12 100644
--- a/java/com/android/voicemail/impl/fetch/VoicemailFetchedCallback.java
+++ b/java/com/android/voicemail/impl/fetch/VoicemailFetchedCallback.java
@@ -23,9 +23,12 @@
 import android.support.annotation.Nullable;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.concurrent.ThreadUtil;
 import com.android.voicemail.impl.R;
 import com.android.voicemail.impl.VvmLog;
 import com.android.voicemail.impl.imap.VoicemailPayload;
+import com.android.voicemail.impl.transcribe.TranscriptionService;
 import java.io.IOException;
 import java.io.OutputStream;
 import org.apache.commons.io.IOUtils;
@@ -56,6 +59,7 @@
    * @param voicemailPayload The object containing the content data for the voicemail
    */
   public void setVoicemailContent(@Nullable VoicemailPayload voicemailPayload) {
+    Assert.isWorkerThread();
     if (voicemailPayload == null) {
       VvmLog.i(TAG, "Payload not found, message has unsupported format");
       ContentValues values = new ContentValues();
@@ -90,13 +94,23 @@
     ContentValues values = new ContentValues();
     values.put(Voicemails.MIME_TYPE, voicemailPayload.getMimeType());
     values.put(Voicemails.HAS_CONTENT, true);
-    updateVoicemail(values);
+    if (updateVoicemail(values)) {
+      ThreadUtil.postOnUiThread(
+          () -> {
+            if (!TranscriptionService.transcribeVoicemail(mContext, mUri)) {
+              VvmLog.w(TAG, String.format("Failed to schedule transcription for %s", mUri));
+            }
+          });
+    }
   }
 
-  private void updateVoicemail(ContentValues values) {
+  private boolean updateVoicemail(ContentValues values) {
     int updatedCount = mContentResolver.update(mUri, values, null, null);
     if (updatedCount != 1) {
       VvmLog.e(TAG, "Updating voicemail should have updated 1 row, was: " + updatedCount);
+      return false;
+    } else {
+      return true;
     }
   }
 }
diff --git a/java/com/android/voicemail/impl/imap/ImapHelper.java b/java/com/android/voicemail/impl/imap/ImapHelper.java
index f1bc8b2..94abe9b 100644
--- a/java/com/android/voicemail/impl/imap/ImapHelper.java
+++ b/java/com/android/voicemail/impl/imap/ImapHelper.java
@@ -251,13 +251,18 @@
     long time = messageDetails.getSentDate().getTime();
     String number = getNumber(messageDetails.getFrom());
     boolean isRead = Arrays.asList(messageDetails.getFlags()).contains(Flag.SEEN);
-    return Voicemail.createForInsertion(time, number)
-        .setPhoneAccount(mPhoneAccount)
-        .setSourcePackage(mContext.getPackageName())
-        .setSourceData(messageDetails.getUid())
-        .setIsRead(isRead)
-        .setTranscription(listener.getVoicemailTranscription())
-        .build();
+    Long duration = messageDetails.getDuration();
+    Voicemail.Builder builder =
+        Voicemail.createForInsertion(time, number)
+            .setPhoneAccount(mPhoneAccount)
+            .setSourcePackage(mContext.getPackageName())
+            .setSourceData(messageDetails.getUid())
+            .setIsRead(isRead)
+            .setTranscription(listener.getVoicemailTranscription());
+    if (duration != null) {
+      builder.setDuration(duration);
+    }
+    return builder.build();
   }
 
   /**
diff --git a/java/com/android/voicemail/impl/mail/MailTransport.java b/java/com/android/voicemail/impl/mail/MailTransport.java
index 3df36d5..00339f0 100644
--- a/java/com/android/voicemail/impl/mail/MailTransport.java
+++ b/java/com/android/voicemail/impl/mail/MailTransport.java
@@ -17,7 +17,9 @@
 
 import android.content.Context;
 import android.net.Network;
+import android.net.TrafficStats;
 import android.support.annotation.VisibleForTesting;
+import com.android.dialer.constants.TrafficStatsTags;
 import com.android.voicemail.impl.OmtpEvents;
 import com.android.voicemail.impl.imap.ImapHelper;
 import com.android.voicemail.impl.mail.store.ImapStore;
@@ -188,6 +190,7 @@
 
     try {
       LogUtils.v(TAG, "createSocket: network specified");
+      TrafficStats.setThreadStatsTag(TrafficStatsTags.VISUAL_VOICEMAIL_TAG);
       return mNetwork.getSocketFactory().createSocket();
     } catch (IOException ioe) {
       LogUtils.d(TAG, ioe.toString());
diff --git a/java/com/android/voicemail/impl/mail/Message.java b/java/com/android/voicemail/impl/mail/Message.java
index aea5d3e..ca65d3d 100644
--- a/java/com/android/voicemail/impl/mail/Message.java
+++ b/java/com/android/voicemail/impl/mail/Message.java
@@ -15,6 +15,7 @@
  */
 package com.android.voicemail.impl.mail;
 
+import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import java.util.Date;
 import java.util.HashSet;
@@ -64,6 +65,9 @@
 
   public abstract void setSentDate(Date sentDate) throws MessagingException;
 
+  @Nullable
+  public abstract Long getDuration() throws MessagingException;
+
   public abstract Address[] getRecipients(String type) throws MessagingException;
 
   public abstract void setRecipients(String type, Address[] addresses) throws MessagingException;
diff --git a/java/com/android/voicemail/impl/mail/internet/MimeHeader.java b/java/com/android/voicemail/impl/mail/internet/MimeHeader.java
index d41cdb3..8f08176 100644
--- a/java/com/android/voicemail/impl/mail/internet/MimeHeader.java
+++ b/java/com/android/voicemail/impl/mail/internet/MimeHeader.java
@@ -36,6 +36,7 @@
   public static final String HEADER_CONTENT_TRANSFER_ENCODING = "Content-Transfer-Encoding";
   public static final String HEADER_CONTENT_DISPOSITION = "Content-Disposition";
   public static final String HEADER_CONTENT_ID = "Content-ID";
+  public static final String HEADER_CONTENT_DURATION = "Content-Duration";
 
   /** Fields that should be omitted when writing the header using writeTo() */
   private static final String[] WRITE_OMIT_FIELDS = {
diff --git a/java/com/android/voicemail/impl/mail/internet/MimeMessage.java b/java/com/android/voicemail/impl/mail/internet/MimeMessage.java
index 5897206..39378a0 100644
--- a/java/com/android/voicemail/impl/mail/internet/MimeMessage.java
+++ b/java/com/android/voicemail/impl/mail/internet/MimeMessage.java
@@ -15,7 +15,9 @@
  */
 package com.android.voicemail.impl.mail.internet;
 
+import android.support.annotation.Nullable;
 import android.text.TextUtils;
+import com.android.voicemail.impl.VvmLog;
 import com.android.voicemail.impl.mail.Address;
 import com.android.voicemail.impl.mail.Body;
 import com.android.voicemail.impl.mail.BodyPart;
@@ -197,6 +199,28 @@
   }
 
   @Override
+  @Nullable
+  public Long getDuration() {
+    String durationHeader = null;
+    try {
+      durationHeader = getFirstHeader(MimeHeader.HEADER_CONTENT_DURATION);
+    } catch (MessagingException e) {
+      VvmLog.e("MimeMessage.getDuration", "cannot retrieve header: ", e);
+      return null;
+    }
+    if (durationHeader == null) {
+      VvmLog.w("MimeMessage.getDuration", "message missing Content-Duration header");
+      return null;
+    }
+    try {
+      return Long.valueOf(durationHeader);
+    } catch (NumberFormatException e) {
+      VvmLog.w("MimeMessage.getDuration", "cannot parse duration " + durationHeader);
+      return null;
+    }
+  }
+
+  @Override
   public String getContentType() throws MessagingException {
     final String contentType = getFirstHeader(MimeHeader.HEADER_CONTENT_TYPE);
     if (contentType == null) {
diff --git a/java/com/android/voicemail/impl/mail/store/imap/ImapConstants.java b/java/com/android/voicemail/impl/mail/store/imap/ImapConstants.java
index 88ec0ed..fd56952 100644
--- a/java/com/android/voicemail/impl/mail/store/imap/ImapConstants.java
+++ b/java/com/android/voicemail/impl/mail/store/imap/ImapConstants.java
@@ -27,7 +27,7 @@
   public static final String FETCH_FIELD_BODY_PEEK_SANE =
       String.format(Locale.US, "BODY.PEEK[]<0.%d>", ImapStore.FETCH_BODY_SANE_SUGGESTED_SIZE);
   public static final String FETCH_FIELD_HEADERS =
-      "BODY.PEEK[HEADER.FIELDS (date subject from content-type to cc message-id)]";
+      "BODY.PEEK[HEADER.FIELDS (date subject from content-type to cc message-id content-duration)]";
 
   public static final String ALERT = "ALERT";
   public static final String APPEND = "APPEND";
diff --git a/java/com/android/voicemail/impl/protocol/OmtpProtocol.java b/java/com/android/voicemail/impl/protocol/OmtpProtocol.java
index 27aab8a..971edcf 100644
--- a/java/com/android/voicemail/impl/protocol/OmtpProtocol.java
+++ b/java/com/android/voicemail/impl/protocol/OmtpProtocol.java
@@ -35,7 +35,7 @@
         phoneAccountHandle,
         applicationPort,
         destinationNumber,
-        OmtpConstants.CLIENT_TYPE_GOOGLE_10,
+        OmtpConstants.getClientType(),
         OmtpConstants.PROTOCOL_VERSION1_1,
         null /*clientPrefix*/);
   }
diff --git a/java/com/android/voicemail/impl/protocol/Vvm3Subscriber.java b/java/com/android/voicemail/impl/protocol/Vvm3Subscriber.java
index 1cdbbfb..d9a0649 100644
--- a/java/com/android/voicemail/impl/protocol/Vvm3Subscriber.java
+++ b/java/com/android/voicemail/impl/protocol/Vvm3Subscriber.java
@@ -31,7 +31,7 @@
 import android.text.Spanned;
 import android.text.style.URLSpan;
 import android.util.ArrayMap;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.voicemail.impl.ActivationTask;
 import com.android.voicemail.impl.Assert;
 import com.android.voicemail.impl.OmtpEvents;
diff --git a/java/com/android/voicemail/impl/res/xml/vvm_config.xml b/java/com/android/voicemail/impl/res/xml/vvm_config.xml
index c7ed5ca..2bac66b 100644
--- a/java/com/android/voicemail/impl/res/xml/vvm_config.xml
+++ b/java/com/android/voicemail/impl/res/xml/vvm_config.xml
@@ -21,7 +21,6 @@
       <item value="TEST"/>
     </string-array>
   </pbundle_as_map>
-
   <pbundle_as_map>
     <!-- T-Mobile USA-->
     <string-array name="mccmnc">
diff --git a/java/com/android/voicemail/impl/scheduling/TaskSchedulerService.java b/java/com/android/voicemail/impl/scheduling/TaskSchedulerService.java
deleted file mode 100644
index 5ad2447..0000000
--- a/java/com/android/voicemail/impl/scheduling/TaskSchedulerService.java
+++ /dev/null
@@ -1,400 +0,0 @@
-/*
- * Copyright (C) 2016 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.voicemail.impl.scheduling;
-
-import android.annotation.TargetApi;
-import android.app.Service;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Binder;
-import android.os.Build.VERSION_CODES;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.HandlerThread;
-import android.os.IBinder;
-import android.os.Looper;
-import android.os.Message;
-import android.support.annotation.MainThread;
-import android.support.annotation.Nullable;
-import android.support.annotation.VisibleForTesting;
-import android.support.annotation.WorkerThread;
-import com.android.voicemail.impl.Assert;
-import com.android.voicemail.impl.NeededForTesting;
-import com.android.voicemail.impl.VvmLog;
-import com.android.voicemail.impl.scheduling.TaskQueue.NextTask;
-import java.util.List;
-
-/**
- * A service to queue and run {@link Task} with the {@link android.app.job.JobScheduler}. A task is
- * queued using {@link Context#startService(Intent)}. The intent should contain enough information
- * in {@link Intent#getExtras()} to construct the task (see {@link Tasks#createIntent(Context,
- * Class)}).
- *
- * <p>All tasks are ran in the background with a wakelock being held by the {@link
- * android.app.job.JobScheduler}, which is between {@link #onStartJob(Job, List)} and {@link
- * #finishJob()}. The {@link TaskSchedulerJobService} also has a {@link TaskQueue}, but the data is
- * stored in the {@link android.app.job.JobScheduler} instead of the process memory, so if the
- * process is killed the queued tasks will be restored. If a new task is added, a new {@link
- * TaskSchedulerJobService} will be scheduled to run the task. If the job is already scheduled, the
- * new task will be pushed into the queue of the scheduled job. If the job is already running, the
- * job will be queued in process memory.
- *
- * <p>Only one task will be ran at a time, and same task cannot exist in the queue at the same time.
- * Refer to {@link TaskQueue} for queuing and execution order.
- *
- * <p>If there are still tasks in the queue but none are executable immediately, the service will
- * enter a "sleep", pushing all remaining task into a new job and end the current job.
- *
- * <p>The service will be started when a intent is received, and stopped when there are no more
- * tasks in the queue.
- *
- * <p>{@link android.app.job.JobScheduler} is not used directly due to:
- *
- * <ul>
- *   <li>The {@link android.telecom.PhoneAccountHandle} used to differentiate task can not be easily
- *       mapped into an integer for job id
- *   <li>A job cannot be mutated to store information such as retry count.
- * </ul>
- */
-@SuppressWarnings("AndroidApiChecker") /* stream() */
-@TargetApi(VERSION_CODES.O)
-public class TaskSchedulerService extends Service {
-
-  interface Job {
-    void finish();
-  }
-
-  private static final String TAG = "VvmTaskScheduler";
-
-  private static final int READY_TOLERANCE_MILLISECONDS = 100;
-
-  /**
-   * Threshold to determine whether to do a short or long sleep when a task is scheduled in the
-   * future.
-   *
-   * <p>A short sleep will continue the job and use {@link Handler#postDelayed(Runnable, long)} to
-   * wait for the next task.
-   *
-   * <p>A long sleep will finish the job and schedule a new one. The exact execution time is
-   * subjected to {@link android.app.job.JobScheduler} battery optimization, and is not exact.
-   */
-  private static final int SHORT_SLEEP_THRESHOLD_MILLISECONDS = 10_000;
-  /**
-   * When there are no more tasks to be run the service should be stopped. But when all tasks has
-   * finished there might still be more tasks in the message queue waiting to be processed,
-   * especially the ones submitted in {@link Task#onCompleted()}. Wait for a while before stopping
-   * the service to make sure there are no pending messages.
-   */
-  private static final int STOP_DELAY_MILLISECONDS = 5_000;
-
-  // The thread to run tasks on
-  private volatile WorkerThreadHandler mWorkerThreadHandler;
-
-  /**
-   * Used by tests to turn task handling into a single threaded process by calling {@link
-   * Handler#handleMessage(Message)} directly
-   */
-  private MessageSender mMessageSender = new MessageSender();
-
-  private MainThreadHandler mMainThreadHandler;
-
-  // Binder given to clients
-  private final IBinder mBinder = new LocalBinder();
-
-  /** Main thread only, access through {@link #getTasks()} */
-  private final TaskQueue mTasks = new TaskQueue();
-
-  private boolean mWorkerThreadIsBusy = false;
-
-  private Job mJob;
-
-  private final Runnable mStopServiceWithDelay =
-      new Runnable() {
-        @MainThread
-        @Override
-        public void run() {
-          VvmLog.i(TAG, "Stopping service");
-          finishJob();
-          stopSelf();
-        }
-      };
-
-  /** Should attempt to run the next task when a task has finished or been added. */
-  private boolean mTaskAutoRunDisabledForTesting = false;
-
-  @VisibleForTesting
-  final class WorkerThreadHandler extends Handler {
-
-    public WorkerThreadHandler(Looper looper) {
-      super(looper);
-    }
-
-    @Override
-    @WorkerThread
-    public void handleMessage(Message msg) {
-      Assert.isNotMainThread();
-      Task task = (Task) msg.obj;
-      try {
-        VvmLog.i(TAG, "executing task " + task);
-        task.onExecuteInBackgroundThread();
-      } catch (Throwable throwable) {
-        VvmLog.e(TAG, "Exception while executing task " + task + ":", throwable);
-      }
-
-      Message schedulerMessage = mMainThreadHandler.obtainMessage();
-      schedulerMessage.obj = task;
-      mMessageSender.send(schedulerMessage);
-    }
-  }
-
-  @VisibleForTesting
-  final class MainThreadHandler extends Handler {
-
-    public MainThreadHandler(Looper looper) {
-      super(looper);
-    }
-
-    @Override
-    @MainThread
-    public void handleMessage(Message msg) {
-      Assert.isMainThread();
-      Task task = (Task) msg.obj;
-      getTasks().remove(task);
-      task.onCompleted();
-      mWorkerThreadIsBusy = false;
-      maybeRunNextTask();
-    }
-  }
-
-  @Override
-  @MainThread
-  public void onCreate() {
-    super.onCreate();
-    HandlerThread thread = new HandlerThread("VvmTaskSchedulerService");
-    thread.start();
-
-    mWorkerThreadHandler = new WorkerThreadHandler(thread.getLooper());
-    mMainThreadHandler = new MainThreadHandler(Looper.getMainLooper());
-  }
-
-  @Override
-  public void onDestroy() {
-    mWorkerThreadHandler.getLooper().quit();
-  }
-
-  @Override
-  @MainThread
-  public int onStartCommand(@Nullable Intent intent, int flags, int startId) {
-    Assert.isMainThread();
-    if (intent == null) {
-      VvmLog.w(TAG, "null intent received");
-      return START_NOT_STICKY;
-    }
-    Task task = Tasks.createTask(this, intent.getExtras());
-    Assert.isTrue(task != null);
-    addTask(task);
-
-    mMainThreadHandler.removeCallbacks(mStopServiceWithDelay);
-    VvmLog.i(TAG, "task added");
-    if (mJob == null) {
-      scheduleJob(0, true);
-    } else {
-      maybeRunNextTask();
-    }
-    // STICKY means the service will be automatically restarted will the last intent if it is
-    // killed.
-    return START_NOT_STICKY;
-  }
-
-  @MainThread
-  @VisibleForTesting
-  void addTask(Task task) {
-    Assert.isMainThread();
-    getTasks().add(task);
-  }
-
-  @MainThread
-  @VisibleForTesting
-  TaskQueue getTasks() {
-    Assert.isMainThread();
-    return mTasks;
-  }
-
-  @MainThread
-  private void maybeRunNextTask() {
-    Assert.isMainThread();
-    if (mWorkerThreadIsBusy) {
-      return;
-    }
-    if (mTaskAutoRunDisabledForTesting) {
-      // If mTaskAutoRunDisabledForTesting is true, runNextTask() must be explicitly called
-      // to run the next task.
-      return;
-    }
-
-    runNextTask();
-  }
-
-  @VisibleForTesting
-  @MainThread
-  void runNextTask() {
-    Assert.isMainThread();
-    if (getTasks().isEmpty()) {
-      prepareStop();
-      return;
-    }
-    NextTask nextTask = getTasks().getNextTask(READY_TOLERANCE_MILLISECONDS);
-
-    if (nextTask.task != null) {
-      nextTask.task.onBeforeExecute();
-      Message message = mWorkerThreadHandler.obtainMessage();
-      message.obj = nextTask.task;
-      mWorkerThreadIsBusy = true;
-      mMessageSender.send(message);
-      return;
-    }
-    VvmLog.i(TAG, "minimal wait time:" + nextTask.minimalWaitTimeMillis);
-    if (!mTaskAutoRunDisabledForTesting && nextTask.minimalWaitTimeMillis != null) {
-      // No tasks are currently ready. Sleep until the next one should be.
-      // If a new task is added during the sleep the service will wake immediately.
-      sleep(nextTask.minimalWaitTimeMillis);
-    }
-  }
-
-  @MainThread
-  private void sleep(long timeMillis) {
-    VvmLog.i(TAG, "sleep for " + timeMillis + " millis");
-    if (timeMillis < SHORT_SLEEP_THRESHOLD_MILLISECONDS) {
-      mMainThreadHandler.postDelayed(
-          new Runnable() {
-            @Override
-            public void run() {
-              maybeRunNextTask();
-            }
-          },
-          timeMillis);
-      return;
-    }
-    finishJob();
-    mMainThreadHandler.post(() -> scheduleJob(timeMillis, false));
-  }
-
-  private List<Bundle> serializePendingTasks() {
-    return getTasks().toBundles();
-  }
-
-  private void prepareStop() {
-    VvmLog.i(
-        TAG,
-        "no more tasks, stopping service if no task are added in "
-            + STOP_DELAY_MILLISECONDS
-            + " millis");
-    mMainThreadHandler.postDelayed(mStopServiceWithDelay, STOP_DELAY_MILLISECONDS);
-  }
-
-  @NeededForTesting
-  static class MessageSender {
-
-    public void send(Message message) {
-      message.sendToTarget();
-    }
-  }
-
-  @NeededForTesting
-  void setTaskAutoRunDisabledForTest(boolean value) {
-    mTaskAutoRunDisabledForTesting = value;
-  }
-
-  @NeededForTesting
-  void setMessageSenderForTest(MessageSender sender) {
-    mMessageSender = sender;
-  }
-
-  /**
-   * The {@link TaskSchedulerJobService} has started and all queued task should be executed in the
-   * worker thread.
-   */
-  @MainThread
-  public void onStartJob(Job job, List<Bundle> pendingTasks) {
-    VvmLog.i(TAG, "onStartJob");
-    mJob = job;
-    mTasks.fromBundles(this, pendingTasks);
-    maybeRunNextTask();
-  }
-
-  /**
-   * The {@link TaskSchedulerJobService} is being terminated by the system (timeout or network
-   * lost). A new job will be queued to resume all pending tasks. The current unfinished job may be
-   * ran again.
-   */
-  @MainThread
-  public void onStopJob() {
-    VvmLog.e(TAG, "onStopJob");
-    if (isJobRunning()) {
-      finishJob();
-      mMainThreadHandler.post(() -> scheduleJob(0, true));
-    }
-  }
-
-  /**
-   * Serializes all pending tasks and schedule a new {@link TaskSchedulerJobService}.
-   *
-   * @param delayMillis the delay before stating the job, see {@link
-   *     android.app.job.JobInfo.Builder#setMinimumLatency(long)}. This must be 0 if {@code
-   *     isNewJob} is true.
-   * @param isNewJob a new job will be requested to run immediately, bypassing all requirements.
-   */
-  @MainThread
-  private void scheduleJob(long delayMillis, boolean isNewJob) {
-    Assert.isMainThread();
-    TaskSchedulerJobService.scheduleJob(this, serializePendingTasks(), delayMillis, isNewJob);
-    mTasks.clear();
-  }
-
-  /**
-   * Signals {@link TaskSchedulerJobService} the current session of tasks has finished, and the wake
-   * lock can be released. Note: this only takes effect after the main thread has been returned. If
-   * a new job need to be scheduled, it should be posted on the main thread handler instead of
-   * calling directly.
-   */
-  @MainThread
-  private void finishJob() {
-    Assert.isMainThread();
-    VvmLog.i(TAG, "finishing Job");
-    mJob.finish();
-    mJob = null;
-  }
-
-  @Override
-  @Nullable
-  public IBinder onBind(Intent intent) {
-    return mBinder;
-  }
-
-  @NeededForTesting
-  class LocalBinder extends Binder {
-
-    @NeededForTesting
-    public TaskSchedulerService getService() {
-      return TaskSchedulerService.this;
-    }
-  }
-
-  private boolean isJobRunning() {
-    return mJob != null;
-  }
-}
diff --git a/java/com/android/voicemail/impl/settings/VoicemailSettingsFragment.java b/java/com/android/voicemail/impl/settings/VoicemailSettingsFragment.java
index ac5f3ca..4860649 100644
--- a/java/com/android/voicemail/impl/settings/VoicemailSettingsFragment.java
+++ b/java/com/android/voicemail/impl/settings/VoicemailSettingsFragment.java
@@ -22,6 +22,7 @@
 import android.preference.PreferenceFragment;
 import android.preference.PreferenceScreen;
 import android.preference.SwitchPreference;
+import android.provider.Settings;
 import android.support.annotation.Nullable;
 import android.telecom.PhoneAccountHandle;
 import android.telephony.TelephonyManager;
@@ -29,7 +30,6 @@
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
 import com.android.voicemail.VoicemailClient;
 import com.android.voicemail.VoicemailComponent;
 import com.android.voicemail.impl.OmtpVvmCarrierConfigHelper;
@@ -43,8 +43,7 @@
  */
 @TargetApi(VERSION_CODES.O)
 public class VoicemailSettingsFragment extends PreferenceFragment
-    implements Preference.OnPreferenceChangeListener,
-        VvmAccountManager.Listener {
+    implements Preference.OnPreferenceChangeListener, VvmAccountManager.Listener {
 
   private static final String TAG = "VmSettingsActivity";
 
@@ -83,9 +82,8 @@
 
     voicemailNotificationPreference =
         findPreference(getString(R.string.voicemail_notifications_key));
-    voicemailNotificationPreference.setIntent(
-        NotificationChannelManager.getInstance()
-            .getSettingsIntentForChannel(getContext(), Channel.VOICEMAIL, phoneAccountHandle));
+    voicemailNotificationPreference.setIntent(getNotificationSettingsIntent());
+
     voicemailNotificationPreference.setOnPreferenceClickListener(
         new OnPreferenceClickListener() {
           @Override
@@ -233,4 +231,12 @@
       updateChangePin();
     }
   }
+
+  private Intent getNotificationSettingsIntent() {
+    String channelId =
+        NotificationChannelManager.getVoicemailChannelId(getContext(), phoneAccountHandle);
+    return new Intent(Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS)
+        .putExtra(Settings.EXTRA_CHANNEL_ID, channelId)
+        .putExtra(Settings.EXTRA_APP_PACKAGE, getContext().getPackageName());
+  }
 }
diff --git a/java/com/android/voicemail/impl/sms/OmtpMessageReceiver.java b/java/com/android/voicemail/impl/sms/OmtpMessageReceiver.java
index ef0bf10..1cf3737 100644
--- a/java/com/android/voicemail/impl/sms/OmtpMessageReceiver.java
+++ b/java/com/android/voicemail/impl/sms/OmtpMessageReceiver.java
@@ -71,6 +71,10 @@
     }
 
     OmtpVvmCarrierConfigHelper helper = new OmtpVvmCarrierConfigHelper(mContext, phone);
+    if (!helper.isValid()) {
+      VvmLog.e(TAG, "vvm config no longer valid");
+      return;
+    }
     if (!VisualVoicemailSettingsUtil.isEnabled(mContext, phone)) {
       if (helper.isLegacyModeEnabled()) {
         LegacyModeSmsHandler.handle(context, sms);
diff --git a/java/com/android/voicemail/impl/sync/VvmAccountManager.java b/java/com/android/voicemail/impl/sync/VvmAccountManager.java
index cc4e31f..2625fba 100644
--- a/java/com/android/voicemail/impl/sync/VvmAccountManager.java
+++ b/java/com/android/voicemail/impl/sync/VvmAccountManager.java
@@ -15,14 +15,20 @@
  */
 package com.android.voicemail.impl.sync;
 
+import android.annotation.TargetApi;
 import android.content.Context;
+import android.os.Build.VERSION_CODES;
+import android.os.UserManager;
 import android.support.annotation.MainThread;
 import android.support.annotation.NonNull;
+import android.support.annotation.VisibleForTesting;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
 import android.util.ArraySet;
 import com.android.dialer.common.Assert;
+import com.android.dialer.common.PerAccountSharedPreferences;
 import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.dialer.util.DialerUtils;
 import com.android.voicemail.impl.OmtpConstants;
 import com.android.voicemail.impl.VisualVoicemailPreferences;
 import com.android.voicemail.impl.VoicemailStatus;
@@ -40,6 +46,7 @@
  * #removeAccount(Context, PhoneAccountHandle)} should be called to clear the connection information
  * and allow reactivation.
  */
+@TargetApi(VERSION_CODES.O)
 public class VvmAccountManager {
   public static final String TAG = "VvmAccountManager";
 
@@ -49,7 +56,7 @@
     void onActivationStateChanged(PhoneAccountHandle phoneAccountHandle, boolean isActivated);
   }
 
-  private static final String IS_ACCOUNT_ACTIVATED = "is_account_activated";
+  @VisibleForTesting static final String IS_ACCOUNT_ACTIVATED = "is_account_activated";
 
   private static Set<Listener> listeners = new ArraySet<>();
 
@@ -57,7 +64,8 @@
       Context context, PhoneAccountHandle phoneAccountHandle, StatusMessage statusMessage) {
     VisualVoicemailPreferences preferences =
         new VisualVoicemailPreferences(context, phoneAccountHandle);
-    statusMessage.putStatus(preferences.edit()).putBoolean(IS_ACCOUNT_ACTIVATED, true).apply();
+    statusMessage.putStatus(preferences.edit()).apply();
+    setAccountActivated(context, phoneAccountHandle, true);
 
     ThreadUtil.postOnUiThread(
         () -> {
@@ -69,10 +77,10 @@
 
   public static void removeAccount(Context context, PhoneAccountHandle phoneAccount) {
     VoicemailStatus.disable(context, phoneAccount);
+    setAccountActivated(context, phoneAccount, false);
     VisualVoicemailPreferences preferences = new VisualVoicemailPreferences(context, phoneAccount);
     preferences
         .edit()
-        .putBoolean(IS_ACCOUNT_ACTIVATED, false)
         .putString(OmtpConstants.IMAP_USER_NAME, null)
         .putString(OmtpConstants.IMAP_PASSWORD, null)
         .apply();
@@ -86,7 +94,9 @@
 
   public static boolean isAccountActivated(Context context, PhoneAccountHandle phoneAccount) {
     Assert.isNotNull(phoneAccount);
-    VisualVoicemailPreferences preferences = new VisualVoicemailPreferences(context, phoneAccount);
+    PerAccountSharedPreferences preferences =
+        getPreferenceForActivationState(context, phoneAccount);
+    migrateActivationState(context, preferences, phoneAccount);
     return preferences.getBoolean(IS_ACCOUNT_ACTIVATED, false);
   }
 
@@ -113,4 +123,47 @@
     Assert.isMainThread();
     listeners.remove(listener);
   }
+
+  /**
+   * The activation state is moved from credential protected storage to device protected storage
+   * after v10, so it can be checked under FBE. The state should be migrated to avoid reactivation.
+   */
+  private static void migrateActivationState(
+      Context context,
+      PerAccountSharedPreferences deviceProtectedPreference,
+      PhoneAccountHandle phoneAccountHandle) {
+    if (!context.getSystemService(UserManager.class).isUserUnlocked()) {
+      return;
+    }
+    if (deviceProtectedPreference.contains(IS_ACCOUNT_ACTIVATED)) {
+      return;
+    }
+
+    PerAccountSharedPreferences credentialProtectedPreference =
+        new VisualVoicemailPreferences(context, phoneAccountHandle);
+
+    deviceProtectedPreference
+        .edit()
+        .putBoolean(
+            IS_ACCOUNT_ACTIVATED,
+            credentialProtectedPreference.getBoolean(IS_ACCOUNT_ACTIVATED, false))
+        .apply();
+  }
+
+  private static void setAccountActivated(
+      Context context, PhoneAccountHandle phoneAccountHandle, boolean activated) {
+    Assert.isNotNull(phoneAccountHandle);
+    getPreferenceForActivationState(context, phoneAccountHandle)
+        .edit()
+        .putBoolean(IS_ACCOUNT_ACTIVATED, activated)
+        .apply();
+  }
+
+  private static PerAccountSharedPreferences getPreferenceForActivationState(
+      Context context, PhoneAccountHandle phoneAccountHandle) {
+    return new PerAccountSharedPreferences(
+        context,
+        phoneAccountHandle,
+        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context));
+  }
 }
diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionConfigProvider.java b/java/com/android/voicemail/impl/transcribe/TranscriptionConfigProvider.java
new file mode 100644
index 0000000..0c83615
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/TranscriptionConfigProvider.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2017 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.voicemail.impl.transcribe;
+
+import android.content.Context;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+
+/** Provides configuration values needed to connect to the transcription server. */
+public class TranscriptionConfigProvider {
+  private final Context context;
+
+  public TranscriptionConfigProvider(Context context) {
+    this.context = context;
+  }
+
+  public boolean isVoicemailTranscriptionEnabled() {
+    return ConfigProviderBindings.get(context).getBoolean("voicemail_transcription_enabled", false);
+  }
+
+  public String getServerAddress() {
+    // Private voicemail transcription service
+    return ConfigProviderBindings.get(context)
+        .getString(
+            "voicemail_transcription_server_address", "voicemailtranscription-pa.googleapis.com");
+  }
+
+  public String getApiKey() {
+    // Android API key restricted to com.google.android.dialer
+    return ConfigProviderBindings.get(context)
+        .getString(
+            "voicemail_transcription_client_api_key", "AIzaSyAXdDnif6B7sBYxU8hzw9qAp3pRPVHs060");
+  }
+
+  public String getAuthToken() {
+    return null;
+  }
+
+  public boolean shouldUsePlaintext() {
+    return ConfigProviderBindings.get(context)
+        .getBoolean("voicemail_transcription_server_use_plaintext", false);
+  }
+
+  @Override
+  public String toString() {
+    return String.format(
+        "{ address: %s, api key: %s, auth token: %s, plaintext: %b }",
+        getServerAddress(), getApiKey(), getAuthToken(), shouldUsePlaintext());
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java b/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java
new file mode 100644
index 0000000..cbc5cb8
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java
@@ -0,0 +1,105 @@
+/*
+ * Copyright (C) 2017 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.voicemail.impl.transcribe;
+
+import android.annotation.TargetApi;
+import android.content.ContentResolver;
+import android.content.ContentValues;
+import android.content.Context;
+import android.database.Cursor;
+import android.net.Uri;
+import android.os.Build.VERSION_CODES;
+import android.provider.VoicemailContract.Voicemails;
+import android.support.annotation.WorkerThread;
+import android.support.v4.os.BuildCompat;
+import android.util.Pair;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+
+/** Helper class for reading and writing transcription data in the database */
+@TargetApi(VERSION_CODES.O)
+public class TranscriptionDbHelper {
+  private static final String[] PROJECTION =
+      new String[] {
+        Voicemails.TRANSCRIPTION, // 0
+        VoicemailCompat.TRANSCRIPTION_STATE // 1
+      };
+
+  public static final int TRANSCRIPTION = 0;
+  public static final int TRANSCRIPTION_STATE = 1;
+
+  private final ContentResolver contentResolver;
+  private final Uri uri;
+
+  TranscriptionDbHelper(Context context, Uri uri) {
+    Assert.isNotNull(uri);
+    this.contentResolver = context.getContentResolver();
+    this.uri = uri;
+  }
+
+  @WorkerThread
+  @TargetApi(VERSION_CODES.M) // used for try with resources
+  Pair<String, Integer> getTranscriptionAndState() {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isWorkerThread();
+    try (Cursor cursor = contentResolver.query(uri, PROJECTION, null, null, null)) {
+      if (cursor == null) {
+        LogUtil.e("TranscriptionDbHelper.getTranscriptionAndState", "query failed.");
+        return null;
+      }
+
+      if (cursor.moveToFirst()) {
+        String transcription = cursor.getString(TRANSCRIPTION);
+        int transcriptionState = cursor.getInt(TRANSCRIPTION_STATE);
+        return new Pair<>(transcription, transcriptionState);
+      }
+    }
+    LogUtil.i("TranscriptionDbHelper.getTranscriptionAndState", "query returned no results");
+    return null;
+  }
+
+  @WorkerThread
+  void setTranscriptionState(int transcriptionState) {
+    Assert.isWorkerThread();
+    LogUtil.i(
+        "TranscriptionDbHelper.setTranscriptionState",
+        "uri: " + uri + ", state: " + transcriptionState);
+    ContentValues values = new ContentValues();
+    values.put(VoicemailCompat.TRANSCRIPTION_STATE, transcriptionState);
+    updateDatabase(values);
+  }
+
+  @WorkerThread
+  void setTranscriptionAndState(String transcription, int transcriptionState) {
+    Assert.isWorkerThread();
+    LogUtil.i(
+        "TranscriptionDbHelper.setTranscriptionAndState",
+        "uri: " + uri + ", state: " + transcriptionState);
+    ContentValues values = new ContentValues();
+    values.put(Voicemails.TRANSCRIPTION, transcription);
+    values.put(VoicemailCompat.TRANSCRIPTION_STATE, transcriptionState);
+    updateDatabase(values);
+  }
+
+  private void updateDatabase(ContentValues values) {
+    int updatedCount = contentResolver.update(uri, values, null, null);
+    if (updatedCount != 1) {
+      LogUtil.e(
+          "TranscriptionDbHelper.updateDatabase",
+          "Wrong row count, should have updated 1 row, was: " + updatedCount);
+    }
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionService.java b/java/com/android/voicemail/impl/transcribe/TranscriptionService.java
new file mode 100644
index 0000000..3e80a7f
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/TranscriptionService.java
@@ -0,0 +1,203 @@
+/*
+ * Copyright (C) 2017 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.voicemail.impl.transcribe;
+
+import android.app.job.JobInfo;
+import android.app.job.JobParameters;
+import android.app.job.JobScheduler;
+import android.app.job.JobService;
+import android.app.job.JobWorkItem;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.net.Uri;
+import android.os.StrictMode;
+import android.support.annotation.MainThread;
+import android.support.annotation.VisibleForTesting;
+import android.support.v4.os.BuildCompat;
+import android.text.TextUtils;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.constants.ScheduledJobIds;
+import com.android.voicemail.impl.transcribe.grpc.TranscriptionClientFactory;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+
+/**
+ * Job scheduler callback for launching voicemail transcription tasks. The transcription tasks will
+ * run in the background and will typically last for approximately the length of the voicemail audio
+ * (since thats how long the backend transcription service takes to do the transcription).
+ */
+public class TranscriptionService extends JobService {
+  @VisibleForTesting static final String EXTRA_VOICEMAIL_URI = "extra_voicemail_uri";
+
+  private ExecutorService executorService;
+  private JobParameters jobParameters;
+  private TranscriptionClientFactory clientFactory;
+  private TranscriptionConfigProvider configProvider;
+  private StrictMode.VmPolicy originalPolicy;
+
+  /** Callback used by a task to indicate it has finished processing its work item */
+  interface JobCallback {
+    void onWorkCompleted(JobWorkItem completedWorkItem);
+  }
+
+  // Schedule a task to transcribe the indicated voicemail, return true if transcription task was
+  // scheduled.
+  public static boolean transcribeVoicemail(Context context, Uri voicemailUri) {
+    Assert.isMainThread();
+    if (BuildCompat.isAtLeastO()) {
+      LogUtil.i("TranscriptionService.transcribeVoicemail", "scheduling transcription");
+      ComponentName componentName = new ComponentName(context, TranscriptionService.class);
+      JobInfo.Builder builder =
+          new JobInfo.Builder(ScheduledJobIds.VVM_TRANSCRIPTION_JOB, componentName)
+              .setMinimumLatency(0)
+              .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY);
+      JobScheduler scheduler = context.getSystemService(JobScheduler.class);
+      JobWorkItem workItem = makeWorkItem(voicemailUri);
+      return scheduler.enqueue(builder.build(), workItem) == JobScheduler.RESULT_SUCCESS;
+    } else {
+      LogUtil.i("TranscriptionService.transcribeVoicemail", "not supported");
+      return false;
+    }
+  }
+
+  // Cancel all transcription tasks
+  public static void cancelTranscriptions(Context context) {
+    Assert.isMainThread();
+    LogUtil.enterBlock("TranscriptionService.cancelTranscriptions");
+    JobScheduler scheduler = context.getSystemService(JobScheduler.class);
+    scheduler.cancel(ScheduledJobIds.VVM_TRANSCRIPTION_JOB);
+  }
+
+  public TranscriptionService() {
+    Assert.isMainThread();
+  }
+
+  @VisibleForTesting
+  TranscriptionService(
+      ExecutorService executorService,
+      TranscriptionClientFactory clientFactory,
+      TranscriptionConfigProvider configProvider) {
+    this.executorService = executorService;
+    this.clientFactory = clientFactory;
+    this.configProvider = configProvider;
+  }
+
+  @Override
+  public boolean onStartJob(JobParameters params) {
+    Assert.isMainThread();
+    LogUtil.enterBlock("TranscriptionService.onStartJob");
+    if (!getConfigProvider().isVoicemailTranscriptionEnabled()) {
+      LogUtil.i("TranscriptionService.onStartJob", "transcription not enabled, exiting.");
+      return false;
+    } else if (TextUtils.isEmpty(getConfigProvider().getServerAddress())) {
+      LogUtil.i("TranscriptionService.onStartJob", "transcription server not configured, exiting.");
+      return false;
+    } else {
+      LogUtil.i(
+          "TranscriptionService.onStartJob",
+          "transcription server address: " + configProvider.getServerAddress());
+      originalPolicy = StrictMode.getVmPolicy();
+      StrictMode.enableDefaults();
+      jobParameters = params;
+      return checkForWork();
+    }
+  }
+
+  @Override
+  public boolean onStopJob(JobParameters params) {
+    Assert.isMainThread();
+    LogUtil.enterBlock("TranscriptionService.onStopJob");
+    cleanup();
+    return true;
+  }
+
+  @Override
+  public void onDestroy() {
+    Assert.isMainThread();
+    LogUtil.enterBlock("TranscriptionService.onDestroy");
+    cleanup();
+  }
+
+  private void cleanup() {
+    if (clientFactory != null) {
+      clientFactory.shutdown();
+      clientFactory = null;
+    }
+    if (executorService != null) {
+      executorService.shutdownNow();
+      executorService = null;
+    }
+    if (originalPolicy != null) {
+      StrictMode.setVmPolicy(originalPolicy);
+      originalPolicy = null;
+    }
+  }
+
+  @MainThread
+  private boolean checkForWork() {
+    Assert.isMainThread();
+    JobWorkItem workItem = jobParameters.dequeueWork();
+    if (workItem != null) {
+      getExecutorService()
+          .execute(new TranscriptionTask(this, new Callback(), workItem, getClientFactory()));
+      return true;
+    } else {
+      return false;
+    }
+  }
+
+  private ExecutorService getExecutorService() {
+    if (executorService == null) {
+      // The common use case is transcribing a single voicemail so just use a single thread executor
+      // The reason we're not using DialerExecutor here is because the transcription task can be
+      // very long running (ie. multiple minutes).
+      executorService = Executors.newSingleThreadExecutor();
+    }
+    return executorService;
+  }
+
+  private class Callback implements JobCallback {
+    @Override
+    public void onWorkCompleted(JobWorkItem completedWorkItem) {
+      Assert.isMainThread();
+      LogUtil.i("TranscriptionService.Callback.onWorkCompleted", completedWorkItem.toString());
+      jobParameters.completeWork(completedWorkItem);
+      checkForWork();
+    }
+  }
+
+  private static JobWorkItem makeWorkItem(Uri voicemailUri) {
+    Intent intent = new Intent();
+    intent.putExtra(EXTRA_VOICEMAIL_URI, voicemailUri);
+    return new JobWorkItem(intent);
+  }
+
+  private TranscriptionConfigProvider getConfigProvider() {
+    if (configProvider == null) {
+      configProvider = new TranscriptionConfigProvider(this);
+    }
+    return configProvider;
+  }
+
+  private TranscriptionClientFactory getClientFactory() {
+    if (clientFactory == null) {
+      clientFactory = new TranscriptionClientFactory(this, getConfigProvider());
+    }
+    return clientFactory;
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java b/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java
new file mode 100644
index 0000000..a14b6df
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java
@@ -0,0 +1,206 @@
+/*
+ * Copyright (C) 2017 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.voicemail.impl.transcribe;
+
+import android.annotation.TargetApi;
+import android.app.job.JobWorkItem;
+import android.content.Context;
+import android.net.Uri;
+import android.text.TextUtils;
+import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.voicemail.impl.VvmLog;
+import com.android.voicemail.impl.transcribe.TranscriptionService.JobCallback;
+import com.android.voicemail.impl.transcribe.grpc.TranscriptionClient;
+import com.android.voicemail.impl.transcribe.grpc.TranscriptionClientFactory;
+import com.google.internal.communications.voicemailtranscription.v1.AudioFormat;
+import com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest;
+import com.google.protobuf.ByteString;
+import io.grpc.Status;
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * Background task to get a voicemail transcription and update the database.
+ *
+ * <pre>
+ * This task performs the following steps:
+ *   1. Update the transcription-state in the database to 'in-progress'
+ *   2. Create grpc client and transcription request
+ *   3. Make synchronous grpc transcription request to backend server
+ *     3a. On response
+ *       Update the database with transcription (if successful) and new transcription-state
+ *     3b. On network error
+ *       If retry-count < max then increment retry-count and retry the request
+ *       Otherwise update the transcription-state in the database to 'transcription-failed'
+ *   4. Notify the callback that the work item is complete
+ * </pre>
+ */
+public class TranscriptionTask implements Runnable {
+  private static final String TAG = "TranscriptionTask";
+
+  private final Context context;
+  private final JobCallback callback;
+  private final JobWorkItem workItem;
+  private final TranscriptionClientFactory clientFactory;
+  private final Uri voicemailUri;
+  private final TranscriptionDbHelper databaseHelper;
+  private ByteString audioData;
+  private AudioFormat encoding;
+
+  private static final int MAX_RETRIES = 2;
+  static final String AMR_PREFIX = "#!AMR\n";
+
+  public TranscriptionTask(
+      Context context,
+      JobCallback callback,
+      JobWorkItem workItem,
+      TranscriptionClientFactory clientFactory) {
+    this.context = context;
+    this.callback = callback;
+    this.workItem = workItem;
+    this.clientFactory = clientFactory;
+    this.voicemailUri = getVoicemailUri(workItem);
+    databaseHelper = new TranscriptionDbHelper(context, voicemailUri);
+  }
+
+  @Override
+  public void run() {
+    VvmLog.i(TAG, "run");
+    if (readAndValidateAudioFile()) {
+      updateTranscriptionState(VoicemailCompat.TRANSCRIPTION_IN_PROGRESS);
+      transcribeVoicemail();
+    } else {
+      updateTranscriptionState(VoicemailCompat.TRANSCRIPTION_FAILED);
+    }
+    ThreadUtil.postOnUiThread(
+        () -> {
+          callback.onWorkCompleted(workItem);
+        });
+  }
+
+  private void transcribeVoicemail() {
+    VvmLog.i(TAG, "transcribeVoicemail");
+    TranscribeVoicemailRequest request = makeRequest();
+    TranscriptionClient client = clientFactory.getClient();
+    String transcript = null;
+    for (int i = 0; transcript == null && i < MAX_RETRIES; i++) {
+      VvmLog.i(TAG, "transcribeVoicemail, try: " + (i + 1));
+      if (i == 0) {
+        Logger.get(context).logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_REQUEST_SENT);
+      } else {
+        Logger.get(context).logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_REQUEST_RETRY);
+      }
+      TranscriptionClient.TranscriptionResponseWrapper responseWrapper =
+          client.transcribeVoicemail(request);
+      if (responseWrapper.status != null) {
+        VvmLog.i(TAG, "transcribeVoicemail, status: " + responseWrapper.status.getCode());
+        if (shouldRetryRequest(responseWrapper.status)) {
+          Logger.get(context)
+              .logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_RECOVERABLE_ERROR);
+          backoff(i);
+        } else {
+          Logger.get(context)
+              .logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_FATAL_ERROR);
+          break;
+        }
+      } else if (responseWrapper.response != null) {
+        if (!TextUtils.isEmpty(responseWrapper.response.getTranscript())) {
+          VvmLog.i(TAG, "transcribeVoicemail, got response");
+          transcript = responseWrapper.response.getTranscript();
+          Logger.get(context)
+              .logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_SUCCESS);
+        } else {
+          VvmLog.i(TAG, "transcribeVoicemail, empty transcription");
+          Logger.get(context).logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_EMPTY);
+        }
+      } else {
+        VvmLog.w(TAG, "transcribeVoicemail, no response");
+        Logger.get(context).logImpression(DialerImpression.Type.VVM_TRANSCRIPTION_RESPONSE_INVALID);
+      }
+    }
+
+    int newState =
+        (transcript == null)
+            ? VoicemailCompat.TRANSCRIPTION_FAILED
+            : VoicemailCompat.TRANSCRIPTION_AVAILABLE;
+    updateTranscriptionAndState(transcript, newState);
+  }
+
+  private static boolean shouldRetryRequest(Status status) {
+    return status.getCode() == Status.Code.UNAVAILABLE;
+  }
+
+  private static void backoff(int retryCount) {
+    VvmLog.i(TAG, "backoff, count: " + retryCount);
+    try {
+      long millis = (1 << retryCount) * 1000;
+      Thread.sleep(millis);
+    } catch (InterruptedException e) {
+      VvmLog.w(TAG, "interrupted");
+      Thread.currentThread().interrupt();
+    }
+  }
+
+  private void updateTranscriptionAndState(String transcript, int newState) {
+    databaseHelper.setTranscriptionAndState(transcript, newState);
+  }
+
+  private void updateTranscriptionState(int newState) {
+    databaseHelper.setTranscriptionState(newState);
+  }
+
+  private TranscribeVoicemailRequest makeRequest() {
+    return TranscribeVoicemailRequest.newBuilder()
+        .setVoicemailData(audioData)
+        .setAudioFormat(encoding)
+        .build();
+  }
+
+  // Uses try-with-resource
+  @TargetApi(android.os.Build.VERSION_CODES.M)
+  private boolean readAndValidateAudioFile() {
+    if (voicemailUri == null) {
+      VvmLog.i(TAG, "Transcriber.readAndValidateAudioFile, file not found.");
+      return false;
+    } else {
+      VvmLog.i(TAG, "Transcriber.readAndValidateAudioFile, reading: " + voicemailUri);
+    }
+
+    try (InputStream in = context.getContentResolver().openInputStream(voicemailUri)) {
+      audioData = ByteString.readFrom(in);
+      VvmLog.i(TAG, "Transcriber.readAndValidateAudioFile, read " + audioData.size() + " bytes");
+    } catch (IOException e) {
+      VvmLog.e(TAG, "Transcriber.readAndValidateAudioFile", e);
+      return false;
+    }
+
+    if (audioData.startsWith(ByteString.copyFromUtf8(AMR_PREFIX))) {
+      encoding = AudioFormat.AMR_NB_8KHZ;
+    } else {
+      VvmLog.i(TAG, "Transcriber.readAndValidateAudioFile, unknown encoding");
+      encoding = AudioFormat.AUDIO_FORMAT_UNSPECIFIED;
+      return false;
+    }
+
+    return true;
+  }
+
+  private static Uri getVoicemailUri(JobWorkItem workItem) {
+    return workItem.getIntent().getParcelableExtra(TranscriptionService.EXTRA_VOICEMAIL_URI);
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java b/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java
new file mode 100644
index 0000000..c6e30c6
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java
@@ -0,0 +1,59 @@
+/*
+ * Copyright (C) 2017 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.voicemail.impl.transcribe;
+
+/**
+ * Provide access to new API constants before they're publicly available
+ *
+ * <p>Copied from android.provider.VoicemailContract.Voicemails. These should become public in O-MR1
+ * and these constants can be removed then.
+ */
+public class VoicemailCompat {
+
+  /**
+   * The state of the voicemail transcription.
+   *
+   * <p>Possible values: {@link #TRANSCRIPTION_NOT_STARTED}, {@link #TRANSCRIPTION_IN_PROGRESS},
+   * {@link #TRANSCRIPTION_FAILED}, {@link #TRANSCRIPTION_AVAILABLE}.
+   *
+   * <p>Type: INTEGER
+   */
+  public static final String TRANSCRIPTION_STATE = "transcription_state";
+
+  /**
+   * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has not yet been
+   * attempted.
+   */
+  public static final int TRANSCRIPTION_NOT_STARTED = 0;
+
+  /**
+   * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has begun but is not yet
+   * complete.
+   */
+  public static final int TRANSCRIPTION_IN_PROGRESS = 1;
+
+  /**
+   * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has been attempted and
+   * failed.
+   */
+  public static final int TRANSCRIPTION_FAILED = 2;
+
+  /**
+   * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has completed and the
+   * result has been stored in the {@link #TRANSCRIPTION} column.
+   */
+  public static final int TRANSCRIPTION_AVAILABLE = 3;
+}
diff --git a/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClient.java b/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClient.java
new file mode 100644
index 0000000..27603d9
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClient.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2017 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.voicemail.impl.transcribe.grpc;
+
+import android.support.annotation.Nullable;
+import android.support.annotation.WorkerThread;
+import com.android.dialer.common.Assert;
+import com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest;
+import com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse;
+import com.google.internal.communications.voicemailtranscription.v1.VoicemailTranscriptionServiceGrpc;
+import io.grpc.Status;
+import io.grpc.StatusRuntimeException;
+
+/** Wrapper around Grpc transcription server stub */
+public class TranscriptionClient {
+
+  private final VoicemailTranscriptionServiceGrpc.VoicemailTranscriptionServiceBlockingStub stub;
+
+  /** Wraps the server response and status objects, either of which may be null. */
+  public static class TranscriptionResponseWrapper {
+    public final TranscribeVoicemailResponse response;
+    public final Status status;
+
+    public TranscriptionResponseWrapper(
+        @Nullable TranscribeVoicemailResponse response, @Nullable Status status) {
+      Assert.checkArgument(!(response == null && status == null));
+      this.response = response;
+      this.status = status;
+    }
+  }
+
+  TranscriptionClient(
+      VoicemailTranscriptionServiceGrpc.VoicemailTranscriptionServiceBlockingStub stub) {
+    this.stub = stub;
+  }
+
+  @WorkerThread
+  public TranscriptionResponseWrapper transcribeVoicemail(TranscribeVoicemailRequest request) {
+    TranscribeVoicemailResponse response = null;
+    Status status = null;
+    try {
+      response = stub.transcribeVoicemail(request);
+    } catch (StatusRuntimeException e) {
+      status = e.getStatus();
+    }
+    return new TranscriptionClient.TranscriptionResponseWrapper(response, status);
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClientFactory.java b/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClientFactory.java
new file mode 100644
index 0000000..6101ed5
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClientFactory.java
@@ -0,0 +1,194 @@
+/*
+ * Copyright (C) 2017 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.voicemail.impl.transcribe.grpc;
+
+import android.content.Context;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.text.TextUtils;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.voicemail.impl.transcribe.TranscriptionConfigProvider;
+import com.google.internal.communications.voicemailtranscription.v1.VoicemailTranscriptionServiceGrpc;
+import io.grpc.CallOptions;
+import io.grpc.Channel;
+import io.grpc.ClientCall;
+import io.grpc.ClientInterceptor;
+import io.grpc.ClientInterceptors;
+import io.grpc.ForwardingClientCall;
+import io.grpc.ManagedChannel;
+import io.grpc.ManagedChannelBuilder;
+import io.grpc.Metadata;
+import io.grpc.MethodDescriptor;
+import io.grpc.okhttp.OkHttpChannelBuilder;
+import java.security.MessageDigest;
+
+/**
+ * Factory for creating grpc clients that talk to the transcription server. This allows all clients
+ * to share the same channel, which is relatively expensive to create.
+ */
+public class TranscriptionClientFactory {
+  private static final String DIGEST_ALGORITHM_SHA1 = "SHA1";
+  private static final char[] HEX_UPPERCASE = {
+    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'
+  };
+
+  private final TranscriptionConfigProvider configProvider;
+  private final ManagedChannel originalChannel;
+  private final String packageName;
+  private final String cert;
+
+  public TranscriptionClientFactory(Context context, TranscriptionConfigProvider configProvider) {
+    this(context, configProvider, getManagedChannel(configProvider));
+  }
+
+  public TranscriptionClientFactory(
+      Context context, TranscriptionConfigProvider configProvider, ManagedChannel managedChannel) {
+    this.configProvider = configProvider;
+    this.packageName = context.getPackageName();
+    this.cert = getCertificateFingerprint(context);
+    originalChannel = managedChannel;
+  }
+
+  public TranscriptionClient getClient() {
+    LogUtil.enterBlock("TranscriptionClientFactory.getClient");
+    Assert.checkState(!originalChannel.isShutdown());
+    Channel channel =
+        ClientInterceptors.intercept(
+            originalChannel,
+            new Interceptor(
+                packageName, cert, configProvider.getApiKey(), configProvider.getAuthToken()));
+    return new TranscriptionClient(VoicemailTranscriptionServiceGrpc.newBlockingStub(channel));
+  }
+
+  public void shutdown() {
+    LogUtil.enterBlock("TranscriptionClientFactory.shutdown");
+    originalChannel.shutdown();
+  }
+
+  private static ManagedChannel getManagedChannel(TranscriptionConfigProvider configProvider) {
+    ManagedChannelBuilder<OkHttpChannelBuilder> builder =
+        OkHttpChannelBuilder.forTarget(configProvider.getServerAddress());
+    // Only use plaintext for debugging
+    if (configProvider.shouldUsePlaintext()) {
+      // Just passing 'false' doesnt have the same effect as not setting this field
+      builder.usePlaintext(true);
+    }
+    return builder.build();
+  }
+
+  private static String getCertificateFingerprint(Context context) {
+    try {
+      PackageInfo packageInfo =
+          context
+              .getPackageManager()
+              .getPackageInfo(context.getPackageName(), PackageManager.GET_SIGNATURES);
+      if (packageInfo != null
+          && packageInfo.signatures != null
+          && packageInfo.signatures.length > 0) {
+        MessageDigest messageDigest = MessageDigest.getInstance(DIGEST_ALGORITHM_SHA1);
+        if (messageDigest == null) {
+          LogUtil.w(
+              "TranscriptionClientFactory.getCertificateFingerprint", "error getting digest.");
+          return null;
+        }
+        byte[] bytes = messageDigest.digest(packageInfo.signatures[0].toByteArray());
+        if (bytes == null) {
+          LogUtil.w(
+              "TranscriptionClientFactory.getCertificateFingerprint", "empty message digest.");
+          return null;
+        }
+
+        int length = bytes.length;
+        StringBuilder out = new StringBuilder(length * 2);
+        for (int i = 0; i < length; i++) {
+          out.append(HEX_UPPERCASE[(bytes[i] & 0xf0) >>> 4]);
+          out.append(HEX_UPPERCASE[bytes[i] & 0x0f]);
+        }
+        return out.toString();
+      } else {
+        LogUtil.w(
+            "TranscriptionClientFactory.getCertificateFingerprint",
+            "failed to get package signature.");
+      }
+    } catch (Exception e) {
+      LogUtil.e(
+          "TranscriptionClientFactory.getCertificateFingerprint",
+          "error getting certificate fingerprint.",
+          e);
+    }
+
+    return null;
+  }
+
+  private static final class Interceptor implements ClientInterceptor {
+    private final String packageName;
+    private final String cert;
+    private final String apiKey;
+    private final String authToken;
+
+    private static final Metadata.Key<String> API_KEY_HEADER =
+        Metadata.Key.of("X-Goog-Api-Key", Metadata.ASCII_STRING_MARSHALLER);
+    private static final Metadata.Key<String> ANDROID_PACKAGE_HEADER =
+        Metadata.Key.of("X-Android-Package", Metadata.ASCII_STRING_MARSHALLER);
+    private static final Metadata.Key<String> ANDROID_CERT_HEADER =
+        Metadata.Key.of("X-Android-Cert", Metadata.ASCII_STRING_MARSHALLER);
+    private static final Metadata.Key<String> AUTHORIZATION_HEADER =
+        Metadata.Key.of("authorization", Metadata.ASCII_STRING_MARSHALLER);
+
+    public Interceptor(String packageName, String cert, String apiKey, String authToken) {
+      this.packageName = packageName;
+      this.cert = cert;
+      this.apiKey = apiKey;
+      this.authToken = authToken;
+    }
+
+    @Override
+    public <ReqT, RespT> ClientCall<ReqT, RespT> interceptCall(
+        MethodDescriptor<ReqT, RespT> method, CallOptions callOptions, Channel next) {
+      LogUtil.enterBlock(
+          "TranscriptionClientFactory.interceptCall, intercepted " + method.getFullMethodName());
+      ClientCall<ReqT, RespT> call = next.newCall(method, callOptions);
+
+      call =
+          new ForwardingClientCall.SimpleForwardingClientCall<ReqT, RespT>(call) {
+            @Override
+            public void start(Listener<RespT> responseListener, Metadata headers) {
+              if (!TextUtils.isEmpty(packageName)) {
+                LogUtil.i(
+                    "TranscriptionClientFactory.interceptCall",
+                    "attaching package name: " + packageName);
+                headers.put(ANDROID_PACKAGE_HEADER, packageName);
+              }
+              if (!TextUtils.isEmpty(cert)) {
+                LogUtil.i("TranscriptionClientFactory.interceptCall", "attaching android cert");
+                headers.put(ANDROID_CERT_HEADER, cert);
+              }
+              if (!TextUtils.isEmpty(apiKey)) {
+                LogUtil.i("TranscriptionClientFactory.interceptCall", "attaching API Key");
+                headers.put(API_KEY_HEADER, apiKey);
+              }
+              if (!TextUtils.isEmpty(authToken)) {
+                LogUtil.i("TranscriptionClientFactory.interceptCall", "attaching auth token");
+                headers.put(AUTHORIZATION_HEADER, "Bearer " + authToken);
+              }
+              super.start(responseListener, headers);
+            }
+          };
+      return call;
+    }
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/grpc/voicemail_transcription.proto b/java/com/android/voicemail/impl/transcribe/grpc/voicemail_transcription.proto
new file mode 100644
index 0000000..4b1e19b
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/grpc/voicemail_transcription.proto
@@ -0,0 +1,44 @@
+// LINT.IfChange
+
+syntax = "proto2";
+
+package google.internal.communications.voicemailtranscription.v1;
+
+option java_multiple_files = true;
+option java_package = "com.google.internal.communications.voicemailtranscription.v1";
+option optimize_for = LITE_RUNTIME;
+
+// Enum that specifies supported audio formats.
+enum AudioFormat {
+  // Default but invalid value.
+  AUDIO_FORMAT_UNSPECIFIED = 0;
+
+  // Adaptive Multi-Rate Narrowband, 8kHz sampling frequency.
+  // https://en.wikipedia.org/wiki/Adaptive_Multi-Rate_audio_codec
+  AMR_NB_8KHZ = 1;
+}
+
+// Request for synchronous voicemail transcription.
+message TranscribeVoicemailRequest {
+  // Voicemail audio file containing the raw bytes we receive from the carrier.
+  optional bytes voicemail_data = 1;
+
+  // Audio format of the voicemail file.
+  optional AudioFormat audio_format = 2;
+}
+
+// Response for synchronous voicemail transcription.
+message TranscribeVoicemailResponse {
+  // The transcribed text of the voicemail.
+  optional string transcript = 1;
+}
+
+// RPC service for transcribing voicemails.
+service VoicemailTranscriptionService {
+  // Returns a transcript of the given voicemail.
+  rpc TranscribeVoicemail(TranscribeVoicemailRequest)
+      returns (TranscribeVoicemailResponse) {}
+}
+
+// LINT.ThenChange(//depot/google3/google/internal/communications/voicemailtranscription/v1/\
+//         voicemail_transcription.proto)
diff --git a/java/com/android/voicemail/permissions.xml b/java/com/android/voicemail/permissions.xml
deleted file mode 100644
index bedf068..0000000
--- a/java/com/android/voicemail/permissions.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-  package="com.android.voicemailomtp">
-
-  <uses-sdk
-    android:minSdkVersion="23"
-    android:targetSdkVersion="26"/>
-
-  <!-- Applications using this module should merge these permissions using android_manifest_merge -->
-
-  <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"/>
-  <uses-permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"/>
-  <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"/>
-  <uses-permission android:name="android.permission.WAKE_LOCK"/>
-  <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
-  <uses-permission android:name="android.permission.SEND_SMS"/>
-  <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
-  <uses-permission android:name="android.permission.INTERNET"/>
-  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
-
-  <application/>
-</manifest>
