Merge "Fixed issue that SIM name was not completely displayed in select dialog" am: 5d2590d55e am: d0f348f01e
am: fd731df0da

Change-Id: I6889a75a3812c445286ed4b1f9282fc5fde1548c
diff --git a/res/drawable-hdpi/googlelogo_dark20_color_132x44.png b/res/drawable-hdpi/googlelogo_dark20_color_132x44.png
deleted file mode 100644
index 078c8a8..0000000
--- a/res/drawable-hdpi/googlelogo_dark20_color_132x44.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/googlelogo_dark20_color_184x60.png b/res/drawable-hdpi/googlelogo_dark20_color_184x60.png
deleted file mode 100644
index 9d25e3d..0000000
--- a/res/drawable-hdpi/googlelogo_dark20_color_184x60.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/product_logo_contacts_color_144.png b/res/drawable-hdpi/product_logo_contacts_color_144.png
index d26a363..293a85e 100644
--- a/res/drawable-hdpi/product_logo_contacts_color_144.png
+++ b/res/drawable-hdpi/product_logo_contacts_color_144.png
Binary files differ
diff --git a/res/drawable-hdpi/product_logo_contacts_color_192.png b/res/drawable-hdpi/product_logo_contacts_color_192.png
index ebd8a8b..04a5a10 100644
--- a/res/drawable-hdpi/product_logo_contacts_color_192.png
+++ b/res/drawable-hdpi/product_logo_contacts_color_192.png
Binary files differ
diff --git a/res/drawable-mdpi/googlelogo_dark20_color_132x44.png b/res/drawable-mdpi/googlelogo_dark20_color_132x44.png
deleted file mode 100644
index a045dab..0000000
--- a/res/drawable-mdpi/googlelogo_dark20_color_132x44.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/googlelogo_dark20_color_184x60.png b/res/drawable-mdpi/googlelogo_dark20_color_184x60.png
deleted file mode 100644
index d1181a9..0000000
--- a/res/drawable-mdpi/googlelogo_dark20_color_184x60.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/product_logo_contacts_color_144.png b/res/drawable-mdpi/product_logo_contacts_color_144.png
index e28097c..27c571e 100644
--- a/res/drawable-mdpi/product_logo_contacts_color_144.png
+++ b/res/drawable-mdpi/product_logo_contacts_color_144.png
Binary files differ
diff --git a/res/drawable-mdpi/product_logo_contacts_color_192.png b/res/drawable-mdpi/product_logo_contacts_color_192.png
index a8fcbf0..6e79412 100644
--- a/res/drawable-mdpi/product_logo_contacts_color_192.png
+++ b/res/drawable-mdpi/product_logo_contacts_color_192.png
Binary files differ
diff --git a/res/drawable-sw600dp/quantum_launchscreen_contacts.xml b/res/drawable-sw600dp/quantum_launchscreen_contacts.xml
index 5cc35d5..0272a01 100755
--- a/res/drawable-sw600dp/quantum_launchscreen_contacts.xml
+++ b/res/drawable-sw600dp/quantum_launchscreen_contacts.xml
@@ -24,11 +24,4 @@
             android:gravity="center"
             android:src="@drawable/product_logo_contacts_color_192" />
     </item>
-    <item
-        android:id="@+id/launchscreens_logo_text"
-        android:bottom="@dimen/launchscreens_google_logo_bottom">
-        <bitmap
-            android:gravity="center_horizontal|bottom"
-            android:src="@drawable/googlelogo_dark20_color_184x60" />
-    </item>
 </layer-list>
diff --git a/res/drawable-xhdpi/googlelogo_dark20_color_132x44.png b/res/drawable-xhdpi/googlelogo_dark20_color_132x44.png
deleted file mode 100644
index 437f083..0000000
--- a/res/drawable-xhdpi/googlelogo_dark20_color_132x44.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/googlelogo_dark20_color_184x60.png b/res/drawable-xhdpi/googlelogo_dark20_color_184x60.png
deleted file mode 100644
index 2bd813f..0000000
--- a/res/drawable-xhdpi/googlelogo_dark20_color_184x60.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/product_logo_contacts_color_144.png b/res/drawable-xhdpi/product_logo_contacts_color_144.png
index ebd8a8b..04a5a10 100644
--- a/res/drawable-xhdpi/product_logo_contacts_color_144.png
+++ b/res/drawable-xhdpi/product_logo_contacts_color_144.png
Binary files differ
diff --git a/res/drawable-xhdpi/product_logo_contacts_color_192.png b/res/drawable-xhdpi/product_logo_contacts_color_192.png
index 690bbd0..35d80e4 100644
--- a/res/drawable-xhdpi/product_logo_contacts_color_192.png
+++ b/res/drawable-xhdpi/product_logo_contacts_color_192.png
Binary files differ
diff --git a/res/drawable-xxhdpi/googlelogo_dark20_color_132x44.png b/res/drawable-xxhdpi/googlelogo_dark20_color_132x44.png
deleted file mode 100644
index b22fba6..0000000
--- a/res/drawable-xxhdpi/googlelogo_dark20_color_132x44.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/googlelogo_dark20_color_184x60.png b/res/drawable-xxhdpi/googlelogo_dark20_color_184x60.png
deleted file mode 100644
index 6e4193e..0000000
--- a/res/drawable-xxhdpi/googlelogo_dark20_color_184x60.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/product_logo_contacts_color_144.png b/res/drawable-xxhdpi/product_logo_contacts_color_144.png
index 8ff6a14..12c582b 100644
--- a/res/drawable-xxhdpi/product_logo_contacts_color_144.png
+++ b/res/drawable-xxhdpi/product_logo_contacts_color_144.png
Binary files differ
diff --git a/res/drawable-xxhdpi/product_logo_contacts_color_192.png b/res/drawable-xxhdpi/product_logo_contacts_color_192.png
index c32d9cd..baa0003 100644
--- a/res/drawable-xxhdpi/product_logo_contacts_color_192.png
+++ b/res/drawable-xxhdpi/product_logo_contacts_color_192.png
Binary files differ
diff --git a/res/drawable-xxxhdpi/googlelogo_dark20_color_132x44.png b/res/drawable-xxxhdpi/googlelogo_dark20_color_132x44.png
deleted file mode 100644
index 7372b47..0000000
--- a/res/drawable-xxxhdpi/googlelogo_dark20_color_132x44.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxxhdpi/googlelogo_dark20_color_184x60.png b/res/drawable-xxxhdpi/googlelogo_dark20_color_184x60.png
deleted file mode 100644
index 60de38b..0000000
--- a/res/drawable-xxxhdpi/googlelogo_dark20_color_184x60.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxxhdpi/product_logo_contacts_color_144.png b/res/drawable-xxxhdpi/product_logo_contacts_color_144.png
index c32d9cd..baa0003 100644
--- a/res/drawable-xxxhdpi/product_logo_contacts_color_144.png
+++ b/res/drawable-xxxhdpi/product_logo_contacts_color_144.png
Binary files differ
diff --git a/res/drawable-xxxhdpi/product_logo_contacts_color_192.png b/res/drawable-xxxhdpi/product_logo_contacts_color_192.png
index 1346cbc..f1a62e6 100644
--- a/res/drawable-xxxhdpi/product_logo_contacts_color_192.png
+++ b/res/drawable-xxxhdpi/product_logo_contacts_color_192.png
Binary files differ
diff --git a/res/drawable/ic_work_profile.xml b/res/drawable/ic_work_profile.xml
index bacfe69..d30e8e1 100644
--- a/res/drawable/ic_work_profile.xml
+++ b/res/drawable/ic_work_profile.xml
@@ -1,17 +1,9 @@
-<?xml version="1.0" encoding="utf-8"?>
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
-    android:width="16dp"
-    android:height="16dp"
-    android:viewportWidth="48"
-    android:viewportHeight="48">
-
-    <!-- //java/com/google/android/assets/quantum:ic_enterprise_grey600_16 -->
-
+        android:width="16dp"
+        android:height="16dp"
+        android:viewportWidth="24.0"
+        android:viewportHeight="24.0">
     <path
-        android:fillColor="#757575"
-        android:pathData="M28 33h-8v-3H6v8c0 2.2 1.8 4 4 4h28c2.2 0 4-1.8
-4-4v-8H28v3zm12-21h-7V9l-3-3H18l-3 3.1V12H8c-2.2 0-4 1.8-4 4v8c0 2.2 1.8 4 4
-4h12v-3h8v3h12c2.2 0 4-1.8 4-4v-8c0-2.2-1.8-4-4-4zm-10 0H18V9h12v3z" />
-    <path
-        android:pathData="M0 0h48v48H0z" />
+        android:pathData="M20,6h-4V4c0,-1.11 -0.89,-2 -2,-2h-4C8.89,2 8,2.89 8,4v2H4C2.89,6 2.01,6.89 2.01,8L2,19c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2V8C22,6.89 21.11,6 20,6zM12,15c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2s2,0.9 2,2S13.1,15 12,15zM14,6h-4V4h4V6z"
+        android:fillColor="#7F7F7F"/>
 </vector>
diff --git a/res/drawable/quantum_launchscreen_contacts.xml b/res/drawable/quantum_launchscreen_contacts.xml
index 1995899..276b2da 100755
--- a/res/drawable/quantum_launchscreen_contacts.xml
+++ b/res/drawable/quantum_launchscreen_contacts.xml
@@ -24,11 +24,4 @@
         android:gravity="center"
         android:src="@drawable/product_logo_contacts_color_144" />
   </item>
-  <item
-      android:id="@+id/launchscreens_logo_text"
-      android:bottom="@dimen/launchscreens_google_logo_bottom">
-    <bitmap
-        android:gravity="center_horizontal|bottom"
-        android:src="@drawable/googlelogo_dark20_color_132x44" />
-  </item>
 </layer-list>
diff --git a/res/mipmap-anydpi-v26/ic_contacts_launcher.xml b/res/mipmap-anydpi-v26/ic_contacts_launcher.xml
deleted file mode 100644
index 784f6e3..0000000
--- a/res/mipmap-anydpi-v26/ic_contacts_launcher.xml
+++ /dev/null
@@ -1,19 +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.
--->
-<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
-    <background android:drawable="@color/ic_contacts_launcher_background"/>
-    <foreground android:drawable="@mipmap/ic_contacts_launcher_foreground"/>
-</adaptive-icon>
\ No newline at end of file
diff --git a/res/mipmap-hdpi/ic_contacts_launcher.png b/res/mipmap-hdpi/ic_contacts_launcher.png
index 0fd1492..64eff00 100644
--- a/res/mipmap-hdpi/ic_contacts_launcher.png
+++ b/res/mipmap-hdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/res/mipmap-hdpi/ic_contacts_launcher_foreground.png b/res/mipmap-hdpi/ic_contacts_launcher_foreground.png
deleted file mode 100644
index 8088777..0000000
--- a/res/mipmap-hdpi/ic_contacts_launcher_foreground.png
+++ /dev/null
Binary files differ
diff --git a/res/mipmap-mdpi/ic_contacts_launcher.png b/res/mipmap-mdpi/ic_contacts_launcher.png
index e23930b..b4ee821 100644
--- a/res/mipmap-mdpi/ic_contacts_launcher.png
+++ b/res/mipmap-mdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/res/mipmap-mdpi/ic_contacts_launcher_foreground.png b/res/mipmap-mdpi/ic_contacts_launcher_foreground.png
deleted file mode 100644
index abea159..0000000
--- a/res/mipmap-mdpi/ic_contacts_launcher_foreground.png
+++ /dev/null
Binary files differ
diff --git a/res/mipmap-xhdpi/ic_contacts_launcher.png b/res/mipmap-xhdpi/ic_contacts_launcher.png
index aff0f31..6feeadf 100644
--- a/res/mipmap-xhdpi/ic_contacts_launcher.png
+++ b/res/mipmap-xhdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/res/mipmap-xhdpi/ic_contacts_launcher_foreground.png b/res/mipmap-xhdpi/ic_contacts_launcher_foreground.png
deleted file mode 100644
index 1fb6752..0000000
--- a/res/mipmap-xhdpi/ic_contacts_launcher_foreground.png
+++ /dev/null
Binary files differ
diff --git a/res/mipmap-xxhdpi/ic_contacts_launcher.png b/res/mipmap-xxhdpi/ic_contacts_launcher.png
index 9cd2ebe..01a3fde 100644
--- a/res/mipmap-xxhdpi/ic_contacts_launcher.png
+++ b/res/mipmap-xxhdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/res/mipmap-xxhdpi/ic_contacts_launcher_foreground.png b/res/mipmap-xxhdpi/ic_contacts_launcher_foreground.png
deleted file mode 100644
index f1be7b1..0000000
--- a/res/mipmap-xxhdpi/ic_contacts_launcher_foreground.png
+++ /dev/null
Binary files differ
diff --git a/res/mipmap-xxxhdpi/ic_contacts_launcher.png b/res/mipmap-xxxhdpi/ic_contacts_launcher.png
index 74c4179..328e067 100644
--- a/res/mipmap-xxxhdpi/ic_contacts_launcher.png
+++ b/res/mipmap-xxxhdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/res/mipmap-xxxhdpi/ic_contacts_launcher_foreground.png b/res/mipmap-xxxhdpi/ic_contacts_launcher_foreground.png
deleted file mode 100644
index 4b1a4b4..0000000
--- a/res/mipmap-xxxhdpi/ic_contacts_launcher_foreground.png
+++ /dev/null
Binary files differ
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index ac64425..8e79099 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -29,8 +29,8 @@
     <string name="header_entry_contact_list_adapter_header_title" msgid="2436981165830115659">"إنشاء جهة اتصال جديدة"</string>
     <string name="searchHint" msgid="8482945356247760701">"البحث في جهات الاتصال"</string>
     <string name="menu_addStar" msgid="2908478235715404876">"إضافة إلى المفضلة"</string>
-    <string name="menu_removeStar" msgid="5844227078364227030">"إزالة من المفضلة"</string>
-    <string name="description_action_menu_remove_star" msgid="4699640108012265178">"تمت الإزالة من المفضلة"</string>
+    <string name="menu_removeStar" msgid="5844227078364227030">"الإزالة من العناصر المفضّلة"</string>
+    <string name="description_action_menu_remove_star" msgid="4699640108012265178">"تمت الإزالة من العناصر المفضّلة"</string>
     <string name="description_action_menu_add_star" msgid="3327186327234177456">"تمت الإضافة إلى المفضلة"</string>
     <string name="menu_editContact" msgid="9042415603857662633">"تعديل"</string>
     <string name="menu_deleteContact" msgid="6788644058868189393">"حذف"</string>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index 091b09e..c14e050 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -22,9 +22,9 @@
     <string name="shortcutContact" msgid="749243779392912958">"Kontakt"</string>
     <string name="shortcutDialContact" msgid="746622101599186779">"Direktno biranje"</string>
     <string name="shortcutMessageContact" msgid="2460337253595976198">"Direktna poruka"</string>
-    <string name="shortcutActivityTitle" msgid="1504383567778497348">"Izaberi kontakt"</string>
+    <string name="shortcutActivityTitle" msgid="1504383567778497348">"Odaberi kontakt"</string>
     <string name="contactInsertOrEditActivityTitle" msgid="6527505405325862674">"Dodaj u kontakt"</string>
-    <string name="contactPickerActivityTitle" msgid="4301062192337417640">"Izaberi kontakt"</string>
+    <string name="contactPickerActivityTitle" msgid="4301062192337417640">"Odaberi kontakt"</string>
     <string name="groupMemberPickerActivityTitle" msgid="1431750793695262522">"Odaberi"</string>
     <string name="header_entry_contact_list_adapter_header_title" msgid="2436981165830115659">"Napravi novi kontakt"</string>
     <string name="searchHint" msgid="8482945356247760701">"Pretraži kontakte"</string>
@@ -57,7 +57,7 @@
     <string name="menu_linkedContacts" msgid="400444389718855621">"Prikaz povezanih kontakata"</string>
     <string name="menu_save" msgid="1727844363591825909">"Sačuvaj"</string>
     <string name="titleJoinContactDataWith" msgid="6825255752748313944">"Poveži kontakte"</string>
-    <string name="blurbJoinContactDataWith" msgid="5864256698061641841">"Izaberite kontakt koji želite povezati s kontaktom <xliff:g id="NAME">%s</xliff:g>:"</string>
+    <string name="blurbJoinContactDataWith" msgid="5864256698061641841">"Odaberite kontakt koji želite povezati s kontaktom <xliff:g id="NAME">%s</xliff:g>:"</string>
     <string name="separatorJoinAggregateSuggestions" msgid="2831414448851313345">"Predloženi kontakti"</string>
     <string name="separatorJoinAggregateAll" msgid="7939932265026181043">"Svi kontakti"</string>
     <string name="contactsJoinedNamedMessage" msgid="1299418263439579455">"<xliff:g id="NAME">%s</xliff:g> je povezan"</string>
@@ -127,7 +127,7 @@
     <string name="groupSomeContactsNoPhonesToast" msgid="5530760834827530509">"Neki kontakti nemaju brojeve telefona."</string>
     <string name="menu_sendEmailOption" msgid="5978319931321657780">"Pošalji poruku e-pošte"</string>
     <string name="menu_sendMessageOption" msgid="8850168125274916426">"Pošalji poruku"</string>
-    <string name="pickerSelectContactsActivityTitle" msgid="1936544190231136729">"Izaberite kontakte"</string>
+    <string name="pickerSelectContactsActivityTitle" msgid="1936544190231136729">"Odaberite kontakte"</string>
     <string name="send_to_selection" msgid="2251339182881603540">"Pošalji"</string>
     <string name="listFoundAllContactsZero" msgid="922980883593159444">"Nema kontakata"</string>
     <string name="add_contact_dlg_message_fmt" msgid="7986472669444326576">"Dodati \"<xliff:g id="EMAIL">%s</xliff:g>\" u kontakte?"</string>
@@ -144,7 +144,7 @@
       <item quantity="few">Podijeli kontakte putem</item>
       <item quantity="other">Podijeli kontakte putem</item>
     </plurals>
-    <string name="dialog_new_group_account" msgid="3451312333591556651">"Izaberi račun"</string>
+    <string name="dialog_new_group_account" msgid="3451312333591556651">"Odaberi račun"</string>
     <string name="group_name_dialog_insert_title" msgid="2668452090427027941">"Napravi oznaku"</string>
     <string name="group_name_dialog_update_title" msgid="6328021162869677383">"Preimenuj oznaku"</string>
     <string name="group_name_dialog_hint" msgid="7624523157537700160">"Naziv oznake"</string>
@@ -155,7 +155,7 @@
     <string name="google_account_type_format" msgid="5283997303922067997">"Račun <xliff:g id="SOURCE">%1$s</xliff:g>"</string>
     <string name="take_photo" msgid="7496128293167402354">"Snimi fotografiju"</string>
     <string name="take_new_photo" msgid="7341354729436576304">"Snimi novu fotografiju"</string>
-    <string name="pick_photo" msgid="2129509985223564942">"Izaberi fotografiju"</string>
+    <string name="pick_photo" msgid="2129509985223564942">"Odaberi fotografiju"</string>
     <string name="pick_new_photo" msgid="9122450996263688237">"Odaberi novu fotografiju"</string>
     <string name="search_results_searching" msgid="3984833028938569930">"Pretraživanje…"</string>
     <string name="event_edit_field_hint_text" msgid="5794424930242630477">"Datum"</string>
@@ -192,11 +192,11 @@
     <string name="external_profile_title" msgid="8034998767621359438">"Moj profil <xliff:g id="EXTERNAL_SOURCE">%1$s</xliff:g>"</string>
     <string name="contact_editor_prompt_zero_accounts" msgid="6648376557574360096">"Odvojite malo vremena da dodate račun putem kojeg će se kontakti sigurnosno kopirati na Google."</string>
     <string name="contact_editor_prompt_one_account" msgid="3087691056345099310">"Novi kontakti će biti sačuvani na račun <xliff:g id="ACCOUNT_NAME">%1$s</xliff:g>."</string>
-    <string name="contact_editor_prompt_multiple_accounts" msgid="8565761674283473549">"Izaberite zadani račun za nove kontakte:"</string>
+    <string name="contact_editor_prompt_multiple_accounts" msgid="8565761674283473549">"Odaberite zadani račun za nove kontakte:"</string>
     <string name="contact_editor_title_new_contact" msgid="3042788718983070111">"Napravi novi kontakt"</string>
     <string name="contact_editor_title_existing_contact" msgid="4898475703683187798">"Uredi kontakt"</string>
     <string name="contact_editor_title_read_only_contact" msgid="2443496574528842237">"Samo prikaz"</string>
-    <string name="contact_editor_pick_raw_contact_to_edit_dialog_title" msgid="4186699385645902152">"Izaberite kontakt za uređivanje"</string>
+    <string name="contact_editor_pick_raw_contact_to_edit_dialog_title" msgid="4186699385645902152">"Odaberite kontakt za uređivanje"</string>
     <string name="contact_editor_pick_linked_contact_dialog_title" msgid="4618465940423857694">"Povezani kontakti"</string>
     <string name="contact_editor_add_linked_contact" msgid="426142748048816297">"Dodaj"</string>
     <string name="contact_editor_unlink_contacts" msgid="4525214336177236653">"Prekini povezanost"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 3dd2de8..cfc8607 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -229,7 +229,7 @@
     <string name="content_description_recent_call_type_missed" msgid="7371810920196048204">"tak terjawab"</string>
     <string name="content_description_recent_call" msgid="5183800406316723676">"panggilan telepon terbaru. <xliff:g id="CALL_TYPE">%1$s</xliff:g>. <xliff:g id="PHONE_NUMBER">%2$s</xliff:g>. <xliff:g id="DATE">%3$s</xliff:g>. klik untuk menelepon balik"</string>
     <string name="message_from_you_prefix" msgid="7180706529908434482">"Anda: <xliff:g id="SMS_BODY">%s</xliff:g>"</string>
-    <string name="editor_more_fields" msgid="3630987771304393421">"Bidang lainnya"</string>
+    <string name="editor_more_fields" msgid="3630987771304393421">"Kolom lainnya"</string>
     <string name="editor_change_photo_content_description" msgid="820879708069864340">"Ubah foto kontak"</string>
     <string name="editor_add_photo_content_description" msgid="4194479313465418120">"Tambahkan foto kontak"</string>
     <string name="editor_contact_photo_content_description" msgid="8571975622926162369">"Foto kontak"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index c97992a..2c31633 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -103,7 +103,7 @@
     <string name="createContactShortcutSuccessful" msgid="953651153238790069">"Kontakt <xliff:g id="NAME">%s</xliff:g> został dodany do ekranu głównego."</string>
     <string name="photoPickerNotFoundText" msgid="2052542573853433204">"Brak zdjęć na urządzeniu."</string>
     <string name="attach_photo_dialog_title" msgid="5599827035558557169">"Zdjęcie kontaktu"</string>
-    <string name="customLabelPickerTitle" msgid="1081475101983255212">"Nazwa etykiety niestandardowej"</string>
+    <string name="customLabelPickerTitle" msgid="1081475101983255212">"Nazwa etykiety własnej"</string>
     <string name="removePhoto" msgid="4898105274130284565">"Usuń zdjęcie"</string>
     <string name="noContacts" msgid="2228592924476426108">"Twoja lista kontaktów jest pusta"</string>
     <string name="emptyGroup" msgid="5102411903247859575">"Brak kontaktów z tą etykietą"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index 55611fc..18e0cc3 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -264,7 +264,7 @@
     <string name="call_fax_work" msgid="7467763592359059243">"Ligar para fax do emprego"</string>
     <string name="call_fax_home" msgid="8342175628887571876">"Ligar para o fax da residência"</string>
     <string name="call_pager" msgid="9003902812293983281">"Ligar para pager"</string>
-    <string name="call_other" msgid="8563753966926932052">"Ligar"</string>
+    <string name="call_other" msgid="8563753966926932052">"Telefonar"</string>
     <string name="call_callback" msgid="1910165691349426858">"Ligar para rechamada"</string>
     <string name="call_car" msgid="3280537320306436445">"Ligar para automóvel"</string>
     <string name="call_company_main" msgid="6105120947138711257">"Ligar para telefone principal da empresa"</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index de982b3..109b71f 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -37,7 +37,7 @@
     <string name="menu_change_photo" msgid="7769177631511496210">"Schimbați fotografia"</string>
     <string name="menu_create_contact_shortcut" msgid="1663022219127343858">"Creați o comandă rapidă"</string>
     <string name="menu_splitAggregate" msgid="2627252205317945563">"Disociați"</string>
-    <string name="menu_editGroup" msgid="6696843438454341063">"Eliminați intrările din Agendă"</string>
+    <string name="menu_editGroup" msgid="6696843438454341063">"Ștergeți persoane de contact"</string>
     <string name="menu_renameGroup" msgid="7169512355179757182">"Redenumiți eticheta"</string>
     <string name="menu_deleteGroup" msgid="1126469629233412249">"Ștergeți eticheta"</string>
     <string name="menu_addToGroup" msgid="3267409983764370041">"Adăugați o persoană"</string>
@@ -187,7 +187,7 @@
     <string name="cancel_confirmation_dialog_keep_editing_button" msgid="3316573928085916146">"Anulați"</string>
     <string name="leave_customize_confirmation_dialog_message" msgid="4277114551206032979">"Renunțați la personalizări?"</string>
     <string name="enter_contact_name" msgid="4594274696120278368">"Căutați în Agendă"</string>
-    <string name="title_edit_group" msgid="8602752287270586734">"Eliminați intrările din Agendă"</string>
+    <string name="title_edit_group" msgid="8602752287270586734">"Ștergeți persoane de contact"</string>
     <string name="local_profile_title" msgid="2021416826991393684">"Profilul meu local"</string>
     <string name="external_profile_title" msgid="8034998767621359438">"Profilul meu <xliff:g id="EXTERNAL_SOURCE">%1$s</xliff:g>"</string>
     <string name="contact_editor_prompt_zero_accounts" msgid="6648376557574360096">"Adăugați un cont în care se va face backup pentru agenda dvs. în Google."</string>
diff --git a/res/values-sw600dp-land/dimens.xml b/res/values-sw600dp-land/dimens.xml
index 7d9eb33..7a0fce5 100644
--- a/res/values-sw600dp-land/dimens.xml
+++ b/res/values-sw600dp-land/dimens.xml
@@ -17,7 +17,6 @@
     <!-- Copied from java/com/google/android/assets/launchscreens/res/values-sw600dp-land-v21/dimens.xml -->
     <!-- Values adjusted for nav bar size due to windowDrawsSystemBarBackgrounds -->
     <dimen name="launchscreens_product_logo_bottom">72dp</dimen>
-    <dimen name="launchscreens_google_logo_bottom">96dp</dimen>
 
     <!-- Height for the image for empty group view-->
     <dimen name="empty_view_image_height">180dp</dimen>
diff --git a/res/values-sw600dp/dimens.xml b/res/values-sw600dp/dimens.xml
index a38364c..18b43d9 100644
--- a/res/values-sw600dp/dimens.xml
+++ b/res/values-sw600dp/dimens.xml
@@ -17,7 +17,6 @@
     <!-- Copied from java/com/google/android/assets/launchscreens/res/values-sw600dp-port-v21/dimens.xml -->
     <!-- Values adjusted for nav bar size due to windowDrawsSystemBarBackgrounds -->
     <dimen name="launchscreens_product_logo_bottom">72dp</dimen>
-    <dimen name="launchscreens_google_logo_bottom">96dp</dimen>
 
     <dimen name="editor_type_label_width">122dip</dimen>
     <dimen name="shortcut_icon_size">64dip</dimen>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 5c36249..e394ea3 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -500,11 +500,11 @@
     <string name="call_subject_limit" msgid="4545212901205397669">"<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="7667188212129152558">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="about_build_version" msgid="1765533099416999801">"Версія складання"</string>
-    <string name="about_open_source_licenses" msgid="6479990452352919641">"Ліцензії з відкритим кодом"</string>
+    <string name="about_open_source_licenses" msgid="6479990452352919641">"Ліцензії відкритого коду"</string>
     <string name="about_open_source_licenses_summary" msgid="57418386931763994">"Деталі ліцензії на програмне забезпечення з відкритим кодом"</string>
     <string name="about_privacy_policy" msgid="3705518622499152626">"Політика конфіденційності"</string>
     <string name="about_terms_of_service" msgid="4642400812150296723">"Умови використання"</string>
-    <string name="activity_title_licenses" msgid="5467767062737708066">"Ліцензії з відкритим кодом"</string>
+    <string name="activity_title_licenses" msgid="5467767062737708066">"Ліцензії відкритого коду"</string>
     <string name="url_open_error_toast" msgid="452592089815420457">"Не вдалося відкрити посилання."</string>
     <string name="account_filter_view_checked" msgid="6696859503887762213">"<xliff:g id="ACCOUNT_INFO">%s</xliff:g> вибрано"</string>
     <string name="account_filter_view_not_checked" msgid="2248684521205038389">"<xliff:g id="ACCOUNT_INFO">%s</xliff:g> не вибрано"</string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 201756d..29477bb 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -257,14 +257,14 @@
     <string name="hamburger_feature_highlight_header" msgid="5762679188565585072">"Tavsiyalar"</string>
     <string name="hamburger_feature_highlight_body" msgid="4403398269286898733">"Kontaktlar bilan qulay ishlash uchun ularni tartibga soling"</string>
     <string name="undo" msgid="1425165101664071422">"Bekor qilish"</string>
-    <string name="call_custom" msgid="6385303130912713318">"Qo‘ng‘iroq qilish (<xliff:g id="CUSTOM_LABEL">%s</xliff:g>)"</string>
+    <string name="call_custom" msgid="6385303130912713318">"Chaqiruv (<xliff:g id="CUSTOM_LABEL">%s</xliff:g>)"</string>
     <string name="call_home" msgid="1990519474420545392">"Uy telefoni"</string>
     <string name="call_mobile" msgid="7502236805487609178">"Mobil telefon"</string>
     <string name="call_work" msgid="5328785911463744028">"Ishxona telefoni"</string>
     <string name="call_fax_work" msgid="7467763592359059243">"Ishxona faksi"</string>
     <string name="call_fax_home" msgid="8342175628887571876">"Uy faksi"</string>
     <string name="call_pager" msgid="9003902812293983281">"Peyjer"</string>
-    <string name="call_other" msgid="8563753966926932052">"Qo‘ng‘iroq qilish"</string>
+    <string name="call_other" msgid="8563753966926932052">"Chaqiruv"</string>
     <string name="call_callback" msgid="1910165691349426858">"Teskari chaqiruv"</string>
     <string name="call_car" msgid="3280537320306436445">"Avtomobildagi telefon"</string>
     <string name="call_company_main" msgid="6105120947138711257">"Ofis"</string>
@@ -276,9 +276,9 @@
     <string name="call_tty_tdd" msgid="8951266948204379604">"Teletayp"</string>
     <string name="call_work_mobile" msgid="8707874281430105394">"Ishxona mobil telefoni"</string>
     <string name="call_work_pager" msgid="3419348514157949008">"Ish peyjeri"</string>
-    <string name="call_assistant" msgid="670941612175068337">"Qo‘ng‘iroq qilish (<xliff:g id="CUSTOM_LABEL">%s</xliff:g>)"</string>
+    <string name="call_assistant" msgid="670941612175068337">"Chaqiruv (<xliff:g id="CUSTOM_LABEL">%s</xliff:g>)"</string>
     <string name="call_mms" msgid="6274041545876221437">"MMS markazi"</string>
-    <string name="call_by_shortcut" msgid="2566802538698913124">"<xliff:g id="CONTACT_NAME">%s</xliff:g> (Qo‘ng‘iroq qilish)"</string>
+    <string name="call_by_shortcut" msgid="2566802538698913124">"<xliff:g id="CONTACT_NAME">%s</xliff:g> (Chaqiruv)"</string>
     <string name="sms_custom" msgid="415060214233647603">"SMS yuborish (<xliff:g id="CUSTOM_LABEL">%s</xliff:g>)"</string>
     <string name="sms_home" msgid="7524332261493162995">"SMS: uy telefoni"</string>
     <string name="sms_mobile" msgid="5200107250451030769">"SMS: mobil"</string>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index e311ff3..aeba877 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -14,8 +14,6 @@
      limitations under the License.
 -->
 <resources>
-    <!-- Adaptive icon background layer color -->
-    <color name="ic_contacts_launcher_background">#2458CA</color>
     <color name="ic_add_contact_shortcut_background">#F5F5F5</color>
 
     <!-- 87% black -->
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index c14d396..f92cf79 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -19,7 +19,6 @@
     <!-- Copied from java/com/google/android/assets/launchscreens/res/values-port-v21/dimens.xml -->
     <!-- Values adjusted for nav bar size due to windowDrawsSystemBarBackgrounds -->
     <dimen name="launchscreens_product_logo_bottom">64dp</dimen>
-    <dimen name="launchscreens_google_logo_bottom">104dp</dimen>
 
     <!-- Initial height of transparent space above QuickContacts -->
     <dimen name="quickcontact_starting_empty_height">150dp</dimen>
diff --git a/src/com/android/contacts/CallUtil.java b/src/com/android/contacts/CallUtil.java
index 7172766..bba1faa 100644
--- a/src/com/android/contacts/CallUtil.java
+++ b/src/com/android/contacts/CallUtil.java
@@ -19,18 +19,23 @@
 import android.content.Context;
 import android.content.Intent;
 import android.net.Uri;
+import android.os.Bundle;
+import android.os.PersistableBundle;
 import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
 import android.telecom.VideoProfile;
+import android.telephony.CarrierConfigManager;
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
+import android.util.Log;
 
 import com.android.contacts.compat.CompatUtils;
 import com.android.contacts.compat.PhoneAccountSdkCompat;
 import com.android.contacts.util.PermissionsUtil;
 import com.android.contacts.util.PhoneNumberHelper;
 import com.android.contactsbind.FeedbackHelper;
+import com.android.contactsbind.experiments.Flags;
 import com.android.phone.common.PhoneConstants;
 
 import java.util.List;
@@ -61,6 +66,14 @@
      */
     public static final int VIDEO_CALLING_PRESENCE = 2;
 
+    /** {@link PhoneAccount#EXTRA_SUPPORTS_VIDEO_CALLING_FALLBACK} */
+    private static final String EXTRA_SUPPORTS_VIDEO_CALLING_FALLBACK =
+            "android.telecom.extra.SUPPORTS_VIDEO_CALLING_FALLBACK";
+
+    /** {@link CarrierConfigManager#CONFIG_ALLOW_VIDEO_CALLING_FALLBACK} */
+    private static final String CONFIG_ALLOW_VIDEO_CALLING_FALLBACK =
+            "allow_video_calling_fallback_bool";
+
     /**
      * Return an Intent for making a phone call. Scheme (e.g. tel, sip) will be determined
      * automatically.
@@ -210,4 +223,66 @@
         }
 
     }
+
+    /**
+     * Determines if we're able to use Tachyon as a fallback for video calling.
+     *
+     * @param context The context.
+     * @return {@code true} if there exists a call capable phone account which supports using a
+     * fallback for video calling, the carrier configuration supports a fallback, and the
+     * experiment for using a fallback is enabled. Otherwise {@code false} is returned.
+     */
+    public static boolean isTachyonEnabled(Context context) {
+        // Need to be able to read phone state, and be on at least N to check PhoneAccount extras.
+        if (!PermissionsUtil.hasPermission(context, android.Manifest.permission.READ_PHONE_STATE)
+                || !CompatUtils.isNCompatible()) {
+            return false;
+        }
+        TelecomManager telecommMgr = (TelecomManager)
+                context.getSystemService(Context.TELECOM_SERVICE);
+        if (telecommMgr == null) {
+            return false;
+        }
+        try {
+            List<PhoneAccountHandle> accountHandles = telecommMgr.getCallCapablePhoneAccounts();
+            for (PhoneAccountHandle accountHandle : accountHandles) {
+                PhoneAccount account = telecommMgr.getPhoneAccount(accountHandle);
+                if (account == null) {
+                    continue;
+                }
+                // Check availability for the device config.
+                final Bundle accountExtras = account.getExtras();
+                final boolean deviceEnabled = accountExtras != null && accountExtras.getBoolean(
+                        EXTRA_SUPPORTS_VIDEO_CALLING_FALLBACK);
+                if (Log.isLoggable(TAG, Log.DEBUG)) {
+                    Log.d(TAG, "Device video fallback config: " + deviceEnabled);
+                }
+
+                // Check availability from carrier config.
+                final PersistableBundle carrierConfig = context.getSystemService(
+                        CarrierConfigManager.class).getConfig();
+                final boolean carrierEnabled =
+                        carrierConfig != null && carrierConfig.getBoolean(
+                                CONFIG_ALLOW_VIDEO_CALLING_FALLBACK);
+                if (Log.isLoggable(TAG, Log.DEBUG)) {
+                    Log.d(TAG, "Carrier video fallback config: " + carrierEnabled);
+                }
+
+                // Check experiment value.
+                final boolean experimentEnabled = Flags.getInstance().getBoolean(
+                        Experiments.QUICK_CONTACT_VIDEO_CALL);
+                if (Log.isLoggable(TAG, Log.DEBUG)) {
+                    Log.d(TAG, "Experiment video fallback config: " + experimentEnabled);
+                }
+
+                // All three checks above must be true to enable Tachyon calling.
+                return deviceEnabled && carrierEnabled && experimentEnabled;
+            }
+            return false;
+        } catch (SecurityException e) {
+            FeedbackHelper.sendFeedback(context, TAG,
+                    "Security exception when getting call capable phone accounts", e);
+            return false;
+        }
+    }
 }
diff --git a/src/com/android/contacts/DynamicShortcuts.java b/src/com/android/contacts/DynamicShortcuts.java
index fc0d05a..ac950d9 100644
--- a/src/com/android/contacts/DynamicShortcuts.java
+++ b/src/com/android/contacts/DynamicShortcuts.java
@@ -297,6 +297,7 @@
         final ShortcutInfo.Builder builder = new ShortcutInfo.Builder(mContext, id)
                 .setIntent(action)
                 .setIcon(icon)
+                .setExtras(extras)
                 .setDisabledMessage(mContext.getString(R.string.dynamic_shortcut_disabled_message));
 
         setLabel(builder, label);
@@ -305,6 +306,9 @@
 
     public ShortcutInfo getQuickContactShortcutInfo(long id, String lookupKey, String displayName) {
         final ShortcutInfo.Builder builder = builderForContactShortcut(id, lookupKey, displayName);
+        if (builder == null) {
+            return null;
+        }
         addIconForContact(id, lookupKey, displayName, builder);
         return builder.build();
     }
diff --git a/src/com/android/contacts/ShortcutIntentBuilder.java b/src/com/android/contacts/ShortcutIntentBuilder.java
index e90e786..b3bd85d 100644
--- a/src/com/android/contacts/ShortcutIntentBuilder.java
+++ b/src/com/android/contacts/ShortcutIntentBuilder.java
@@ -276,6 +276,9 @@
     private void createContactShortcutIntent(Uri contactUri, String contentType, String displayName,
             String lookupKey, byte[] bitmapData) {
         Intent intent = null;
+        if (TextUtils.isEmpty(displayName)) {
+            displayName = mContext.getResources().getString(R.string.missing_name);
+        }
         if (BuildCompat.isAtLeastO()) {
             final long contactId = ContentUris.parseId(contactUri);
             final ShortcutManager sm = (ShortcutManager)
@@ -283,12 +286,11 @@
             final DynamicShortcuts dynamicShortcuts = new DynamicShortcuts(mContext);
             final ShortcutInfo shortcutInfo = dynamicShortcuts.getQuickContactShortcutInfo(
                     contactId, lookupKey, displayName);
-            intent = sm.createShortcutResultIntent(shortcutInfo);
+            if (shortcutInfo != null) {
+                intent = sm.createShortcutResultIntent(shortcutInfo);
+            }
         }
         final Drawable drawable = getPhotoDrawable(bitmapData, displayName, lookupKey);
-        if (TextUtils.isEmpty(displayName)) {
-            displayName = mContext.getResources().getString(R.string.missing_name);
-        }
 
         final Intent shortcutIntent = ImplicitIntentsUtil.getIntentForQuickContactLauncherShortcut(
                 mContext, contactUri);
@@ -346,7 +348,9 @@
             final DynamicShortcuts dynamicShortcuts = new DynamicShortcuts(mContext);
             final ShortcutInfo shortcutInfo = dynamicShortcuts.getActionShortcutInfo(
                     id, displayName, shortcutIntent, compatAdaptiveIcon.toIcon());
-            intent = sm.createShortcutResultIntent(shortcutInfo);
+            if (shortcutInfo != null) {
+                intent = sm.createShortcutResultIntent(shortcutInfo);
+            }
         }
 
         intent = intent == null ? new Intent() : intent;
diff --git a/src/com/android/contacts/model/AccountTypeManager.java b/src/com/android/contacts/model/AccountTypeManager.java
index b442e4f..9938695 100644
--- a/src/com/android/contacts/model/AccountTypeManager.java
+++ b/src/com/android/contacts/model/AccountTypeManager.java
@@ -622,9 +622,10 @@
             final AccountWithDataSet accountWithDataSet = new AccountWithDataSet(
                     account.name, account.type, null);
             final AccountType type = mTypeProvider.getTypeForAccount(accountWithDataSet);
-
-            // Accounts with a dataSet (e.g. Google plus accounts) are not writable.
-            result.add(type.wrapAccount(mContext, accountWithDataSet));
+            if (type != null) {
+                // Accounts with a dataSet (e.g. Google plus accounts) are not writable.
+                result.add(type.wrapAccount(mContext, accountWithDataSet));
+            }
         }
         return result;
     }
diff --git a/src/com/android/contacts/quickcontact/QuickContactActivity.java b/src/com/android/contacts/quickcontact/QuickContactActivity.java
index 535fe69..494c9c1 100644
--- a/src/com/android/contacts/quickcontact/QuickContactActivity.java
+++ b/src/com/android/contacts/quickcontact/QuickContactActivity.java
@@ -35,6 +35,7 @@
 import android.content.Loader;
 import android.content.pm.PackageManager;
 import android.content.pm.ResolveInfo;
+import android.content.pm.ShortcutInfo;
 import android.content.pm.ShortcutManager;
 import android.content.res.Resources;
 import android.graphics.Bitmap;
@@ -105,7 +106,6 @@
 import com.android.contacts.ContactsActivity;
 import com.android.contacts.ContactsUtils;
 import com.android.contacts.DynamicShortcuts;
-import com.android.contacts.Experiments;
 import com.android.contacts.NfcHandler;
 import com.android.contacts.R;
 import com.android.contacts.ShortcutIntentBuilder;
@@ -176,7 +176,6 @@
 import com.android.contacts.widget.MultiShrinkScroller.MultiShrinkScrollerListener;
 import com.android.contacts.widget.QuickContactImageView;
 import com.android.contactsbind.HelpUtils;
-import com.android.contactsbind.experiments.Flags;
 
 import com.google.common.collect.Lists;
 
@@ -1457,6 +1456,7 @@
         Trace.beginSection("Build data items map");
 
         final Map<String, List<DataItem>> dataItemsMap = new HashMap<>();
+        final boolean tachyonEnabled = CallUtil.isTachyonEnabled(this);
 
         for (RawContact rawContact : data.getRawContacts()) {
             for (DataItem dataItem : rawContact.getDataItems()) {
@@ -1466,6 +1466,7 @@
                 if (mimeType == null) continue;
 
                 if (!MIMETYPE_TACHYON.equals(mimeType)) {
+                    // Only validate non-Tachyon mimetypes.
                     final AccountType accountType = rawContact.getAccountType(this);
                     final DataKind dataKind = AccountTypeManager.getInstance(this)
                             .getKindOrFallback(accountType, mimeType);
@@ -1477,6 +1478,9 @@
                             dataKind));
 
                     if (isMimeExcluded(mimeType) || !hasData) continue;
+                } else if (!tachyonEnabled) {
+                    // If tachyon isn't enabled, skip its mimetypes.
+                    continue;
                 }
 
                 List<DataItem> dataItemListByType = dataItemsMap.get(mimeType);
@@ -1821,7 +1825,7 @@
                     thirdIntent.putExtra(EXTRA_ACTION_TYPE, ActionType.VIDEOCALL);
                     thirdContentDescription =
                             res.getString(R.string.description_video_call);
-                } else if (Flags.getInstance().getBoolean(Experiments.QUICK_CONTACT_VIDEO_CALL)
+                } else if (CallUtil.isTachyonEnabled(context)
                         && ((PhoneDataItem) dataItem).isTachyonReachable()) {
                     thirdIcon = res.getDrawable(R.drawable.quantum_ic_videocam_vd_theme_24);
                     thirdAction = Entry.ACTION_INTENT;
@@ -1916,8 +1920,8 @@
                     aboutCardName.value = res.getString(R.string.about_card_title);
                 }
             }
-        } else if (Flags.getInstance().getBoolean(Experiments.QUICK_CONTACT_VIDEO_CALL)
-                && MIMETYPE_TACHYON.equals(dataItem.getMimeType())) {
+        } else if (CallUtil.isTachyonEnabled(context) && MIMETYPE_TACHYON.equals(
+                dataItem.getMimeType())) {
             // Skip these actions. They will be placed by the phone number.
             return null;
         } else {
@@ -2695,21 +2699,26 @@
      * Creates a launcher shortcut with the current contact.
      */
     private void createLauncherShortcutWithContact() {
-        final ShortcutIntentBuilder builder = new ShortcutIntentBuilder(this,
-                new OnShortcutIntentCreatedListener() {
+        if (BuildCompat.isAtLeastO()) {
+            final ShortcutManager shortcutManager = (ShortcutManager)
+                    getSystemService(SHORTCUT_SERVICE);
+            final DynamicShortcuts shortcuts =
+                    new DynamicShortcuts(QuickContactActivity.this);
+            String displayName = mContactData.getDisplayName();
+            if (displayName == null) {
+                displayName = getString(R.string.missing_name);
+            }
+            final ShortcutInfo shortcutInfo = shortcuts.getQuickContactShortcutInfo(
+                    mContactData.getId(), mContactData.getLookupKey(), displayName);
+            if (shortcutInfo != null) {
+                shortcutManager.requestPinShortcut(shortcutInfo, null);
+            }
+        } else {
+            final ShortcutIntentBuilder builder = new ShortcutIntentBuilder(this,
+                    new OnShortcutIntentCreatedListener() {
 
-                    @Override
-                    public void onShortcutIntentCreated(Uri uri, Intent shortcutIntent) {
-                        if (BuildCompat.isAtLeastO()) {
-                            final ShortcutManager shortcutManager = (ShortcutManager)
-                                    getSystemService(SHORTCUT_SERVICE);
-                            final DynamicShortcuts shortcuts =
-                                    new DynamicShortcuts(QuickContactActivity.this);
-                            shortcutManager.requestPinShortcut(
-                                    shortcuts.getQuickContactShortcutInfo(
-                                            mContactData.getId(), mContactData.getLookupKey(),
-                                            mContactData.getDisplayName()), null);
-                        } else {
+                        @Override
+                        public void onShortcutIntentCreated(Uri uri, Intent shortcutIntent) {
                             // Broadcast the shortcutIntent to the launcher to create a
                             // shortcut to this contact
                             shortcutIntent.setAction(ACTION_INSTALL_SHORTCUT);
@@ -2725,9 +2734,9 @@
                             Toast.makeText(QuickContactActivity.this, toastMessage,
                                     Toast.LENGTH_SHORT).show();
                         }
-                    }
-                });
-        builder.createContactShortcutIntent(mContactData.getLookupUri());
+                    });
+            builder.createContactShortcutIntent(mContactData.getLookupUri());
+        }
     }
 
     private boolean isShortcutCreatable() {