diff --git a/Android.mk b/Android.mk
index eb6cbdc..975d396 100644
--- a/Android.mk
+++ b/Android.mk
@@ -21,6 +21,7 @@
 res_dirs := res \
     $(incallui_dir)/res \
     $(contacts_common_dir)/res \
+    $(contacts_common_dir)/icons/res \
     $(phone_common_dir)/res
 
 src_dirs += \
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 8892c24..babd271 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -324,6 +324,8 @@
             <meta-data android:name="android.telecom.IN_CALL_SERVICE_UI" android:value="true" />
             <meta-data android:name="android.telecom.IN_CALL_SERVICE_RINGING"
                 android:value="false"/>
+            <meta-data android:name="android.telecom.INCLUDE_EXTERNAL_CALLS"
+                       android:value="true"/>
             <intent-filter>
                 <action android:name="android.telecom.InCallService"/>
             </intent-filter>
diff --git a/InCallUI/res/layout/call_button_fragment.xml b/InCallUI/res/layout/call_button_fragment.xml
index 6dbfbf7..802e3de 100644
--- a/InCallUI/res/layout/call_button_fragment.xml
+++ b/InCallUI/res/layout/call_button_fragment.xml
@@ -126,7 +126,7 @@
         <ToggleButton android:id="@+id/pauseVideoButton"
             style="@style/InCallCompoundButton"
             android:background="@drawable/btn_compound_video_off"
-            android:contentDescription="@string/onscreenPauseVideoText"
+            android:contentDescription="@string/onscreenTurnOffCameraText"
             android:visibility="gone" />
 
         <!-- "Change to audio call" for video calls. -->
diff --git a/InCallUI/res/values-af/strings.xml b/InCallUI/res/values-af/strings.xml
index 0dc1828..0d7130f 100644
--- a/InCallUI/res/values-af/strings.xml
+++ b/InCallUI/res/values-af/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Maak toe"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Bel terug"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Boodskap"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Voortgesette oproep op \'n ander toestel"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Sit oproep deur"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Skakel vliegtuigmodus eers af om \'n oproep te maak."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Nie geregistreer op netwerk nie."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Sellulêre netwerk is nie beskikbaar nie."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video-oproep"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Verander na stemoproep"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Wissel kamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Laat video wag"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Skakel kamera aan"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Skakel kamera af"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Nog opsies"</string>
     <string name="player_started" msgid="3478865572468310331">"Speler het begin"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Speler het gestop"</string>
diff --git a/InCallUI/res/values-am/strings.xml b/InCallUI/res/values-am/strings.xml
index 5306c9c..ecfb2a9 100644
--- a/InCallUI/res/values-am/strings.xml
+++ b/InCallUI/res/values-am/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"አስወግድ"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"መልሰህ ደውል"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"መልእክት"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"በሌላ መሳሪያ ጥሪ በመካሄድ ላይ ነው"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"ጥሪ አስተላልፍ"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ለመደወል፣ መጀመሪያ የአውሮፕላኑን ሁኔታ ያጥፉ።"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"በአውታረ መረቡ ላይ አልተመዘገበም።"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"የተንቀሳቃሽ ስልክ አውታረ መረብ አይገኝም።"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"የቪዲዮ ጥሪ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"ወደ ድምፅ ጥሪ ይለውጡ"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"ካሜራ ቀይር"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ቪድዮ ለአፍታ አቁም"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"ካሜራ ያብሩ"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"ካሜራ ያጥፉ"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"ተጨማሪ አማራጮች"</string>
     <string name="player_started" msgid="3478865572468310331">"አጫዋች ጀምሯል"</string>
     <string name="player_stopped" msgid="1278611664986561535">"አጫዋች ቆሟል"</string>
diff --git a/InCallUI/res/values-ar/strings.xml b/InCallUI/res/values-ar/strings.xml
index a9b4b1d..0c315da 100644
--- a/InCallUI/res/values-ar/strings.xml
+++ b/InCallUI/res/values-ar/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"تجاهل"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"معاودة الاتصال"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"رسالة"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"مكالمة جارية على جهاز آخر"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"تحويل الاتصال"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"لإجراء مكالمة، أوقف تشغيل وضع الطائرة أولاً."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"غير مسجل على الشبكة."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"شبكة الجوّال غير متاحة."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"مكالمة فيديو"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"التغيير إلى مكالمة صوتية"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"تبديل الكاميرا"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"إيقاف الفيديو مؤقتًا"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"تشغيل الكاميرا"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"إيقاف الكاميرا"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"خيارات أخرى"</string>
     <string name="player_started" msgid="3478865572468310331">"تم بدء المشغّل"</string>
     <string name="player_stopped" msgid="1278611664986561535">"تم إيقاف المشغّل"</string>
diff --git a/InCallUI/res/values-az-rAZ/strings.xml b/InCallUI/res/values-az-rAZ/strings.xml
index 3ce629f..779843e 100644
--- a/InCallUI/res/values-az-rAZ/strings.xml
+++ b/InCallUI/res/values-az-rAZ/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Rədd edin"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Geriyə zəng"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mesaj"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Digər cihazda davam etməkdə olan zəng"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Zəngi Transfer edin"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Zəng etmək üçün ilk olaraq Uçuş Rejimini söndürün."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Şəbəkədə qeydə alınmayıb."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobil şəbəkə əlçatan deyil"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video zəng"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Səsli çağrıya dəyişin"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Kameraya keçin"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Videonu durdurun"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Kameranı yandırın"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Kameranı söndürün"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Daha çox seçim"</string>
     <string name="player_started" msgid="3478865572468310331">"Pleyer Başladıldı"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Pleyer Dayandırıldı"</string>
diff --git a/InCallUI/res/values-b+sr+Latn/strings.xml b/InCallUI/res/values-b+sr+Latn/strings.xml
index 20445ab..a662156 100644
--- a/InCallUI/res/values-b+sr+Latn/strings.xml
+++ b/InCallUI/res/values-b+sr+Latn/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Odbaci"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Uzvrati poziv"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Pošalji SMS"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Poziv je u toku na drugom uređaju"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Prebaci poziv"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Da biste uputili poziv, prvo isključite režim rada u avionu."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Nije registrovano na mreži."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilna mreža nije dostupna."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video poziv"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Promeni u glasovni poziv"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Promeni kameru"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pauziraj video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Uključi kameru"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Isključi kameru"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Još opcija"</string>
     <string name="player_started" msgid="3478865572468310331">"Plejer je pokrenut"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Plejer je zaustavljen"</string>
diff --git a/InCallUI/res/values-be-rBY/strings.xml b/InCallUI/res/values-be-rBY/strings.xml
index b4b5a02..a99ea64 100644
--- a/InCallUI/res/values-be-rBY/strings.xml
+++ b/InCallUI/res/values-be-rBY/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Адхіліць"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Звар. выклік"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Паведамленне"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Бягучы выклік на іншай прыладзе"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Перадаць выклік"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Каб зрабіць выклік, спачатку выключыце рэжым палёту."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Не зарэгістраваны ў сетцы."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Мабільная сетка недаступная."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Відэавыклік"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Змяніць на галасавы выклік"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Пераключыць камеру"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Прыпыніць прайграванне відэа"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Уключыць камеру"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Адключыць камеру"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Дадатковыя параметры"</string>
     <string name="player_started" msgid="3478865572468310331">"Прайгравальнік запушчаны"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Прайгравальнік спынены"</string>
diff --git a/InCallUI/res/values-bg/strings.xml b/InCallUI/res/values-bg/strings.xml
index 92baee5..87c5de5 100644
--- a/InCallUI/res/values-bg/strings.xml
+++ b/InCallUI/res/values-bg/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Отхвърляне"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Обр. обажд."</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Съобщение"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Текущо обаждане на друго устройство"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Прехвърляне на обаждането"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"За да осъществите обаждане, първо изключете самолетния режим."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Няма регистрация в мрежата."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Няма достъп до клетъчната мрежа."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Видеообажд."</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Преминаване към гласово обаждане"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Превключване на камерата"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Поставяне на видеовръзката на пауза"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Включване на камерата"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Изключване на камерата"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Още опции"</string>
     <string name="player_started" msgid="3478865572468310331">"Плейърът е стартиран"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Плейърът е спрян"</string>
diff --git a/InCallUI/res/values-bn-rBD/strings.xml b/InCallUI/res/values-bn-rBD/strings.xml
index 56400c3..0e05f6d 100644
--- a/InCallUI/res/values-bn-rBD/strings.xml
+++ b/InCallUI/res/values-bn-rBD/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"খারিজ করুন"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"ঘুরিয়ে কল করুন"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"বার্তা"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"অন্য ডিভাইসে চালু থাকা কল"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"কল স্থানান্তর করুন"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"একটি কল করতে, প্রথমে বিমানমোড বন্ধ করুন৷"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"নেটওয়ার্কে নিবন্ধিত নয়৷"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"সেলুলার নেটওয়ার্ক উপলব্ধ নয়।"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"ভিডিও কল"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"ভয়েস কলে পরিবর্তন করুন"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"ক্যামেরা স্যুইচ করুন"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ভিডিও বিরাম দিন"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"ক্যামেরা চালু করুন"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"ক্যামেরা বন্ধ করুন"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"আরো বিকল্প"</string>
     <string name="player_started" msgid="3478865572468310331">"প্লেয়ার শুরু হয়েছে"</string>
     <string name="player_stopped" msgid="1278611664986561535">"প্লেয়ার বন্ধ হয়ে গেছে"</string>
diff --git a/InCallUI/res/values-bs-rBA/strings.xml b/InCallUI/res/values-bs-rBA/strings.xml
index df82594..e99b335 100644
--- a/InCallUI/res/values-bs-rBA/strings.xml
+++ b/InCallUI/res/values-bs-rBA/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Odbaci"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Povr. poziv"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Poruka"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Poziv u toku na drugom uređaju"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Prenesi poziv"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Da uputite poziv, isključite Način rada u avionu."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Nije registrirano na mreži."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilna mreža nije dostupna."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videopoziv"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Promijeni na glasovni poziv"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Promijeni kameru"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pauziraj videopoziv"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Uključi kameru"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Isključi kameru"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Više opcija"</string>
     <string name="player_started" msgid="3478865572468310331">"Plejer je pokrenut"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Plejer je zaustavljen"</string>
diff --git a/InCallUI/res/values-ca/strings.xml b/InCallUI/res/values-ca/strings.xml
index c170203..ada65b4 100644
--- a/InCallUI/res/values-ca/strings.xml
+++ b/InCallUI/res/values-ca/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Ignora"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Torna trucada"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Missatge"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Trucada en curs en un altre dispositiu"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transfereix la trucada"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Per fer una trucada, primer desactiva el mode d\'avió."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"No s\'ha registrat a la xarxa."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"La xarxa mòbil no està disponible."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videotrucada"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Canvia a trucada de veu"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Canvia la càmera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Posa en pausa el vídeo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Activa la càmera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Desactiva la càmera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Més opcions"</string>
     <string name="player_started" msgid="3478865572468310331">"S\'ha iniciat el reproductor"</string>
     <string name="player_stopped" msgid="1278611664986561535">"S\'ha aturat el reproductor"</string>
diff --git a/InCallUI/res/values-cs/strings.xml b/InCallUI/res/values-cs/strings.xml
index 9f869f2..11efecc 100644
--- a/InCallUI/res/values-cs/strings.xml
+++ b/InCallUI/res/values-cs/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Odmítnout"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Zavolat zpět"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Posl. zprávu"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Probíhá hovor na jiném zařízení"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Převést hovor sem"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Chcete-li telefonovat, nejprve vypněte režim Letadlo."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Přihlášení k síti nebylo úspěšné."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilní síť je nedostupná."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videohovor"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Změnit na hlasové volání"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Přepnout kameru"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pozastavit video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Zapnout kameru"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Vypnout kameru"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Další možnosti"</string>
     <string name="player_started" msgid="3478865572468310331">"Přehrávač spuštěn"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Přehrávač zastaven"</string>
diff --git a/InCallUI/res/values-da/strings.xml b/InCallUI/res/values-da/strings.xml
index 01167cb..a43e452 100644
--- a/InCallUI/res/values-da/strings.xml
+++ b/InCallUI/res/values-da/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Afvis"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Ring tilbage"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Besked"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Igangværende opkald på en anden enhed"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Overfør opkald"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Slå Flytilstand fra først for at foretage et opkald."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ikke registreret på netværket."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilnetværket er ikke tilgængeligt."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videoopkald"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Skift til taleopkald"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Skift kamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Sæt video på pause"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Slå kameraet til"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Slå kameraet fra"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Flere valgmuligheder"</string>
     <string name="player_started" msgid="3478865572468310331">"Afspilleren er startet"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Afspilleren er stoppet"</string>
diff --git a/InCallUI/res/values-de/strings.xml b/InCallUI/res/values-de/strings.xml
index dd9f9b8..7cb4de9 100644
--- a/InCallUI/res/values-de/strings.xml
+++ b/InCallUI/res/values-de/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Ablehnen"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Zurückrufen"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Nachricht"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Aktiver Anruf auf anderem Gerät"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Anruf übertragen"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Deaktiviere zunächst den Flugmodus, um einen Anruf zu tätigen."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Nicht in Netzwerk registriert."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilfunknetz nicht verfügbar."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videoanruf"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Zu Sprachanruf wechseln"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Kamera wechseln"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Video pausieren"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Kamera einschalten"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Kamera ausschalten"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Weitere Optionen"</string>
     <string name="player_started" msgid="3478865572468310331">"Videoübertragung gestartet"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Videoübertragung gestoppt"</string>
diff --git a/InCallUI/res/values-el/strings.xml b/InCallUI/res/values-el/strings.xml
index bdec7d0..011c990 100644
--- a/InCallUI/res/values-el/strings.xml
+++ b/InCallUI/res/values-el/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Παράβλεψη"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Επανάκληση"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Μήνυμα"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Κλήση σε εξέλιξη σε άλλη συσκευή"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Μεταφορά κλήσης"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Για να πραγματοποιήσετε μια κλήση, απενεργοποιήστε πρώτα τη λειτουργία πτήσης."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Δεν έχετε εγγραφεί στο δίκτυο."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Το δίκτυο κινητής τηλεφωνίας δεν είναι διαθέσιμο."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Βιντεοκλ."</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Αλλαγή σε φωνητική κλήση"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Αλλαγή κάμερας"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Παύση βίντεο"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Ενεργοποίηση κάμερας"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Απενεργοποίηση κάμερας"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Περισσότερες επιλογές"</string>
     <string name="player_started" msgid="3478865572468310331">"Το πρόγραμμα αναπαραγωγής βίντεο ξεκίνησε"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Το πρόγραμμα αναπαραγωγής βίντεο διακόπηκε"</string>
diff --git a/InCallUI/res/values-en-rAU/strings.xml b/InCallUI/res/values-en-rAU/strings.xml
index 0cf51f4..f4f9716 100644
--- a/InCallUI/res/values-en-rAU/strings.xml
+++ b/InCallUI/res/values-en-rAU/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Dismiss"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Call back"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Message"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Ongoing call on another device"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transfer call"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Not registered on network."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobile network not available."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video call"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Change to voice call"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Switch camera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pause video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Turn on camera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Turn off camera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"More options"</string>
     <string name="player_started" msgid="3478865572468310331">"Player Started"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Player Stopped"</string>
diff --git a/InCallUI/res/values-en-rGB/strings.xml b/InCallUI/res/values-en-rGB/strings.xml
index 0cf51f4..f4f9716 100644
--- a/InCallUI/res/values-en-rGB/strings.xml
+++ b/InCallUI/res/values-en-rGB/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Dismiss"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Call back"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Message"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Ongoing call on another device"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transfer call"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Not registered on network."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobile network not available."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video call"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Change to voice call"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Switch camera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pause video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Turn on camera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Turn off camera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"More options"</string>
     <string name="player_started" msgid="3478865572468310331">"Player Started"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Player Stopped"</string>
diff --git a/InCallUI/res/values-en-rIN/strings.xml b/InCallUI/res/values-en-rIN/strings.xml
index 0cf51f4..f4f9716 100644
--- a/InCallUI/res/values-en-rIN/strings.xml
+++ b/InCallUI/res/values-en-rIN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Dismiss"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Call back"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Message"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Ongoing call on another device"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transfer call"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Not registered on network."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobile network not available."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video call"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Change to voice call"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Switch camera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pause video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Turn on camera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Turn off camera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"More options"</string>
     <string name="player_started" msgid="3478865572468310331">"Player Started"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Player Stopped"</string>
diff --git a/InCallUI/res/values-es-rUS/strings.xml b/InCallUI/res/values-es-rUS/strings.xml
index ab95407..39818a4 100644
--- a/InCallUI/res/values-es-rUS/strings.xml
+++ b/InCallUI/res/values-es-rUS/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Descartar"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Llamar"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mensaje"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Llamada en curso en otro dispositivo"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transferir llamada"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Para realizar una llamada, primero debes desactivar el modo de avión."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"No está registrado en la red."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"La red móvil no está disponible."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Cambiar a llamada de voz"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Cambiar cámara"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pausar video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Activar la cámara"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Desactivar la cámara"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Más opciones"</string>
     <string name="player_started" msgid="3478865572468310331">"Se inició el reproductor"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Se detuvo el reproductor"</string>
diff --git a/InCallUI/res/values-es/strings.xml b/InCallUI/res/values-es/strings.xml
index 518cf72..b0fcc5f 100644
--- a/InCallUI/res/values-es/strings.xml
+++ b/InCallUI/res/values-es/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Rechazar"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Llamar"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mensaje"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Llamada activa en otro dispositivo"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transferir llamada"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Para realizar una llamada, primero debes desactivar el modo avión."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"No estás registrado en la red."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"La red móvil no está disponible."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videollamada"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Cambiar a llamada de voz"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Cambiar cámara"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pausar vídeo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Activar cámara"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Desactivar cámara"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Más opciones"</string>
     <string name="player_started" msgid="3478865572468310331">"Reproductor iniciado"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Reproductor detenido"</string>
diff --git a/InCallUI/res/values-et-rEE/strings.xml b/InCallUI/res/values-et-rEE/strings.xml
index 9d67a7b..3e4d0d9 100644
--- a/InCallUI/res/values-et-rEE/strings.xml
+++ b/InCallUI/res/values-et-rEE/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Loobu"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Helista tagasi"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Saada sõnum"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Pooleliolev kõne teise seadmes"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Kõne ülekandmine"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Helistamiseks lülitage esmalt lennukirežiim välja."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ei ole võrgus registreeritud."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobiilsidevõrk pole saadaval."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videokõne"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Mine üle häälkõnele"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Vaheta kaamerat"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Peata video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Lülita kaamera sisse"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Lülita kaamera välja"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Rohkem valikuid"</string>
     <string name="player_started" msgid="3478865572468310331">"Pleier käivitati"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Pleier peatati"</string>
diff --git a/InCallUI/res/values-eu-rES/strings.xml b/InCallUI/res/values-eu-rES/strings.xml
index 6686007..5b59d97 100644
--- a/InCallUI/res/values-eu-rES/strings.xml
+++ b/InCallUI/res/values-eu-rES/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Baztertu"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Itzuli deia"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Bidali SMSa"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Dei bat abian da beste gailu batean"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transferitu deia"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Deitzeko, desaktibatu hegaldi modua."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ez dago sarean erregistratuta."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Sare mugikorra ez dago erabilgarri."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Bideo-deia"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Aldatu ahots-deira"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Aldatu kamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pausatu bideoa"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Aktibatu kamera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Desaktibatu kamera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Aukera gehiago"</string>
     <string name="player_started" msgid="3478865572468310331">"Abian da erreproduzigailua"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Gelditu da erreproduzigailua"</string>
diff --git a/InCallUI/res/values-fa/strings.xml b/InCallUI/res/values-fa/strings.xml
index 5c96a2e..43390c7 100644
--- a/InCallUI/res/values-fa/strings.xml
+++ b/InCallUI/res/values-fa/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"نپذیرفتن"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"پاسخ تماس"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"پیام"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"تماس در حال انجام در دستگاهی دیگر"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"انتقال تماس"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"برای برقراری تماس، ابتدا حالت هواپیما را خاموش کنید."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"در شبکه ثبت نشده است."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"شبکه تلفن همراه در دسترس نیست."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"تماس ویدیویی"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"تغییر به تماس صوتی"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"تعویض دوربین"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"توقف موقت ویدیو"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"روشن کردن دوربین"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"خاموش کردن دوربین"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"گزینه‌های بیشتر"</string>
     <string name="player_started" msgid="3478865572468310331">"پخش‌کننده راه‌اندازی شد"</string>
     <string name="player_stopped" msgid="1278611664986561535">"پخش‌کننده متوقف شد"</string>
diff --git a/InCallUI/res/values-fi/strings.xml b/InCallUI/res/values-fi/strings.xml
index 084c696..392d55b 100644
--- a/InCallUI/res/values-fi/strings.xml
+++ b/InCallUI/res/values-fi/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Hylkää"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Soita"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Viesti"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Puhelu on kesken toisella laitteella."</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Siirrä puhelu"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Poista lentokonetila käytöstä ennen puhelun soittamista."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ei rekisteröity verkkoon"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Matkapuhelinverkko ei ole käytettävissä."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Muuta äänipuheluksi"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Vaihda kameraa"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Keskeytä video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Käynnistä kamera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Sammuta kamera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Lisäasetukset"</string>
     <string name="player_started" msgid="3478865572468310331">"Soitin käynnistettiin."</string>
     <string name="player_stopped" msgid="1278611664986561535">"Soitin pysäytettiin."</string>
diff --git a/InCallUI/res/values-fr-rCA/strings.xml b/InCallUI/res/values-fr-rCA/strings.xml
index 2218e78..a8d39ca 100644
--- a/InCallUI/res/values-fr-rCA/strings.xml
+++ b/InCallUI/res/values-fr-rCA/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Fermer"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Rappeler"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Message"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Appel en cours sur un autre appareil"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transférer l\'appel"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Pour faire un appel, d\'abord désactiver le mode Avion."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Non enregistré sur le réseau."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Réseau cellulaire non disponible."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Appel vidéo"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Passer à un appel vocal"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Changer d\'appareil photo"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Interrompre la vidéo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Activer la caméra"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Désactiver la caméra"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Plus d\'options"</string>
     <string name="player_started" msgid="3478865572468310331">"Le lecteur a démarré"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Le lecteur a arrêté"</string>
diff --git a/InCallUI/res/values-fr/strings.xml b/InCallUI/res/values-fr/strings.xml
index 3dbf8c1..35fd86c 100644
--- a/InCallUI/res/values-fr/strings.xml
+++ b/InCallUI/res/values-fr/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Fermer"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Rappeler"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Envoyer SMS"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Appel en cours sur un autre appareil"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transférer l\'appel"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Veuillez désactiver le mode Avion avant de passer un appel."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Non enregistré sur le réseau."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Réseau mobile indisponible."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Appel vidéo"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Passer à un appel vocal"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Changer de caméra"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Suspendre la vidéo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Activer la caméra"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Désactiver la caméra"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Plus d\'options"</string>
     <string name="player_started" msgid="3478865572468310331">"Le lecteur a démarré."</string>
     <string name="player_stopped" msgid="1278611664986561535">"Le lecteur s\'est arrêté."</string>
diff --git a/InCallUI/res/values-gl-rES/strings.xml b/InCallUI/res/values-gl-rES/strings.xml
index 7a3725f..5297329 100644
--- a/InCallUI/res/values-gl-rES/strings.xml
+++ b/InCallUI/res/values-gl-rES/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Ignorar"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Dev. chamada"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mensaxe"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Chamada en curso noutro dispositivo"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transferir chamada"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Para realizar unha chamada, primeiro desactiva o modo avión."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Sen rexistro na rede."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Rede móbil non dispoñible."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videocham."</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Cambiar para chamada de voz"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Cambiar cámara"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pausar vídeo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Acender cámara"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Apagar cámara"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Máis opcións"</string>
     <string name="player_started" msgid="3478865572468310331">"Iniciouse o reprodutor"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Detívose o reprodutor"</string>
diff --git a/InCallUI/res/values-gu-rIN/strings.xml b/InCallUI/res/values-gu-rIN/strings.xml
index 30dfb88..e04e290 100644
--- a/InCallUI/res/values-gu-rIN/strings.xml
+++ b/InCallUI/res/values-gu-rIN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"છોડી દો"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"કૉલ બૅક કરો"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"સંદેશ"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"અન્ય ઉપકરણ પર ચાલી રહેલ કૉલ"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"કૉલ સ્થાનાંતરિત કરો"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"કૉલ કરવા માટે, પહેલા એરપ્લેન મોડને બંધ કરો."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"નેટવર્ક પર નોંધણી કરાયેલ નથી."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"સેલ્યુલર નેટવર્ક ઉપલબ્ધ નથી."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"વિડિઓ કૉલ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"વૉઇસ કૉલ પર બદલો"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"કૅમેરા પર સ્વિચ કરો"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"વિડિઓ થોભાવો"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"કૅમેરો ચાલુ કરો"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"કૅમેરો બંધ કરો"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"વધુ વિકલ્પો"</string>
     <string name="player_started" msgid="3478865572468310331">"પ્લેયર પ્રારંભ કર્યું"</string>
     <string name="player_stopped" msgid="1278611664986561535">"પ્લેયર બંધ કર્યું"</string>
diff --git a/InCallUI/res/values-hi/strings.xml b/InCallUI/res/values-hi/strings.xml
index 6d4e8ae..f076ac2 100644
--- a/InCallUI/res/values-hi/strings.xml
+++ b/InCallUI/res/values-hi/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"ख़ारिज करें"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"कॉल बैक करें"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"संदेश"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"दूसरे डिवाइस पर चल रहा कॉल"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"कॉल स्थानान्तरित करें"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"कॉल करने के लिए, पहले हवाई जहाज़ मोड बंद करें."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"नेटवर्क पर पंजीकृत नहीं."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"सेल्युलर नेटवर्क उपलब्ध नहीं."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"वीडियो कॉल"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"वॉइस कॉल में बदलें"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"कैमरा स्विच करें"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"वीडियो रोकें"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"कैमरा चालू करें"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"कैमरा बंद करें"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"अधिक विकल्प"</string>
     <string name="player_started" msgid="3478865572468310331">"प्लेयर प्रारंभ हो गया"</string>
     <string name="player_stopped" msgid="1278611664986561535">"प्लेयर रुक गया"</string>
diff --git a/InCallUI/res/values-hr/strings.xml b/InCallUI/res/values-hr/strings.xml
index f870af1..1100b0c 100644
--- a/InCallUI/res/values-hr/strings.xml
+++ b/InCallUI/res/values-hr/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Odbaci"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Uzvrati"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Poruka"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Poziv u tijeku na drugom uređaju"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Prijenos poziva"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Da biste uspostavili poziv, isključite način rada u zrakoplovu."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Nije registrirano na mreži."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilna mreža nije dostupna."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videopoziv"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Prijeđi na glasovni poziv"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Promijeni kameru"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pauziraj videopoziv"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Uključivanje kamere"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Isključivanje kamere"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Više opcija"</string>
     <string name="player_started" msgid="3478865572468310331">"Player je pokrenut"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Player je prekinut"</string>
diff --git a/InCallUI/res/values-hu/strings.xml b/InCallUI/res/values-hu/strings.xml
index 9cac188..543b352 100644
--- a/InCallUI/res/values-hu/strings.xml
+++ b/InCallUI/res/values-hu/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Elvetés"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Visszahívás"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Üzenet"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Folyamatban lévő hívás egy másik eszközön"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Hívásátirányítás"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Hívásindításhoz kapcsolja ki a Repülős üzemmódot."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Nincs regisztrálva a hálózaton."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"A mobilhálózat nem áll rendelkezésre."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videóhívás"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Váltás hanghívásra"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Váltás a kamerák között"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Videó szüneteltetése"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Kamera bekapcsolása"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Kamera kikapcsolása"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"További lehetőségek"</string>
     <string name="player_started" msgid="3478865572468310331">"A lejátszó elindult"</string>
     <string name="player_stopped" msgid="1278611664986561535">"A lejátszó leállt"</string>
diff --git a/InCallUI/res/values-hy-rAM/strings.xml b/InCallUI/res/values-hy-rAM/strings.xml
index a4a4b74..ab63914 100644
--- a/InCallUI/res/values-hy-rAM/strings.xml
+++ b/InCallUI/res/values-hy-rAM/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Մերժել"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Հետ զանգել"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Հաղորդագրություն"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Ընթացիկ զանգ այլ սարքում"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Փոխանցել զանգը"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Զանգ կատարելու համար նախ անջատեք Ինքնաթիռի ռեժիմը:"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ցանցում գրանցված չէ:"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Բջջային ցանցն անհասանելի է:"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Տեսազանգ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Փոխարկել ձայնային կանչի"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Փոխարկել խցիկը"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Դադարեցնել տեսազանգը"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Միացնել տեսախցիկը"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Անջատել տեսախցիկը"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Այլ ընտրանքներ"</string>
     <string name="player_started" msgid="3478865572468310331">"Նվագարկիչը մեկնարկել է"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Նվագարկիչը դադարեցվել է"</string>
diff --git a/InCallUI/res/values-in/strings.xml b/InCallUI/res/values-in/strings.xml
index ba1a2fe..0506c4e 100644
--- a/InCallUI/res/values-in/strings.xml
+++ b/InCallUI/res/values-in/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Tutup"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Telepon balik"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Pesan"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Panggilan yang berlangsung di perangkat lain"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transfer Panggilan"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Untuk melakukan panggilan, terlebih dahulu nonaktifkan mode Pesawat."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Tidak terdaftar pada jaringan."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Jaringan seluler tidak tersedia."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video call"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Ubah ke panggilan suara"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Beralih kamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Jeda video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Nyalakan kamera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Matikan kamera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Opsi lainnya"</string>
     <string name="player_started" msgid="3478865572468310331">"Pemutar Dimulai"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Pemutar Dihentikan"</string>
diff --git a/InCallUI/res/values-is-rIS/strings.xml b/InCallUI/res/values-is-rIS/strings.xml
index e749b17..60eb5df 100644
--- a/InCallUI/res/values-is-rIS/strings.xml
+++ b/InCallUI/res/values-is-rIS/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Hunsa"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Hringja til baka"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Skilaboð"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Símtal í gangi í öðru tæki"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Flytja símtal"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Til að hringja símtal þarftu fyrst að slökkva á flugstillingu."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ekki skráð á símkerfi."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Farsímakerfi ekki til staðar."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Myndsímtal"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Breyta í símtal"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Skipta um myndavél"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Gera hlé á myndskeiði"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Kveikja á myndavél"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Slökkva á myndavél"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Fleiri valkostir"</string>
     <string name="player_started" msgid="3478865572468310331">"Spilari ræstur"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Spilari stöðvaður"</string>
diff --git a/InCallUI/res/values-it/strings.xml b/InCallUI/res/values-it/strings.xml
index 72a8db8..3d8114d 100644
--- a/InCallUI/res/values-it/strings.xml
+++ b/InCallUI/res/values-it/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Ignora"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Richiama"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Messaggio"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Chiamata in corso su un altro dispositivo"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Trasferisci chiamata"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Per fare una chiamata, disattiva la modalità aereo."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Non registrato sulla rete."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Rete dati non disponibile."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videochiam"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Passa a chiamata vocale"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Cambia fotocamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Metti in pausa video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Attiva fotocamera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Disattiva fotocamera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Altre opzioni"</string>
     <string name="player_started" msgid="3478865572468310331">"Player avviato"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Player interrotto"</string>
diff --git a/InCallUI/res/values-iw/strings.xml b/InCallUI/res/values-iw/strings.xml
index 7fdc1c2..d27ba0f 100644
--- a/InCallUI/res/values-iw/strings.xml
+++ b/InCallUI/res/values-iw/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"בטל"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"התקשר חזרה"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"שלח הודעה"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"באחד מהמכשירים האחרים מתבצעת שיחה"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"העבר את השיחה"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"כדי להתקשר, כבה תחילה את מצב טיסה."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"לא רשום ברשת."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"רשת סלולרית אינה זמינה."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"שיחת וידאו"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"שנה לשיחה קולית"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"החלף מצלמה"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"השהה וידאו"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"הפעל את המצלמה"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"כבה את המצלמה"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"אפשרויות נוספות"</string>
     <string name="player_started" msgid="3478865572468310331">"הנגן הופעל"</string>
     <string name="player_stopped" msgid="1278611664986561535">"הנגן הפסיק"</string>
diff --git a/InCallUI/res/values-ja/strings.xml b/InCallUI/res/values-ja/strings.xml
index 7aa375b..8c9e4de 100644
--- a/InCallUI/res/values-ja/strings.xml
+++ b/InCallUI/res/values-ja/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"拒否する"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"コールバック"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"メッセージ"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"別の端末で通話中"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"通話を転送"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"機内モードを OFF にしてから発信してください。"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"ご加入の通信サービスがありません。"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"モバイル ネットワークが利用できません。"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"ビデオ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"音声通話に変更"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"カメラを切り替え"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ビデオハングアウトを一時停止"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"カメラを ON にする"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"カメラを OFF にする"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"その他のオプション"</string>
     <string name="player_started" msgid="3478865572468310331">"プレーヤーを開始しました"</string>
     <string name="player_stopped" msgid="1278611664986561535">"プレーヤーを停止しました"</string>
diff --git a/InCallUI/res/values-ka-rGE/strings.xml b/InCallUI/res/values-ka-rGE/strings.xml
index d732a8e..87ee736 100644
--- a/InCallUI/res/values-ka-rGE/strings.xml
+++ b/InCallUI/res/values-ka-rGE/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"დახურვა"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"გადარეკვა"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"შეტყობინება"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"სხვა მოწყობილობაზე მიმდინარე ზარი"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"ზარის ტრანსფერი"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ზარის განსახორციელებლად, ჯერ გამორთეთ თვითმფრინავის რეჟიმი."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"არ არის რეგისტრირებული ქსელში."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"ფიჭური ქსელი მიუწვდომელია."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"ვიდეო ზარი"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"ხმოვან ზარზე გადართვა"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"კამერის გადართვა"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ვიდეოს დაპაუზება"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"კამერის ჩართვა"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"კამერის გამორთვა"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"სხვა ვარიანტები"</string>
     <string name="player_started" msgid="3478865572468310331">"დამკვრელი ჩაირთო"</string>
     <string name="player_stopped" msgid="1278611664986561535">"დამკვრელი გამოირთო"</string>
diff --git a/InCallUI/res/values-kk-rKZ/strings.xml b/InCallUI/res/values-kk-rKZ/strings.xml
index c6f2089..2f72135 100644
--- a/InCallUI/res/values-kk-rKZ/strings.xml
+++ b/InCallUI/res/values-kk-rKZ/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Қабылдамау"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Кері қоңырау шалу"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Хабар"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Қоңырау басқа құрылғыдан шалынуда"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Қоңырауды басқа құрылғыға бағыттау"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Қоңырау шалу үшін алдымен ұшақ режимін өшіріңіз."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Желіде тіркелмеген."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Ұялы желі қол жетімді емес."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Бейне қоңырау"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Дауыстық қоңырауға өзгерту"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Камераны ауыстыру"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Бейнені кідірту"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Камераны қосу"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Камераны өшіру"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Қосымша опциялар"</string>
     <string name="player_started" msgid="3478865572468310331">"Ойнатқыш іске қосылды"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Ойнатқыш тоқтатылды"</string>
diff --git a/InCallUI/res/values-km-rKH/strings.xml b/InCallUI/res/values-km-rKH/strings.xml
index d0a0dfc..8df9c3a 100644
--- a/InCallUI/res/values-km-rKH/strings.xml
+++ b/InCallUI/res/values-km-rKH/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"បដិសេធ"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"ហៅ​ទៅ​វិញ"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"សារ"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"ការ​ហៅ​កំពុង​ដំណើរការ​លើ​ឧបករណ៍​ផ្សេង"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"ផ្ទេរ​ការហៅ"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ដើម្បីកំណត់ការហៅ សូមបិទរបៀបពេលជិះយន្តហោះជាមុនសិន"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"មិនបានចុះឈ្មោះនៅលើបណ្ដាញទេ"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"បណ្ដាញចល័តមិនអាចប្រើបានទេ"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"ហៅជាវីដេអូ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"ប្ដូរ​ទៅ​ការ​ហៅ​ជា​សំឡេង"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"ប្ដូរកាមេរ៉ា"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ផ្អាក​វីដេអូ"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"បើកកាមេរ៉ា"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"បិទកាមេរ៉ា"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"ជម្រើសច្រើនទៀត"</string>
     <string name="player_started" msgid="3478865572468310331">"អ្នកលេងបានចាប់ផ្តើម"</string>
     <string name="player_stopped" msgid="1278611664986561535">"អ្នកលេងបានឈប់"</string>
diff --git a/InCallUI/res/values-kn-rIN/strings.xml b/InCallUI/res/values-kn-rIN/strings.xml
index a763d1d..5e5b219 100644
--- a/InCallUI/res/values-kn-rIN/strings.xml
+++ b/InCallUI/res/values-kn-rIN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"ವಜಾಗೊಳಿಸಿ"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"ಮರಳಿ ಕರೆ"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"ಸಂದೇಶ"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"ಮತ್ತೊಂದು ಸಾಧನದಲ್ಲಿ ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕರೆ"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"ಕರೆ ವರ್ಗಾಯಿಸಿ"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ಕರೆ ಮಾಡಲು, ಮೊದಲು ಏರ್‌ಪ್ಲೇನ್‌‌ ಮೋಡ್‌‌ ಆಫ್‌ ಮಾಡಿ."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"ನೆಟ್‌ವರ್ಕ್‌ನಲ್ಲಿ ಇನ್ನೂ ನೋಂದಣಿಯಾಗಿಲ್ಲ."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"ಸೆಲ್ಯುಲಾರ್ ನೆಟ್‌ವರ್ಕ್‌ ಲಭ್ಯವಿಲ್ಲ."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"ಧ್ವನಿ ಕರೆಗೆ ಬದಲಾಯಿಸಿ"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"ಕ್ಯಾಮರಾ ಬದಲಿಸಿ"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ವೀಡಿಯೊ ವಿರಾಮಗೊಳಿಸು"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"ಕ್ಯಾಮರಾ ಆನ್ ಮಾಡಿ"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"ಕ್ಯಾಮರಾ ಆಫ್ ಮಾಡಿ"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"ಇನ್ನಷ್ಟು ಆಯ್ಕೆಗಳು"</string>
     <string name="player_started" msgid="3478865572468310331">"ಪ್ಲೇಯರ್‌ ಪ್ರಾರಂಭವಾಗಿದೆ"</string>
     <string name="player_stopped" msgid="1278611664986561535">"ಪ್ಲೇಯರ್‌ ನಿಲ್ಲಿಸಲಾಗಿದೆ"</string>
diff --git a/InCallUI/res/values-ko/strings.xml b/InCallUI/res/values-ko/strings.xml
index 0100643..74e1347 100644
--- a/InCallUI/res/values-ko/strings.xml
+++ b/InCallUI/res/values-ko/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"해제"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"전화 걸기"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"메시지"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"다른 기기에서 진행 중인 통화"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"통화 전환"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"전화를 걸려면 먼저 비행기 모드를 해제하세요."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"네트워크에서 등록되지 않았습니다."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"사용 가능한 이동통신망이 없습니다."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"화상 통화"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"음성 통화로 변경"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"카메라 전환"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"동영상 일지중지"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"카메라 켜기"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"카메라 끄기"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"옵션 더보기"</string>
     <string name="player_started" msgid="3478865572468310331">"플레이어가 시작되었습니다."</string>
     <string name="player_stopped" msgid="1278611664986561535">"플레이어가 중지되었습니다."</string>
diff --git a/InCallUI/res/values-ky-rKG/strings.xml b/InCallUI/res/values-ky-rKG/strings.xml
index 250fdca..d982169 100644
--- a/InCallUI/res/values-ky-rKG/strings.xml
+++ b/InCallUI/res/values-ky-rKG/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Этибарга албоо"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Кайра чалуу"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Билдирүү"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Башка түзмөктө сүйлөшүп жатасыз"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Чалууну бул түзмөккө өткөрүү"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Учак режимин өчүрүп туруп чалыңыз."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Тармакта катталган эмес."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Мобилдик тармак жеткиликтүү эмес."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Видео чалуу"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Үн чалууга өзгөртүү"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Камераны которуштуруу"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Видеону тындыруу"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Камераны күйгүзүү"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Камераны өчүрүү"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Дагы параметрлер"</string>
     <string name="player_started" msgid="3478865572468310331">"Ойноткуч башталды"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Ойноткуч токтотулду"</string>
diff --git a/InCallUI/res/values-lo-rLA/strings.xml b/InCallUI/res/values-lo-rLA/strings.xml
index afdd104..4588124 100644
--- a/InCallUI/res/values-lo-rLA/strings.xml
+++ b/InCallUI/res/values-lo-rLA/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"ປິດໄວ້"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"ໂທກັບ"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"ຂໍ້ຄວາມ"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"ສາຍທີ່ກຳລັງໂທອອກໃນອຸປະກອນອື່ນ"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"ໂອນສາຍ"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ເພື່ອເຮັດການໂທ, ໃຫ້ປິດໂໝດເຮືອບິນກ່ອນ"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"ບໍ່ໄດ້ລົງທະບຽນໃນເຄືອຂ່າຍ."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"ບໍ່​ມີ​ເຄືອ​ຂ່າຍ​ມື​ຖື​ທີ່​​ໃຊ້​ໄດ້."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"​ການໂທ​​ວິ​ດີ​ໂອ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"ປ່ຽນ​ເປັນ​ການ​ໂທ​ດ້ວຍ​ສຽງ"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"ສັບປ່ຽນກ້ອງ"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ຢຸດວິດີໂອຊົ່ວຄາວ"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"ເປີດກ້ອງ"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"ປິດກ້ອງ"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"ຕົວເລືອກ​ເພີ່ມ​ເຕີມ"</string>
     <string name="player_started" msgid="3478865572468310331">"ເຄື່ອງ​ຫຼິ້ນ​ເລີ່ມ​ຕົ້ນ​ແລ້ວ"</string>
     <string name="player_stopped" msgid="1278611664986561535">"ເຄື່ອງ​ຫຼິ້ນ​ຢຸດ​ແລ້ວ"</string>
diff --git a/InCallUI/res/values-lt/strings.xml b/InCallUI/res/values-lt/strings.xml
index 9b888c1..a4bc48e 100644
--- a/InCallUI/res/values-lt/strings.xml
+++ b/InCallUI/res/values-lt/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Atsisakyti"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Perskambinti"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Siųsti pranešimą"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Kitame įrenginyje vykstantis skambutis"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Perkelti skambutį"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Jei norite skambinti, išjunkite lėktuvo režimą."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Neregistruota tinkle."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Korinis tinklas nepasiekiamas"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Vaizdo skambutis"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Pakeisti į balso skambutį"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Perjungti fotoaparatą"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pristabdyti vaizdo įrašą"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Įjungti fotoaparatą"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Išjungti fotoaparatą"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Daugiau parinkčių"</string>
     <string name="player_started" msgid="3478865572468310331">"Leistuvė paleista"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Leistuvė sustabdyta"</string>
diff --git a/InCallUI/res/values-lv/strings.xml b/InCallUI/res/values-lv/strings.xml
index 07fb1ba..dc3cd62 100644
--- a/InCallUI/res/values-lv/strings.xml
+++ b/InCallUI/res/values-lv/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Noraidīt"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Atzvanīt"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Sūtīt īsziņu"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Notiekošs zvans citā ierīcē"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Pāradresēt zvanu"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Lai veiktu zvanu, vispirms izslēdziet lidojuma režīmu."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Nav reģistrēts tīklā."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilais tīkls nav pieejams."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videozvans"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Mainīt uz balss zvanu"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Pārslēgt kameru"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pārtraukt video plūsmu"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Ieslēgt kameru"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Izslēgt kameru"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Citas iespējas"</string>
     <string name="player_started" msgid="3478865572468310331">"Atskaņošana sākta"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Atskaņošana apturēta"</string>
diff --git a/InCallUI/res/values-mk-rMK/strings.xml b/InCallUI/res/values-mk-rMK/strings.xml
index a11be9e..c5e320c 100644
--- a/InCallUI/res/values-mk-rMK/strings.xml
+++ b/InCallUI/res/values-mk-rMK/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Отфрли"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Врати повик"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Порака"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Повик во тек на друг уред"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Префрлање повик"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"За да остварите повик, прво исклучете го авионскиот режим."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Не е регистриран на мрежа."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Не е достапна мобилна мрежа."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Видеоповик"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Промени во гласовен повик"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Промени ја камерата"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Паузирај видео"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Вклучете ја камерата"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Исклучете ја камерата"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Повеќе опции"</string>
     <string name="player_started" msgid="3478865572468310331">"Плеерот се вклучи"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Плеерот запре"</string>
diff --git a/InCallUI/res/values-ml-rIN/strings.xml b/InCallUI/res/values-ml-rIN/strings.xml
index 2635df4..d5ce2b9 100644
--- a/InCallUI/res/values-ml-rIN/strings.xml
+++ b/InCallUI/res/values-ml-rIN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"ഡിസ്മിസ്"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"തിരിച്ചുവിളിക്കുക"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"സന്ദേശം"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"മറ്റൊരു ഉപകരണത്തിൽ നടന്നുകൊണ്ടിരിക്കുന്ന കോൾ"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"കോൾ കൈമാറുക"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ഒരു കോൾ ചെയ്യാൻ, ആദ്യം ഫ്ലൈറ്റ് മോഡ് ഓഫുചെയ്യുക."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"നെറ്റ്‌വർക്കിൽ രജിസ്റ്റർ ചെയ്‌തിട്ടില്ല."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"സെല്ലുലാർ നെറ്റ്‌വർക്ക് ലഭ്യമല്ല."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"വീഡിയോ കോൾ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"വോയ്‌സ്‌ കോളിലേക്ക് മാറ്റുക"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"ക്യാമറ സ്വിച്ചുചെയ്യുക"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"വീഡിയോ താൽക്കാലികമായി നിർത്തുക"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"ക്യാമറ ഓണാക്കുക"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"ക്യാമറ ഓഫാക്കുക"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"കൂടുതൽ ഓ‌പ്‌ഷനുകൾ"</string>
     <string name="player_started" msgid="3478865572468310331">"പ്ലെയർ ആരംഭിച്ചു"</string>
     <string name="player_stopped" msgid="1278611664986561535">"പ്ലേയർ നിർത്തി"</string>
diff --git a/InCallUI/res/values-mn-rMN/strings.xml b/InCallUI/res/values-mn-rMN/strings.xml
index 8a17d0f..1b03750 100644
--- a/InCallUI/res/values-mn-rMN/strings.xml
+++ b/InCallUI/res/values-mn-rMN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Алгасах"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Буцааж залгах"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Зурвас"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Өөр төхөөрөмж дээр хийгдэж буй дуудлага"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Дуудлага шилжүүлэх"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Залгахын тулд эхлээд Нислэгийн горимоос гарна уу."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Сүлжээнд бүртгэгдээгүй байна."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Үүрэн сүлжээ байхгүй."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Видео дуудлага"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Дуут дуудлага руу өөрчлөх"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Камер солих"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Видеог түр зогсоох"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Камераа асаана уу"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Камер унтраах"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Нэмэлт сонголт"</string>
     <string name="player_started" msgid="3478865572468310331">"Тоглуулагчийг эхлүүлсэн"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Тоглуулагчийг зогсоосон"</string>
diff --git a/InCallUI/res/values-mr-rIN/strings.xml b/InCallUI/res/values-mr-rIN/strings.xml
index 9a4c8fe..f5d07c2 100644
--- a/InCallUI/res/values-mr-rIN/strings.xml
+++ b/InCallUI/res/values-mr-rIN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"डिसमिस करा"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"पुन्हा कॉल करा"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"संदेश"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"दुसऱ्या डिव्हाइसवर सुरु असलेला कॉल"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"कॉल स्थानांतरित करा"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"कॉल करण्यासाठी, प्रथम विमान मोड बंद करा."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"नेटवर्कवर नोंदणीकृत नाही."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"मोबाईल नेटवर्क उपलब्ध नाही."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"व्हिडिओ कॉल"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"व्हॉइस कॉल वर बदला"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"कॅमेरा स्विच करा"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"व्हिडिओला विराम द्या"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"कॅमेरा चालू करा"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"कॅमेरा बंद करा"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"अधिक पर्याय"</string>
     <string name="player_started" msgid="3478865572468310331">"प्लेअर सुरु झाले"</string>
     <string name="player_stopped" msgid="1278611664986561535">"प्लेअर थांबले"</string>
diff --git a/InCallUI/res/values-ms-rMY/strings.xml b/InCallUI/res/values-ms-rMY/strings.xml
index b42ac14..7be8fe8 100644
--- a/InCallUI/res/values-ms-rMY/strings.xml
+++ b/InCallUI/res/values-ms-rMY/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Ketepikan"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Panggil balik"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mesej"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Panggilan sedang berlangsung pada peranti lain"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Pindahkan Panggilan"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Untuk membuat panggilan, matikan mod Pesawat terlebih dahulu."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Tidak didaftarkan pada rangkaian."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Rangkaian selular tidak tersedia."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Panggilan video"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Tukar ke panggilan suara"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Tukar kamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Jeda video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Hidupkan kamera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Matikan kamera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Lagi pilihan"</string>
     <string name="player_started" msgid="3478865572468310331">"Pemain Dimulakan"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Pemain Dihentikan"</string>
diff --git a/InCallUI/res/values-my-rMM/strings.xml b/InCallUI/res/values-my-rMM/strings.xml
index b3deaa3..4b8659f 100644
--- a/InCallUI/res/values-my-rMM/strings.xml
+++ b/InCallUI/res/values-my-rMM/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"ပယ်ပါ"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"ပြန်ခေါ်ပါ"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"မက်ဆေ့ဂျ်"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"အခြားကိရိယာတွင် လက်ရှိခေါ်ဆိုနေမှု"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"ခေါ်ဆိုမှုကို လွှဲပြောင်းပါ"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ခေါ်ဆိုမှု ပြုလုပ်ရန်အတွက် လေယာဉ်ပျံမုဒ်ကို ဦးစွာပိတ်ပါ။"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"ကွန်ယက်ပေါ်တွင် မှတ်ပုံတင်ထားခြင်း မရှိပါ။"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"ဆဲလ်လူလာ ကွန်ရက် မရှိပါ။"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"ဗီဒီယို ခေါ်ဆိုမှု"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"အသံခေါ်ဆိုမှုသို့ ပြောင်းပါ"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"ကင်မရာပြောင်းပါ"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ဗီဒီယို ခေတ္တရပ်ပါ"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"ကင်မရာဖွင့်ပါ"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"ကင်မရာပိတ်ပါ"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"နောက်ထပ် ရွေးစရာများ"</string>
     <string name="player_started" msgid="3478865572468310331">"ပလေယာ စပါပြီ"</string>
     <string name="player_stopped" msgid="1278611664986561535">"ပလေယာ ရပ်တန့်သွားပါပြီ"</string>
diff --git a/InCallUI/res/values-nb/strings.xml b/InCallUI/res/values-nb/strings.xml
index f919105..e89a2db 100644
--- a/InCallUI/res/values-nb/strings.xml
+++ b/InCallUI/res/values-nb/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Avvis"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Ring tilbake"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Melding"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Samtale pågår på en annen enhet"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Overfør samtalen"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"For å ringe, slå av flymodus først."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ikke registrert på nettverket."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilnettverket er ikke tilgjengelig."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videoanrop"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Bytt til taleanrop"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Bytt kamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Sett videoen på pause"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Slå på kameraet"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Slå av kameraet"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Flere alternativer"</string>
     <string name="player_started" msgid="3478865572468310331">"Avspilleren har startet"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Avspilleren har stoppet"</string>
diff --git a/InCallUI/res/values-ne-rNP/strings.xml b/InCallUI/res/values-ne-rNP/strings.xml
index d5eb353..dc569de 100644
--- a/InCallUI/res/values-ne-rNP/strings.xml
+++ b/InCallUI/res/values-ne-rNP/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"खारेज गर्नुहोस्"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"कल फर्काउने"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"सन्देश"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"अर्को यन्त्रमा चलिरहेको कल"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"कल स्थानान्तरण गर्नुहोस्"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"कल गर्नका लागि, पहिले हवाइजहाज मोड बन्द गर्नुहोस्।"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"नेटवर्कमा दर्ता भएको छैन।"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"सेलुलर नेटवर्क उपलब्ध छैन।"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"भिडियो कल"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"आवाज कलमा परिवर्तन गर्नुहोस्"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"क्यामेरा स्विच गर्नुहोस्"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"भिडियो रोक्नुहोस्"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"क्यामेरालाई सक्रिय गर्नुहोस्"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"क्यामेरालाई निष्क्रिय पार्नुहोस्"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"थप विकल्पहरू"</string>
     <string name="player_started" msgid="3478865572468310331">"प्लेयर सुरु भयो"</string>
     <string name="player_stopped" msgid="1278611664986561535">"प्लेयर रोकियो"</string>
diff --git a/InCallUI/res/values-nl/strings.xml b/InCallUI/res/values-nl/strings.xml
index eeb17b6..048af49 100644
--- a/InCallUI/res/values-nl/strings.xml
+++ b/InCallUI/res/values-nl/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Sluiten"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Terugbellen"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Bericht"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Actief gesprek op een ander apparaat"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Gesprek doorschakelen"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Als je wilt bellen, moet je eerst de vliegtuigmodus uitschakelen."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Niet geregistreerd op netwerk."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobiel netwerk niet beschikbaar."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Vid.gespr."</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Wijzigen in spraakoproep"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Van camera wisselen"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Video onderbreken"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Camera inschakelen"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Camera uitschakelen"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Meer opties"</string>
     <string name="player_started" msgid="3478865572468310331">"Speler gestart"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Speler gestopt"</string>
diff --git a/InCallUI/res/values-pa-rIN/strings.xml b/InCallUI/res/values-pa-rIN/strings.xml
index 93464c9..956b755 100644
--- a/InCallUI/res/values-pa-rIN/strings.xml
+++ b/InCallUI/res/values-pa-rIN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"ਰੱਦ ਕਰੋ"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"ਵਾਪਸ ਕਾਲ ਕਰੋ"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"ਸੁਨੇਹਾ"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"ਕਿਸੇ ਹੋਰ ਡੀਵਾਈਸ \'ਤੇ ਜਾਰੀ ਕਾਲ"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"ਕਾਲ ਟ੍ਰਾਂਸਫਰ ਕਰੋ"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ਇੱਕ ਕਾਲ ਕਰਨ ਲਈ, ਪਹਿਲਾਂ ਜਹਾਜ਼ ਮੋਡ ਬੰਦ ਕਰੋ।"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"ਨੈੱਟਵਰਕ \'ਤੇ ਰਜਿਸਟਰ ਨਹੀਂ।"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"ਸੈਲਿਊਲਰ ਨੈੱਟਵਰਕ ਉਪਲਬਧ ਨਹੀਂ ਹੈ।"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"ਵੌਇਸ ਕਾਲ ਵਿੱਚ ਬਦਲੋ"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"ਕੈਮਰੇ \'ਤੇ ਬਦਲੋ"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ਵੀਡੀਓ ਰੋਕੋ"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"ਕੈਮਰਾ ਚਾਲੂ ਕਰੋ"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"ਕੈਮਰਾ ਬੰਦ ਕਰੋ"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"ਹੋਰ ਚੋਣਾਂ"</string>
     <string name="player_started" msgid="3478865572468310331">"ਪਲੇਅਰ ਸ਼ੁਰੂ ਹੋ ਗਿਆ"</string>
     <string name="player_stopped" msgid="1278611664986561535">"ਪਲੇਅਰ ਰੁਕ ਗਿਆ"</string>
diff --git a/InCallUI/res/values-pl/strings.xml b/InCallUI/res/values-pl/strings.xml
index bdb6aba..5327a34 100644
--- a/InCallUI/res/values-pl/strings.xml
+++ b/InCallUI/res/values-pl/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Odrzuć"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Oddzwoń"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Wyślij SMS-a"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Trwająca rozmowa na innym urządzeniu"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Przełącz rozmowę"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Aby rozpocząć połączenie, wyłącz najpierw tryb samolotowy."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Nie zarejestrowano w sieci."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Sieć komórkowa jest niedostępna."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Rozmowa wideo"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Zmień na połączenie głosowe"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Przełącz kamerę"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Wstrzymaj wideo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Włącz kamerę"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Wyłącz kamerę"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Więcej opcji"</string>
     <string name="player_started" msgid="3478865572468310331">"Odtwarzacz włączony"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Odtwarzacz zatrzymany"</string>
diff --git a/InCallUI/res/values-pt-rBR/strings.xml b/InCallUI/res/values-pt-rBR/strings.xml
index 1ec7e12..a7fa9b0 100644
--- a/InCallUI/res/values-pt-rBR/strings.xml
+++ b/InCallUI/res/values-pt-rBR/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Dispensar"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Retor. cham."</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mensagem"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Chamada em andamento em outro dispositivo"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transferir chamada"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Para fazer uma chamada, primeiro desative o modo avião."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Não registrado na rede."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Rede celular não disponível."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videocham."</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Alterar para chamada de voz"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Alternar câmera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pausar vídeo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Ativar câmera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Desativar câmera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Mais opções"</string>
     <string name="player_started" msgid="3478865572468310331">"Player iniciado"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Player interrompido"</string>
diff --git a/InCallUI/res/values-pt-rPT/strings.xml b/InCallUI/res/values-pt-rPT/strings.xml
index 2b26efc..791da62 100644
--- a/InCallUI/res/values-pt-rPT/strings.xml
+++ b/InCallUI/res/values-pt-rPT/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Ignorar"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Ligar de volta"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mensagem"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Chamada em curso noutro dispositivo"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transferir chamada"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Para efetuar uma chamada, desative primeiro o Modo de avião."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Sem registo na rede."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Rede móvel não disponível."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videochamada"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Mudar para chamada de voz"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Trocar câmara"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Interromper vídeo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Ativar câmara"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Desativar câmara"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Mais opções"</string>
     <string name="player_started" msgid="3478865572468310331">"Leitor iniciado"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Leitor interrompido"</string>
diff --git a/InCallUI/res/values-pt/strings.xml b/InCallUI/res/values-pt/strings.xml
index 1ec7e12..a7fa9b0 100644
--- a/InCallUI/res/values-pt/strings.xml
+++ b/InCallUI/res/values-pt/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Dispensar"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Retor. cham."</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mensagem"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Chamada em andamento em outro dispositivo"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transferir chamada"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Para fazer uma chamada, primeiro desative o modo avião."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Não registrado na rede."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Rede celular não disponível."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videocham."</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Alterar para chamada de voz"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Alternar câmera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pausar vídeo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Ativar câmera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Desativar câmera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Mais opções"</string>
     <string name="player_started" msgid="3478865572468310331">"Player iniciado"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Player interrompido"</string>
diff --git a/InCallUI/res/values-ro/strings.xml b/InCallUI/res/values-ro/strings.xml
index 031c48a..deb2fab 100644
--- a/InCallUI/res/values-ro/strings.xml
+++ b/InCallUI/res/values-ro/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Refuzați"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Apelați înapoi"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Trimiteți mesaj"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Apel în curs pe alt dispozitiv"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transferați apelul"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Pentru a apela, mai întâi dezactivați modul Avion."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Neînregistrat în rețea."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Rețeaua mobilă nu este disponibilă."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Apel video"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Treceți la apel vocal"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Comutați camera foto"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Întrerupeți apelul video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Activați camera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Dezactivați camera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Mai multe opțiuni"</string>
     <string name="player_started" msgid="3478865572468310331">"Playerul a pornit"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Playerul s-a oprit"</string>
diff --git a/InCallUI/res/values-ru/strings.xml b/InCallUI/res/values-ru/strings.xml
index fdc8f6a..fa1bea9 100644
--- a/InCallUI/res/values-ru/strings.xml
+++ b/InCallUI/res/values-ru/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Закрыть"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Перезвонить"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Написать SMS"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Вы участвуете в разговоре на другом устройстве"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Перевести на это устройство"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Отключите режим полета."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Нет регистрации в сети."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Мобильная сеть недоступна."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Видеовызов"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Отключить видео"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Сменить камеру"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Приостановить видео"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Включить камеру"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Выключить камеру"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Другие настройки"</string>
     <string name="player_started" msgid="3478865572468310331">"Видеоплеер включен"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Видеоплеер отключен"</string>
diff --git a/InCallUI/res/values-si-rLK/strings.xml b/InCallUI/res/values-si-rLK/strings.xml
index 129e181..b976d67 100644
--- a/InCallUI/res/values-si-rLK/strings.xml
+++ b/InCallUI/res/values-si-rLK/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"අස් කරන්න"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"පසුඇමතුම"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"පණිවිඩය"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"වෙනත් උපාංගයක සිදු වන ඇමතුම"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"ඇමතුම මාරු කරන්න"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"ඇමතුමක් ගැනීමට, මුලින්ම ගුවන් යානා ප්‍රකාරය ක්‍රියාවිරහිත කරන්න."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"ජාලය මත ලියාපදිංචි වී නැත."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"සෙලියුලර් ජාලය නොතිබේ."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"වීඩියෝ ඇමතුම"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"හඬ ඇමතුමක් වෙත මාරු කරන්න"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"කැමරාව මාරු කරන්න"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"විඩියෝව විරාම කරන්න"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"කැමරාව ක්‍රියාත්මක කරන්න"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"කැමරාව ක්‍රියා විරහිත කරන්න"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"තවත් විකල්ප"</string>
     <string name="player_started" msgid="3478865572468310331">"ධාවකය ආරම්භ කරන ලදි"</string>
     <string name="player_stopped" msgid="1278611664986561535">"ධාවකය නැවතුණි"</string>
diff --git a/InCallUI/res/values-sk/strings.xml b/InCallUI/res/values-sk/strings.xml
index d553993..95f69a1 100644
--- a/InCallUI/res/values-sk/strings.xml
+++ b/InCallUI/res/values-sk/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Zatvoriť"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Zavolať späť"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Správa"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Prebiehajúci hovor v inom zariadení"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Prepojiť hovor"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Ak chcete volať, vypnite najprv režim v lietadle."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Prihlásenie do siete nebolo úspešné."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilná sieť nie je k dispozícii."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videohovor"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Zmeniť na hlasový hovor"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Zapnúť kameru"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pozastaviť video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Zapnúť fotoaparát"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Vypnúť fotoaparát"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Ďalšie možnosti"</string>
     <string name="player_started" msgid="3478865572468310331">"Prehrávač bol spustený"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Prehrávač bol zastavený"</string>
diff --git a/InCallUI/res/values-sl/strings.xml b/InCallUI/res/values-sl/strings.xml
index 6ed298f..0e436f5 100644
--- a/InCallUI/res/values-sl/strings.xml
+++ b/InCallUI/res/values-sl/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Opusti"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Povrat. klic"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"SMS"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Aktivni klic v drugi napravi"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Prenos klica"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Če želite poklicati, najprej izklopite način za letalo."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ni registrirano v omrežju."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mobilno omrežje ni na voljo."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videoklic"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Preklopi na glasovni klic"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Preklopi med fotoaparati"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Zaustavi video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Vklopi kamero"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Izklopi kamero"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Več možnosti"</string>
     <string name="player_started" msgid="3478865572468310331">"Predvajanje začeto"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Predvajanje ustavljeno"</string>
diff --git a/InCallUI/res/values-sq-rAL/strings.xml b/InCallUI/res/values-sq-rAL/strings.xml
index b3a9acd..84db531 100644
--- a/InCallUI/res/values-sq-rAL/strings.xml
+++ b/InCallUI/res/values-sq-rAL/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Largoje"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Ri-telefono"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mesazh"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Telefonatë në vazhdim në një pajisje tjetër"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Transfero telefonatën"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Për të kryer telefonatë, së pari çaktivizo modalitetin e aeroplanit."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"I paregjistruar në rrjet."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Rrjeti celular nuk mundësohet."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Telefonatë me video"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Ndërro në telefonatë me video"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Ndërro kamerën"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Vendose në pauzë videon"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Aktivizo kamerën"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Çaktivizo kamerën"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Opsione të tjera"</string>
     <string name="player_started" msgid="3478865572468310331">"Luajtësi filloi"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Luajtësi ndaloi"</string>
diff --git a/InCallUI/res/values-sr/strings.xml b/InCallUI/res/values-sr/strings.xml
index a6f317b..12ffc12 100644
--- a/InCallUI/res/values-sr/strings.xml
+++ b/InCallUI/res/values-sr/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Одбаци"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Узврати позив"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Пошаљи SMS"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Позив је у току на другом уређају"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Пребаци позив"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Да бисте упутили позив, прво искључите режим рада у авиону."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Није регистровано на мрежи."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Мобилна мрежа није доступна."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Видео позив"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Промени у гласовни позив"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Промени камеру"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Паузирај видео"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Укључи камеру"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Искључи камеру"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Још опција"</string>
     <string name="player_started" msgid="3478865572468310331">"Плејер је покренут"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Плејер је заустављен"</string>
diff --git a/InCallUI/res/values-sv/strings.xml b/InCallUI/res/values-sv/strings.xml
index 2a91e1d..bda578c 100644
--- a/InCallUI/res/values-sv/strings.xml
+++ b/InCallUI/res/values-sv/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Ignorera"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Ring upp"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Meddelande"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Pågående samtal på en annan enhet"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Överför samtal"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Om du vill ringa måste du först inaktivera flygplansläge."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Inte registrerat på nätverk."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Det finns inget mobilnät tillgängligt."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Videosamt."</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Byt till röstsamtal"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Byt kamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Pausa video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Slå på kameran"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Stäng av kameran"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Fler alternativ"</string>
     <string name="player_started" msgid="3478865572468310331">"Videospelaren har startats"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Videospelaren har stoppats"</string>
diff --git a/InCallUI/res/values-sw/strings.xml b/InCallUI/res/values-sw/strings.xml
index 3b29d18..3965fb7 100644
--- a/InCallUI/res/values-sw/strings.xml
+++ b/InCallUI/res/values-sw/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Ondoa"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Mpigie"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Ujumbe"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Una Hangout inayoendelea kwenye kifaa kingine"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Hamisha Hangout"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Ili upige simu kwanza, zima Hali ya ndegeni."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Haijasajiliwa kwenye mtandao."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Mitandao ya simu za mkononi haipatikani."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Hangout ya Video"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Badilisha iwe simu ya sauti"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Badilisha kamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Sitisha video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Washa kamera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Zima kamera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Chaguo zaidi"</string>
     <string name="player_started" msgid="3478865572468310331">"Kichezaji Kimeanzishwa"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Kichezaji Kimekomeshwa"</string>
diff --git a/InCallUI/res/values-ta-rIN/strings.xml b/InCallUI/res/values-ta-rIN/strings.xml
index cdaf613..0c3fc50 100644
--- a/InCallUI/res/values-ta-rIN/strings.xml
+++ b/InCallUI/res/values-ta-rIN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"நிராகரி"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"திரும்ப அழை"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"செய்தி அனுப்பு"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"மற்றொரு சாதனத்தில் செயலில் இருக்கும் அழைப்பு"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"அழைப்பை இடமாற்று"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"அழைப்பதற்கு, முதலில் விமானப் பயன்முறையை முடக்கவும்."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"நெட்வொர்க்கில் பதிவுசெய்யப்படவில்லை."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"செல்லுலார் நெட்வொர்க் கிடைக்கவில்லை."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"வீடியோ அழைப்பு"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"குரல் அழைப்பிற்கு மாறு"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"கேமராவை மாற்று"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"வீடியோவை இடைநிறுத்து"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"கேமராவை இயக்கு"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"கேமராவை முடக்கு"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"கூடுதல் விருப்பங்கள்"</string>
     <string name="player_started" msgid="3478865572468310331">"வீடியோ பிளேயர் துவங்கியது"</string>
     <string name="player_stopped" msgid="1278611664986561535">"வீடியோ பிளேயர் நிறுத்தப்பட்டது"</string>
diff --git a/InCallUI/res/values-te-rIN/strings.xml b/InCallUI/res/values-te-rIN/strings.xml
index 74134fc..b53c2f1 100644
--- a/InCallUI/res/values-te-rIN/strings.xml
+++ b/InCallUI/res/values-te-rIN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"తీసివేయి"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"తిరిగి కాల్ చేయి"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"సందేశం పంపు"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"మరో పరికరంలో కాల్ జరుగుతోంది"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"కాల్‌ను బదిలీ చేయి"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"కాల్ చేయడానికి, ముందుగా ఎయిర్‌ప్లైన్ మోడ్‌ను ఆపివేయండి."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"నెట్‌వర్క్‌లో నమోదు కాలేదు."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"సెల్యులార్ నెట్‌వర్క్ అందుబాటులో లేదు."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"వీడియో కాల్"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"వాయిస్ కాల్‌కి మార్చు"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"కెమెరాను మార్చు"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"వీడియోను పాజ్ చేయి"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"కెమెరాను ఆన్ చేయి"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"కెమెరాను ఆఫ్ చేయి"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"మరిన్ని ఎంపికలు"</string>
     <string name="player_started" msgid="3478865572468310331">"ప్లేయర్ ప్రారంభమైంది"</string>
     <string name="player_stopped" msgid="1278611664986561535">"ప్లేయర్ ఆపివేయబడింది"</string>
diff --git a/InCallUI/res/values-th/strings.xml b/InCallUI/res/values-th/strings.xml
index db9b341..6802265 100644
--- a/InCallUI/res/values-th/strings.xml
+++ b/InCallUI/res/values-th/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"ปิด"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"โทรกลับ"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"ข้อความ"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"กำลังใช้สายบนอุปกรณ์อื่น"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"โอนสาย"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"หากต้องการโทรออก ให้ปิดโหมดบนเครื่องบินก่อน"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"ยังไม่ได้ลงทะเบียนบนเครือข่าย"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"เครือข่ายมือถือใช้งานไม่ได้"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"แฮงเอาท์วิดีโอ"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"เปลี่ยนเป็นการโทรด้วยเสียง"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"เปลี่ยนกล้อง"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"หยุดวิดีโอชั่วคราว"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"เปิดกล้อง"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"ปิดกล้อง"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"ตัวเลือกเพิ่มเติม"</string>
     <string name="player_started" msgid="3478865572468310331">"โปรแกรมเล่นเริ่มทำงานแล้ว"</string>
     <string name="player_stopped" msgid="1278611664986561535">"โปรแกรมเล่นหยุดแล้ว"</string>
diff --git a/InCallUI/res/values-tl/strings.xml b/InCallUI/res/values-tl/strings.xml
index 994e5b6..e2b3b8c 100644
--- a/InCallUI/res/values-tl/strings.xml
+++ b/InCallUI/res/values-tl/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"I-dismiss"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Tawagan"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Mensahe"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Kasalukuyang tawag sa isa pang device"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Ilipat ang Tawag"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Upang tumawag, paki-off muna ang Airplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Hindi nakarehistro sa network."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Hindi available ang cellular network."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Mag-video call"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Gawing voice call"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Lumipat ng camera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"I-pause ang video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"I-on ang camera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"I-off ang camera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Higit pang mga opsyon"</string>
     <string name="player_started" msgid="3478865572468310331">"Nagsimula na ang Player"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Huminto ang Player"</string>
diff --git a/InCallUI/res/values-tr/strings.xml b/InCallUI/res/values-tr/strings.xml
index feec3f1..31b3b1e 100644
--- a/InCallUI/res/values-tr/strings.xml
+++ b/InCallUI/res/values-tr/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Yok say"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Geri ara"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"İleti"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Başka bir cihazda devam eden çağrı"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Çağrıyı Aktar"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Çağrı yapmak için öncelikle Uçak modunu kapatın."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ağda kayıtlı değil."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Hücresel ağ kullanılamıyor."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Vid. görşm"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Sesli çağrıya geç"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Kamerayı değiştir"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Videoyu duraklat"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Kamerayı aç"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Kamerayı kapat"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Diğer seçenekler"</string>
     <string name="player_started" msgid="3478865572468310331">"Oynatıcı Başlatıldı"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Oynatıcı Durduruldu"</string>
diff --git a/InCallUI/res/values-uk/strings.xml b/InCallUI/res/values-uk/strings.xml
index 39c7c5c..6ff2763 100644
--- a/InCallUI/res/values-uk/strings.xml
+++ b/InCallUI/res/values-uk/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Відхилити"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Передзвонити"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Написати SMS"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Поточний виклик на іншому пристрої"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Передати виклик"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Щоб зателефонувати, вимкніть режим польоту."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Не зареєстровано в мережі."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Мобільна мережа недоступна."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Відеодзвінок"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Перейти в режим голосового виклику"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Вибрати камеру"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Призупинити відео"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Увімкнути камеру"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Вимкнути камеру"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Інші опції"</string>
     <string name="player_started" msgid="3478865572468310331">"Програвач запущено"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Програвач зупинено"</string>
diff --git a/InCallUI/res/values-ur-rPK/strings.xml b/InCallUI/res/values-ur-rPK/strings.xml
index 2d5a912..75252e6 100644
--- a/InCallUI/res/values-ur-rPK/strings.xml
+++ b/InCallUI/res/values-ur-rPK/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"برخاست کریں"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"واپس کال کریں"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"پیغام"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"ایک اور آلے پر جاری کال"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"کال منتقل کریں"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"کال کرنے کیلئے، پہلے ہوائی جہاز طرز کو آف کریں۔"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"نیٹ ورک پر رجسٹرڈ نہیں ہے۔"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"سیلولر نیٹ ورک دستیاب نہیں ہے۔"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"ویڈیو کال"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"صوتی کال میں تبدیل کریں"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"کیمرا سوئچ کریں"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"ویڈیو موقوف کریں"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"کیمرا آن کریں"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"کیمرا آف کریں"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"مزید اختیارات"</string>
     <string name="player_started" msgid="3478865572468310331">"پلیئر شروع ہوگیا"</string>
     <string name="player_stopped" msgid="1278611664986561535">"پلیئر بند ہوگیا"</string>
diff --git a/InCallUI/res/values-uz-rUZ/strings.xml b/InCallUI/res/values-uz-rUZ/strings.xml
index 0e1d482..202e265 100644
--- a/InCallUI/res/values-uz-rUZ/strings.xml
+++ b/InCallUI/res/values-uz-rUZ/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Rad etish"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Telefon qilish"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"SMS yuborish"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Boshqa qurilmada hozir qo‘ng‘iroq amalga oshirilmoqda."</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Qo‘ng‘iroqni o‘tkazish"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Qo‘ng‘iroq qilish uchun, avval “Parvoz rejimi” o‘chirilishi kerak."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Tarmoqda ro‘yxatdan o‘tmagan."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Uyali tarmoq mavjud emas."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Video qo‘ng‘iroq"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Ovozli qo‘ng‘iroqqa o‘zgartirish"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Kamerani almashtirish"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Videoni to‘xtatib turish"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Kamerani yoqish"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Kamerani o‘chirish"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Boshqa sozlamalar"</string>
     <string name="player_started" msgid="3478865572468310331">"Pleyer ishga tushirildi"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Pleyer to‘xtatildi"</string>
diff --git a/InCallUI/res/values-vi/strings.xml b/InCallUI/res/values-vi/strings.xml
index 473650d..2e09307 100644
--- a/InCallUI/res/values-vi/strings.xml
+++ b/InCallUI/res/values-vi/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Loại bỏ"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Gọi lại"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Tin nhắn"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Cuộc gọi đang diễn ra trên một thiết bị khác"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Chuyển cuộc gọi"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Để 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="8704761887752183855">"Chưa được đăng ký trên mạng."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Không có mạng di động."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Cuộc gọi điện video"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Thay đổi thành cuộc gọi thoại"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Chuyển máy ảnh"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Dừng video"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Bật máy ảnh"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Tắt máy ảnh"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Tùy chọn khác"</string>
     <string name="player_started" msgid="3478865572468310331">"Đã khởi động trình phát"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Đã dừng trình phát"</string>
diff --git a/InCallUI/res/values-zh-rCN/strings.xml b/InCallUI/res/values-zh-rCN/strings.xml
index 4ff11f1..e51a719 100644
--- a/InCallUI/res/values-zh-rCN/strings.xml
+++ b/InCallUI/res/values-zh-rCN/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"拒绝"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"回电"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"发短信"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"其他设备上有正在进行的通话"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"转接通话"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"要拨打电话，请先关闭飞行模式。"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"尚未注册网络。"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"无法连接到移动网络。"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"视频通话"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"改为语音通话"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"切换摄像头"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"暂停视频"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"开启摄像头"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"关闭摄像头"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"更多选项"</string>
     <string name="player_started" msgid="3478865572468310331">"播放器已启动"</string>
     <string name="player_stopped" msgid="1278611664986561535">"播放器已停止"</string>
diff --git a/InCallUI/res/values-zh-rHK/strings.xml b/InCallUI/res/values-zh-rHK/strings.xml
index 9213658..5994a23 100644
--- a/InCallUI/res/values-zh-rHK/strings.xml
+++ b/InCallUI/res/values-zh-rHK/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"拒絕"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"回電"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"短訊"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"其他裝置上有正在進行的通話"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"轉接來電"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"如要撥打電話，請先關閉飛行模式。"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"未在網絡上註冊。"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"無法連線至流動網絡。"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"視像通話"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"變更為語音通話"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"切換鏡頭"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"暫停視像通話"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"開啟攝影機"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"關閉攝影機"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"更多選項"</string>
     <string name="player_started" msgid="3478865572468310331">"已啟動播放器"</string>
     <string name="player_stopped" msgid="1278611664986561535">"已停止播放器"</string>
diff --git a/InCallUI/res/values-zh-rTW/strings.xml b/InCallUI/res/values-zh-rTW/strings.xml
index 0c52ee2..70c0870 100644
--- a/InCallUI/res/values-zh-rTW/strings.xml
+++ b/InCallUI/res/values-zh-rTW/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"拒絕"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"回撥"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"傳送簡訊"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"其他裝置上有進行中的通話"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"轉接來電"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"撥號前，請先關閉飛航模式。"</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"尚未註冊網路。"</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"無法連線到行動網路。"</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"視訊通話"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"變更為語音通話"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"切換鏡頭"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"暫停視訊畫面"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"開啟攝影機"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"關閉攝影機"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"更多選項"</string>
     <string name="player_started" msgid="3478865572468310331">"已啟動播放器"</string>
     <string name="player_stopped" msgid="1278611664986561535">"已停止播放器"</string>
diff --git a/InCallUI/res/values-zu/strings.xml b/InCallUI/res/values-zu/strings.xml
index f04867c..9a8c3aa 100644
--- a/InCallUI/res/values-zu/strings.xml
+++ b/InCallUI/res/values-zu/strings.xml
@@ -83,6 +83,8 @@
     <string name="notification_action_dismiss" msgid="1998811618480434300">"Cashisa"</string>
     <string name="notification_missedCall_call_back" msgid="7855043480614703539">"Phinda ushayele"</string>
     <string name="notification_missedCall_message" msgid="2407410183079324393">"Umlayezo"</string>
+    <string name="notification_external_call" msgid="5611236780302924816">"Ikholi eqhubekayo kwenye idivayisi"</string>
+    <string name="notification_transfer_call" msgid="687009078741947505">"Dlulisela ikholi"</string>
     <string name="incall_error_power_off" msgid="3626117639377110403">"Ukwenza ikholi, vala kuqala imodi Yendiza."</string>
     <string name="incall_error_emergency_only" msgid="8704761887752183855">"Ayibhalisiwe kwinethiwekhi."</string>
     <string name="incall_error_out_of_service" msgid="1830319376612608339">"Inethiwekhi yeselula ayitholakali."</string>
@@ -121,7 +123,8 @@
     <string name="onscreenVideoCallText" msgid="1578940167445068369">"Ikholi yevidiyo"</string>
     <string name="onscreenChangeToVoiceText" msgid="6249580619992009182">"Shintshela kukholi yezwi"</string>
     <string name="onscreenSwitchCameraText" msgid="7141261218152736690">"Shintsha Ikhamera"</string>
-    <string name="onscreenPauseVideoText" msgid="1268768027709892604">"Misa isikhashana ividiyo"</string>
+    <string name="onscreenTurnOnCameraText" msgid="915019986687927588">"Vula ikhamera"</string>
+    <string name="onscreenTurnOffCameraText" msgid="6225377831394679126">"Vala ikhamera"</string>
     <string name="onscreenOverflowText" msgid="7932741239724473887">"Izinketho eziningi"</string>
     <string name="player_started" msgid="3478865572468310331">"Umdlali uqalile"</string>
     <string name="player_stopped" msgid="1278611664986561535">"Umdlali umisiwe"</string>
diff --git a/InCallUI/res/values/strings.xml b/InCallUI/res/values/strings.xml
index 57a1b53..84eb14c 100644
--- a/InCallUI/res/values/strings.xml
+++ b/InCallUI/res/values/strings.xml
@@ -218,6 +218,17 @@
          The user will be able to send text messages using the phone number.
          [CHAR LIMIT=12] -->
     <string name="notification_missedCall_message">Message</string>
+    <!-- The "label" of the in-call Notification for an ongoing external call.
+         External calls are a representation of a call which is in progress on the user's other
+         device (e.g. another phone or a watch).
+         [CHAR LIMIT=60] -->
+    <string name="notification_external_call">Ongoing call on another device</string>
+    <!-- Notification action displayed for external call notifications.  External calls are a
+         representation of a call which is in progress on the user's other device (e.g. another
+         phone or a watch).  The "transfer call" action initiates the process of transferring an
+         external call to the current device.
+         [CHAR LIMIT=30] -->
+    <string name="notification_transfer_call">Transfer Call</string>
 
     <!-- In-call screen: call failure message displayed in an error dialog -->
     <string name="incall_error_power_off">To place a call, first turn off Airplane mode.</string>
@@ -313,8 +324,10 @@
     <!-- Text for the onscreen "Switch camera" button. When clicked, this switches the user's camera
          for video calling between the front-facing camera and the back-facing camera. -->
     <string name="onscreenSwitchCameraText">Switch camera</string>
-    <!-- Text for the onscreen "Pause video" button. -->
-    <string name="onscreenPauseVideoText">Pause video</string>
+    <!-- Text for the onscreen "turn on camera" button. -->
+    <string name="onscreenTurnOnCameraText">Turn on camera</string>
+    <!-- Text for the onscreen "turn off camera" button. -->
+    <string name="onscreenTurnOffCameraText">Turn off camera</string>
     <!-- Text for the onscreen overflow button, to see additional actions which can be done. -->
     <string name="onscreenOverflowText">More options</string>
 
diff --git a/InCallUI/src/com/android/incallui/AnswerPresenter.java b/InCallUI/src/com/android/incallui/AnswerPresenter.java
index 6757268..883b54f 100644
--- a/InCallUI/src/com/android/incallui/AnswerPresenter.java
+++ b/InCallUI/src/com/android/incallui/AnswerPresenter.java
@@ -128,10 +128,7 @@
     @Override
     public void onUpgradeToVideo(Call call) {
         Log.d(this, "onUpgradeToVideo: " + this + " call=" + call);
-        if (getUi() == null) {
-            Log.d(this, "onUpgradeToVideo ui is null");
-            return;
-        }
+        showAnswerUi(true);
         boolean isUpgradePending = isVideoUpgradePending(call);
         InCallPresenter inCallPresenter = InCallPresenter.getInstance();
         if (isUpgradePending
diff --git a/InCallUI/src/com/android/incallui/Call.java b/InCallUI/src/com/android/incallui/Call.java
index 447c34c..d552ecf 100644
--- a/InCallUI/src/com/android/incallui/Call.java
+++ b/InCallUI/src/com/android/incallui/Call.java
@@ -33,6 +33,8 @@
 import android.text.TextUtils;
 
 import com.android.contacts.common.CallUtil;
+import com.android.contacts.common.compat.CallSdkCompat;
+import com.android.contacts.common.compat.CompatUtils;
 import com.android.contacts.common.compat.SdkVersionOverride;
 import com.android.contacts.common.compat.telecom.TelecomManagerCompat;
 import com.android.contacts.common.testing.NeededForTesting;
@@ -400,13 +402,30 @@
         setState(state);
     }
 
+    /**
+     * Creates a new instance of a {@link Call}.  Registers a callback for
+     * {@link android.telecom.Call} events.
+     */
     public Call(android.telecom.Call telecomCall) {
+        this(telecomCall, true /* registerCallback */);
+    }
+
+    /**
+     * Creates a new instance of a {@link Call}.  Optionally registers a callback for
+     * {@link android.telecom.Call} events.
+     *
+     * Intended for use when creating a {@link Call} instance for use with the
+     * {@link ContactInfoCache}, where we do not want to register callbacks for the new call.
+     */
+    public Call(android.telecom.Call telecomCall, boolean registerCallback) {
         mTelecomCall = telecomCall;
         mId = ID_PREFIX + Integer.toString(sIdCounter++);
 
-        updateFromTelecomCall();
+        updateFromTelecomCall(registerCallback);
 
-        mTelecomCall.registerCallback(mTelecomCallCallback);
+        if (registerCallback) {
+            mTelecomCall.registerCallback(mTelecomCallCallback);
+        }
 
         mTimeAddedMs = System.currentTimeMillis();
     }
@@ -426,7 +445,8 @@
     private void update() {
         Trace.beginSection("Update");
         int oldState = getState();
-        updateFromTelecomCall();
+        // We want to potentially register a video call callback here.
+        updateFromTelecomCall(true /* registerCallback */);
         if (oldState != getState() && getState() == Call.State.DISCONNECTED) {
             CallList.getInstance().onDisconnect(this);
         } else {
@@ -435,7 +455,7 @@
         Trace.endSection();
     }
 
-    private void updateFromTelecomCall() {
+    private void updateFromTelecomCall(boolean registerCallback) {
         Log.d(this, "updateFromTelecomCall: " + mTelecomCall.toString());
         final int translatedState = translateState(mTelecomCall.getState());
         if (mState != State.BLOCKED) {
@@ -444,7 +464,7 @@
             maybeCancelVideoUpgrade(mTelecomCall.getDetails().getVideoState());
         }
 
-        if (mTelecomCall.getVideoCall() != null) {
+        if (registerCallback && mTelecomCall.getVideoCall() != null) {
             if (mVideoCallCallback == null) {
                 mVideoCallCallback = new InCallVideoCallCallback(this);
             }
@@ -883,9 +903,46 @@
     }
 
     /**
+     * Determines if the call is an external call.
+     *
+     * An external call is one which does not exist locally for the
+     * {@link android.telecom.ConnectionService} it is associated with.
+     *
+     * External calls are only supported in N and higher.
+     *
+     * @return {@code true} if the call is an external call, {@code false} otherwise.
+     */
+    public boolean isExternalCall() {
+        return CompatUtils.isNCompatible() &&
+                hasProperty(CallSdkCompat.Details.PROPERTY_IS_EXTERNAL_CALL);
+    }
+
+    /**
+     * Determines if the external call is pullable.
+     *
+     * An external call is one which does not exist locally for the
+     * {@link android.telecom.ConnectionService} it is associated with.  An external call may be
+     * "pullable", which means that the user can request it be transferred to the current device.
+     *
+     * External calls are only supported in N and higher.
+     *
+     * @return {@code true} if the call is an external call, {@code false} otherwise.
+     */
+    public boolean isPullableExternalCall() {
+        return CompatUtils.isNCompatible() &&
+                (mTelecomCall.getDetails().getCallCapabilities()
+                        & CallSdkCompat.Details.CAPABILITY_CAN_PULL_CALL)
+                        == CallSdkCompat.Details.CAPABILITY_CAN_PULL_CALL;
+    }
+
+    /**
      * Logging utility methods
      */
     public void logCallInitiationType() {
+        if (isExternalCall()) {
+            return;
+        }
+
         if (getState() == State.INCOMING) {
             getLogState().callInitiationMethod = LogState.INITIATION_INCOMING;
         } else if (getIntentExtras() != null) {
@@ -903,11 +960,12 @@
             return String.valueOf(mId);
         }
 
-        return String.format(Locale.US, "[%s, %s, %s, children:%s, parent:%s, conferenceable:%s, " +
-                "videoState:%s, mSessionModificationState:%d, VideoSettings:%s]",
+        return String.format(Locale.US, "[%s, %s, %s, %s, children:%s, parent:%s, " +
+                "conferenceable:%s, videoState:%s, mSessionModificationState:%d, VideoSettings:%s]",
                 mId,
                 State.toString(getState()),
                 Details.capabilitiesToString(mTelecomCall.getDetails().getCallCapabilities()),
+                Details.propertiesToString(mTelecomCall.getDetails().getCallProperties()),
                 mChildCallIds,
                 getParentId(),
                 this.mTelecomCall.getConferenceableCalls(),
diff --git a/InCallUI/src/com/android/incallui/CallButtonFragment.java b/InCallUI/src/com/android/incallui/CallButtonFragment.java
index 5a25b6a..6b633ea 100644
--- a/InCallUI/src/com/android/incallui/CallButtonFragment.java
+++ b/InCallUI/src/com/android/incallui/CallButtonFragment.java
@@ -65,7 +65,6 @@
         implements CallButtonPresenter.CallButtonUi, OnMenuItemClickListener, OnDismissListener,
         View.OnClickListener {
 
-    private static final int INVALID_INDEX = -1;
     private int mButtonMaxVisible;
     // The button is currently visible in the UI
     private static final int BUTTON_VISIBLE = 1;
@@ -182,7 +181,7 @@
         super.onActivityCreated(savedInstanceState);
 
         // set the buttons
-        updateAudioButtons(getPresenter().getSupportedAudio());
+        updateAudioButtons();
     }
 
     @Override
@@ -425,8 +424,14 @@
     }
 
     @Override
-    public void setVideoPaused(boolean isPaused) {
-        mPauseVideoButton.setSelected(isPaused);
+    public void setVideoPaused(boolean isVideoPaused) {
+        mPauseVideoButton.setSelected(isVideoPaused);
+
+        if (isVideoPaused) {
+            mPauseVideoButton.setContentDescription(getText(R.string.onscreenTurnOnCameraText));
+        } else {
+            mPauseVideoButton.setContentDescription(getText(R.string.onscreenTurnOffCameraText));
+        }
     }
 
     @Override
@@ -505,7 +510,7 @@
 
     @Override
     public void setAudio(int mode) {
-        updateAudioButtons(getPresenter().getSupportedAudio());
+        updateAudioButtons();
         refreshAudioModePopup();
 
         if (mPrevAudioMode != mode) {
@@ -516,7 +521,7 @@
 
     @Override
     public void setSupportedAudio(int modeMask) {
-        updateAudioButtons(modeMask);
+        updateAudioButtons();
         refreshAudioModePopup();
     }
 
@@ -555,7 +560,7 @@
     public void onDismiss(PopupMenu menu) {
         Log.d(this, "- onDismiss: " + menu);
         mAudioModePopupVisible = false;
-        updateAudioButtons(getPresenter().getSupportedAudio());
+        updateAudioButtons();
     }
 
     /**
@@ -600,7 +605,7 @@
      * Updates the audio button so that the appriopriate visual layers
      * are visible based on the supported audio formats.
      */
-    private void updateAudioButtons(int supportedModes) {
+    private void updateAudioButtons() {
         final boolean bluetoothSupported = isSupported(CallAudioState.ROUTE_BLUETOOTH);
         final boolean speakerSupported = isSupported(CallAudioState.ROUTE_SPEAKER);
 
diff --git a/InCallUI/src/com/android/incallui/CallButtonPresenter.java b/InCallUI/src/com/android/incallui/CallButtonPresenter.java
index e8c2d4b..defafda 100644
--- a/InCallUI/src/com/android/incallui/CallButtonPresenter.java
+++ b/InCallUI/src/com/android/incallui/CallButtonPresenter.java
@@ -322,17 +322,18 @@
             return;
         }
 
+        final int currUnpausedVideoState = VideoUtils.getUnPausedVideoState(mCall.getVideoState());
         if (pause) {
             videoCall.setCamera(null);
-            VideoProfile videoProfile = new VideoProfile(
-                    mCall.getVideoState() & ~VideoProfile.STATE_TX_ENABLED);
+            VideoProfile videoProfile = new VideoProfile(currUnpausedVideoState
+                    & ~VideoProfile.STATE_TX_ENABLED);
             videoCall.sendSessionModifyRequest(videoProfile);
         } else {
             InCallCameraManager cameraManager = InCallPresenter.getInstance().
                     getInCallCameraManager();
             videoCall.setCamera(cameraManager.getActiveCameraId());
-            VideoProfile videoProfile = new VideoProfile(
-                    mCall.getVideoState() | VideoProfile.STATE_TX_ENABLED);
+            VideoProfile videoProfile = new VideoProfile(currUnpausedVideoState
+                    | VideoProfile.STATE_TX_ENABLED);
             videoCall.sendSessionModifyRequest(videoProfile);
             mCall.setSessionModificationState(Call.SessionModificationState.WAITING_FOR_RESPONSE);
         }
@@ -366,7 +367,6 @@
     private void updateButtonsState(Call call) {
         Log.v(this, "updateButtonsState");
         final CallButtonUi ui = getUi();
-
         final boolean isVideo = VideoUtils.isVideoCall(call);
 
         // Common functionality (audio, hold, etc).
@@ -398,6 +398,9 @@
         ui.showButton(BUTTON_DOWNGRADE_TO_AUDIO, showDowngradeToAudio);
         ui.showButton(BUTTON_SWITCH_CAMERA, isVideo);
         ui.showButton(BUTTON_PAUSE_VIDEO, isVideo);
+        if (isVideo) {
+            getUi().setVideoPaused(!VideoUtils.isTransmissionEnabled(call));
+        }
         ui.showButton(BUTTON_DIALPAD, true);
         ui.showButton(BUTTON_MERGE, showMerge);
 
diff --git a/InCallUI/src/com/android/incallui/ExternalCallList.java b/InCallUI/src/com/android/incallui/ExternalCallList.java
new file mode 100644
index 0000000..06e0bb9
--- /dev/null
+++ b/InCallUI/src/com/android/incallui/ExternalCallList.java
@@ -0,0 +1,105 @@
+package com.android.incallui;
+
+import com.google.common.base.Preconditions;
+
+import com.android.contacts.common.compat.CallSdkCompat;
+
+import android.os.Handler;
+import android.os.Looper;
+import android.telecom.Call;
+import android.util.ArraySet;
+
+import java.util.Collections;
+import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
+
+/**
+ * Tracks the external calls known to the InCall UI.
+ *
+ * External calls are those with {@link android.telecom.Call.Details#PROPERTY_IS_EXTERNAL_CALL}.
+ */
+public class ExternalCallList {
+
+    public interface ExternalCallListener {
+        void onExternalCallAdded(Call call);
+        void onExternalCallRemoved(Call call);
+        void onExternalCallUpdated(Call call);
+    }
+
+    /**
+     * Handles {@link android.telecom.Call.Callback} callbacks.
+     */
+    private final Call.Callback mTelecomCallCallback = new Call.Callback() {
+        @Override
+        public void onDetailsChanged(Call call, Call.Details details) {
+            notifyExternalCallUpdated(call);
+        }
+    };
+
+    private final Set<Call> mExternalCalls = new ArraySet<>();
+    private final Set<ExternalCallListener> mExternalCallListeners = Collections.newSetFromMap(
+            new ConcurrentHashMap<ExternalCallListener, Boolean>(8, 0.9f, 1));
+
+    /**
+     * Begins tracking an external call and notifies listeners of the new call.
+     */
+    public void onCallAdded(Call telecomCall) {
+        Preconditions.checkArgument(telecomCall.getDetails()
+                .hasProperty(CallSdkCompat.Details.PROPERTY_IS_EXTERNAL_CALL));
+        mExternalCalls.add(telecomCall);
+        telecomCall.registerCallback(mTelecomCallCallback, new Handler(Looper.getMainLooper()));
+        notifyExternalCallAdded(telecomCall);
+    }
+
+    /**
+     * Stops tracking an external call and notifies listeners of the removal of the call.
+     */
+    public void onCallRemoved(Call telecomCall) {
+        Preconditions.checkArgument(mExternalCalls.contains(telecomCall));
+        mExternalCalls.remove(telecomCall);
+        telecomCall.unregisterCallback(mTelecomCallCallback);
+        notifyExternalCallRemoved(telecomCall);
+    }
+
+    /**
+     * Adds a new listener to external call events.
+     */
+    public void addExternalCallListener(ExternalCallListener listener) {
+        mExternalCallListeners.add(Preconditions.checkNotNull(listener));
+    }
+
+    /**
+     * Removes a listener to external call events.
+     */
+    public void removeExternalCallListener(ExternalCallListener listener) {
+        Preconditions.checkArgument(mExternalCallListeners.contains(listener));
+        mExternalCallListeners.remove(Preconditions.checkNotNull(listener));
+    }
+
+    /**
+     * Notifies listeners of the addition of a new external call.
+     */
+    private void notifyExternalCallAdded(Call call) {
+        for (ExternalCallListener listener : mExternalCallListeners) {
+            listener.onExternalCallAdded(call);
+        }
+    }
+
+    /**
+     * Notifies listeners of the removal of an external call.
+     */
+    private void notifyExternalCallRemoved(Call call) {
+        for (ExternalCallListener listener : mExternalCallListeners) {
+            listener.onExternalCallRemoved(call);
+        }
+    }
+
+    /**
+     * Notifies listeners of changes to an external call.
+     */
+    private void notifyExternalCallUpdated(Call call) {
+        for (ExternalCallListener listener : mExternalCallListeners) {
+            listener.onExternalCallUpdated(call);
+        }
+    }
+}
diff --git a/InCallUI/src/com/android/incallui/ExternalCallNotifier.java b/InCallUI/src/com/android/incallui/ExternalCallNotifier.java
new file mode 100644
index 0000000..40a2e02
--- /dev/null
+++ b/InCallUI/src/com/android/incallui/ExternalCallNotifier.java
@@ -0,0 +1,406 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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 com.google.common.base.Preconditions;
+
+import com.android.contacts.common.ContactsUtils;
+import com.android.contacts.common.compat.CallSdkCompat;
+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.R;
+import com.android.incallui.util.TelecomCallUtil;
+
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.graphics.drawable.BitmapDrawable;
+import android.net.Uri;
+import android.support.annotation.Nullable;
+import android.telecom.Call;
+import android.telecom.PhoneAccount;
+import android.text.BidiFormatter;
+import android.text.TextDirectionHeuristics;
+import android.text.TextUtils;
+import android.util.ArrayMap;
+
+import java.util.Map;
+
+/**
+ * Handles the display of notifications for "external calls".
+ *
+ * External calls are a representation of a call which is in progress on the user's other device
+ * (e.g. another phone, or a watch).
+ */
+public class ExternalCallNotifier implements ExternalCallList.ExternalCallListener {
+
+    /**
+     * Tag used with the notification manager to uniquely identify external call notifications.
+     */
+    private static final String NOTIFICATION_TAG = "EXTERNAL_CALL";
+
+    /**
+     * Represents a call and associated cached notification data.
+     */
+    private static class NotificationInfo {
+        private final Call mCall;
+        private final int mNotificationId;
+        @Nullable private String mContentTitle;
+        @Nullable private Bitmap mLargeIcon;
+        @Nullable private String mPersonReference;
+
+        public NotificationInfo(Call call, int notificationId) {
+            Preconditions.checkNotNull(call);
+            mCall = call;
+            mNotificationId = notificationId;
+        }
+
+        public Call getCall() {
+            return mCall;
+        }
+
+        public int getNotificationId() {
+            return mNotificationId;
+        }
+
+        public @Nullable String getContentTitle() {
+            return mContentTitle;
+        }
+
+        public @Nullable Bitmap getLargeIcon() {
+            return mLargeIcon;
+        }
+
+        public @Nullable String getPersonReference() {
+            return mPersonReference;
+        }
+
+        public void setContentTitle(@Nullable String contentTitle) {
+            mContentTitle = contentTitle;
+        }
+
+        public void setLargeIcon(@Nullable Bitmap largeIcon) {
+            mLargeIcon = largeIcon;
+        }
+
+        public void setPersonReference(@Nullable String personReference) {
+            mPersonReference = personReference;
+        }
+    }
+
+    private final Context mContext;
+    private final ContactInfoCache mContactInfoCache;
+    private Map<Call, NotificationInfo> mNotifications = new ArrayMap<>();
+    private int mNextUniqueNotificationId;
+    private ContactsPreferences mContactsPreferences;
+
+    /**
+     * Initializes a new instance of the external call notifier.
+     */
+    public ExternalCallNotifier(Context context, ContactInfoCache contactInfoCache) {
+        mContext = Preconditions.checkNotNull(context);
+        mContactsPreferences = ContactsPreferencesFactory.newContactsPreferences(mContext);
+        mContactInfoCache = Preconditions.checkNotNull(contactInfoCache);
+    }
+
+    /**
+     * Handles the addition of a new external call by showing a new notification.
+     * Triggered by {@link CallList#onCallAdded(android.telecom.Call)}.
+     */
+    @Override
+    public void onExternalCallAdded(android.telecom.Call call) {
+        Log.i(this, "onExternalCallAdded " + call);
+        Preconditions.checkArgument(!mNotifications.containsKey(call));
+        NotificationInfo info = new NotificationInfo(call, mNextUniqueNotificationId++);
+        mNotifications.put(call, info);
+
+        showNotifcation(info);
+    }
+
+    /**
+     * Handles the removal of an external call by hiding its associated notification.
+     * Triggered by {@link CallList#onCallRemoved(android.telecom.Call)}.
+     */
+    @Override
+    public void onExternalCallRemoved(android.telecom.Call call) {
+        Log.i(this, "onExternalCallRemoved " + call);
+
+        dismissNotification(call);
+    }
+
+    /**
+     * Handles updates to an external call.
+     */
+    @Override
+    public void onExternalCallUpdated(Call call) {
+        Preconditions.checkArgument(mNotifications.containsKey(call));
+        postNotification(mNotifications.get(call));
+    }
+
+    /**
+     * Initiates a call pull given a notification ID.
+     *
+     * @param notificationId The notification ID associated with the external call which is to be
+     *                       pulled.
+     */
+    public void pullExternalCall(int notificationId) {
+        for (NotificationInfo info : mNotifications.values()) {
+            if (info.getNotificationId() == notificationId) {
+                CallSdkCompat.pullExternalCall(info.getCall());
+                return;
+            }
+        }
+    }
+
+    /**
+     * Shows a notification for a new external call.  Performs a contact cache lookup to find any
+     * associated photo and information for the call.
+     */
+    private void showNotifcation(final NotificationInfo info) {
+        // We make a call to the contact info cache to query for supplemental data to what the
+        // call provides.  This includes the contact name and photo.
+        // This callback will always get called immediately and synchronously with whatever data
+        // it has available, and may make a subsequent call later (same thread) if it had to
+        // call into the contacts provider for more data.
+        com.android.incallui.Call incallCall = new com.android.incallui.Call(info.getCall(),
+                false /* registerCallback */);
+
+        mContactInfoCache.findInfo(incallCall, false /* isIncoming */,
+                new ContactInfoCache.ContactInfoCacheCallback() {
+                    @Override
+                    public void onContactInfoComplete(String callId,
+                            ContactInfoCache.ContactCacheEntry entry) {
+
+                        // Ensure notification still exists as the external call could have been
+                        // removed during async contact info lookup.
+                        if (mNotifications.containsKey(info.getCall())) {
+                            saveContactInfo(info, entry);
+                        }
+                    }
+
+                    @Override
+                    public void onImageLoadComplete(String callId,
+                            ContactInfoCache.ContactCacheEntry entry) {
+
+                        // Ensure notification still exists as the external call could have been
+                        // removed during async contact info lookup.
+                        if (mNotifications.containsKey(info.getCall())) {
+                            savePhoto(info, entry);
+                        }
+                    }
+
+                    @Override
+                    public void onContactInteractionsInfoComplete(String callId,
+                            ContactInfoCache.ContactCacheEntry entry) {
+                    }
+                });
+    }
+
+    /**
+     * Dismisses a notification for an external call.
+     */
+    private void dismissNotification(Call call) {
+        Preconditions.checkArgument(mNotifications.containsKey(call));
+
+        NotificationManager notificationManager =
+                (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
+        notificationManager.cancel(NOTIFICATION_TAG, mNotifications.get(call).getNotificationId());
+
+        mNotifications.remove(call);
+    }
+
+    /**
+     * Attempts to build a large icon to use for the notification based on the contact info and
+     * post the updated notification to the notification manager.
+     */
+    private void savePhoto(NotificationInfo info, ContactInfoCache.ContactCacheEntry entry) {
+        Bitmap largeIcon = getLargeIconToDisplay(mContext, entry, info.getCall());
+        if (largeIcon != null) {
+            largeIcon = getRoundedIcon(mContext, largeIcon);
+        }
+        info.setLargeIcon(largeIcon);
+        postNotification(info);
+    }
+
+    /**
+     * Builds and stores the contact information the notification will display and posts the updated
+     * notification to the notification manager.
+     */
+    private void saveContactInfo(NotificationInfo info, ContactInfoCache.ContactCacheEntry entry) {
+        info.setContentTitle(getContentTitle(mContext, mContactsPreferences,
+                entry, info.getCall()));
+        info.setPersonReference(getPersonReference(entry, info.getCall()));
+        postNotification(info);
+    }
+
+    /**
+     * Rebuild an existing or show a new notification given {@link NotificationInfo}.
+     */
+    private void postNotification(NotificationInfo info) {
+        Log.i(this, "postNotification : " + info.getContentTitle());
+        Notification.Builder builder = new Notification.Builder(mContext);
+        // Set notification as ongoing since calls are long-running versus a point-in-time notice.
+        builder.setOngoing(true);
+        // Make the notification prioritized over the other normal notifications.
+        builder.setPriority(Notification.PRIORITY_HIGH);
+        // Set the content ("Ongoing call on another device")
+        builder.setContentText(mContext.getString(R.string.notification_external_call));
+        builder.setSmallIcon(R.drawable.ic_call_white_24dp);
+        builder.setContentTitle(info.getContentTitle());
+        builder.setLargeIcon(info.getLargeIcon());
+        builder.setColor(mContext.getResources().getColor(R.color.dialer_theme_color));
+        builder.addPerson(info.getPersonReference());
+
+        // Where the external call supports being transferred to the local device, add an action
+        // to the notification to initiate the call pull process.
+        if ((info.getCall().getDetails().getCallCapabilities()
+                & CallSdkCompat.Details.CAPABILITY_CAN_PULL_CALL)
+                == CallSdkCompat.Details.CAPABILITY_CAN_PULL_CALL) {
+
+            Intent intent = new Intent(
+                    NotificationBroadcastReceiver.ACTION_PULL_EXTERNAL_CALL, null, mContext,
+                    NotificationBroadcastReceiver.class);
+            intent.putExtra(NotificationBroadcastReceiver.EXTRA_NOTIFICATION_ID,
+                    info.getNotificationId());
+
+            builder.addAction(new Notification.Action.Builder(R.drawable.ic_call_white_24dp,
+                    mContext.getText(R.string.notification_transfer_call),
+                    PendingIntent.getBroadcast(mContext, 0, intent, 0)).build());
+        }
+
+        /**
+         * This builder is used for the notification shown when the device is locked and the user
+         * has set their notification settings to 'hide sensitive content'
+         * {@see Notification.Builder#setPublicVersion}.
+         */
+        Notification.Builder publicBuilder = new Notification.Builder(mContext);
+        publicBuilder.setSmallIcon(R.drawable.ic_call_white_24dp);
+        publicBuilder.setColor(mContext.getResources().getColor(R.color.dialer_theme_color));
+
+        builder.setPublicVersion(publicBuilder.build());
+        Notification notification = builder.build();
+
+        NotificationManager notificationManager =
+                (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
+        notificationManager.notify(NOTIFICATION_TAG, info.getNotificationId(), notification);
+    }
+
+    /**
+     * Finds a large icon to display in a notification for a call.  For conference calls, a
+     * conference call icon is used, otherwise if contact info is specified, the user's contact
+     * photo or avatar is used.
+     *
+     * @param context The context.
+     * @param contactInfo The contact cache info.
+     * @param call The call.
+     * @return The large icon to use for the notification.
+     */
+    private @Nullable Bitmap getLargeIconToDisplay(Context context,
+            ContactInfoCache.ContactCacheEntry contactInfo, android.telecom.Call call) {
+
+        Bitmap largeIcon = null;
+        if (call.getDetails().hasProperty(android.telecom.Call.Details.PROPERTY_CONFERENCE) &&
+                !call.getDetails()
+                        .hasProperty(android.telecom.Call.Details.PROPERTY_GENERIC_CONFERENCE)) {
+
+            largeIcon = BitmapFactory.decodeResource(context.getResources(),
+                    R.drawable.img_conference);
+        }
+        if (contactInfo.photo != null && (contactInfo.photo instanceof BitmapDrawable)) {
+            largeIcon = ((BitmapDrawable) contactInfo.photo).getBitmap();
+        }
+        return largeIcon;
+    }
+
+    /**
+     * Given a bitmap, returns a rounded version of the icon suitable for display in a notification.
+     *
+     * @param context The context.
+     * @param bitmap The bitmap to round.
+     * @return The rounded bitmap.
+     */
+    private @Nullable Bitmap getRoundedIcon(Context context, @Nullable Bitmap bitmap) {
+        if (bitmap == null) {
+            return null;
+        }
+        final int height = (int) context.getResources().getDimension(
+                android.R.dimen.notification_large_icon_height);
+        final int width = (int) context.getResources().getDimension(
+                android.R.dimen.notification_large_icon_width);
+        return BitmapUtil.getRoundedBitmap(bitmap, width, height);
+    }
+
+    /**
+     * Builds a notification content title for a call.  If the call is a conference call, it is
+     * identified as such.  Otherwise an attempt is made to show an associated contact name or
+     * phone number.
+     *
+     * @param context The context.
+     * @param contactsPreferences Contacts preferences, used to determine the preferred formatting
+     *                            for contact names.
+     * @param contactInfo The contact info which was looked up in the contact cache.
+     * @param call The call to generate a title for.
+     * @return The content title.
+     */
+    private @Nullable String getContentTitle(Context context,
+            @Nullable ContactsPreferences contactsPreferences,
+            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.card_title_conf_call);
+        }
+
+        String preferredName = ContactDisplayUtils.getPreferredDisplayName(contactInfo.namePrimary,
+                contactInfo.nameAlternative, contactsPreferences);
+        if (TextUtils.isEmpty(preferredName)) {
+            return TextUtils.isEmpty(contactInfo.number) ? null : BidiFormatter.getInstance()
+                    .unicodeWrap(contactInfo.number, TextDirectionHeuristics.LTR);
+        }
+        return preferredName;
+    }
+
+    /**
+     * Gets a "person reference" for a notification, used by the system to determine whether the
+     * notification should be allowed past notification interruption filters.
+     *
+     * @param contactInfo The contact info from cache.
+     * @param call The call.
+     * @return the person reference.
+     */
+    private String getPersonReference(ContactInfoCache.ContactCacheEntry contactInfo,
+            Call call) {
+
+        String number = TelecomCallUtil.getNumber(call);
+        // Query {@link Contacts#CONTENT_LOOKUP_URI} directly with work lookup key is not allowed.
+        // So, do not pass {@link Contacts#CONTENT_LOOKUP_URI} to NotificationManager to avoid
+        // NotificationManager using it.
+        if (contactInfo.lookupUri != null && contactInfo.userType != ContactsUtils.USER_TYPE_WORK) {
+            return contactInfo.lookupUri.toString();
+        } else if (!TextUtils.isEmpty(number)) {
+            return Uri.fromParts(PhoneAccount.SCHEME_TEL, number, null).toString();
+        }
+        return "";
+    }
+}
diff --git a/InCallUI/src/com/android/incallui/InCallOrientationEventListener.java b/InCallUI/src/com/android/incallui/InCallOrientationEventListener.java
index d3334a3..3cab6dc 100644
--- a/InCallUI/src/com/android/incallui/InCallOrientationEventListener.java
+++ b/InCallUI/src/com/android/incallui/InCallOrientationEventListener.java
@@ -62,6 +62,7 @@
      * Cache the current rotation of the device.
      */
     private static int sCurrentOrientation = SCREEN_ORIENTATION_0;
+    private boolean mEnabled = false;
 
     public InCallOrientationEventListener(Context context) {
         super(context);
@@ -97,7 +98,13 @@
      * @param notify true or false. Notify device orientation changed if true.
      */
     public void enable(boolean notify) {
+        if (mEnabled) {
+            Log.v(this, "enable: Orientation listener is already enabled. Ignoring...");
+            return;
+        }
+
         super.enable();
+        mEnabled = true;
         if (notify) {
             InCallPresenter.getInstance().onDeviceOrientationChange(sCurrentOrientation);
         }
@@ -111,6 +118,26 @@
     }
 
     /**
+     * Disables the OrientationEventListener.
+     */
+    public void disable() {
+        if (!mEnabled) {
+            Log.v(this, "enable: Orientation listener is already disabled. Ignoring...");
+            return;
+        }
+
+        mEnabled = false;
+        super.disable();
+    }
+
+    /**
+     * Returns true the OrientationEventListener is enabled, false otherwise.
+     */
+    public boolean isEnabled() {
+        return mEnabled;
+    }
+
+    /**
      * Converts sensor rotation in degrees to screen orientation constants.
      * @param rotation sensor rotation angle in degrees
      * @return Screen orientation angle in degrees (0, 90, 180, 270). Returns -1 for degrees not
diff --git a/InCallUI/src/com/android/incallui/InCallPresenter.java b/InCallUI/src/com/android/incallui/InCallPresenter.java
index 0109d7e..c3ca6de 100644
--- a/InCallUI/src/com/android/incallui/InCallPresenter.java
+++ b/InCallUI/src/com/android/incallui/InCallPresenter.java
@@ -41,6 +41,7 @@
 import android.view.WindowManager;
 
 import com.android.contacts.common.GeoUtil;
+import com.android.contacts.common.compat.CallSdkCompat;
 import com.android.contacts.common.compat.CompatUtils;
 import com.android.contacts.common.compat.telecom.TelecomManagerCompat;
 import com.android.contacts.common.interactions.TouchPointManager;
@@ -109,9 +110,11 @@
 
     private AudioModeProvider mAudioModeProvider;
     private StatusBarNotifier mStatusBarNotifier;
+    private ExternalCallNotifier mExternalCallNotifier;
     private ContactInfoCache mContactInfoCache;
     private Context mContext;
     private CallList mCallList;
+    private ExternalCallList mExternalCallList;
     private InCallActivity mInCallActivity;
     private InCallState mInCallState = InCallState.NO_CALLS;
     private ProximitySensor mProximitySensor;
@@ -299,8 +302,10 @@
 
     public void setUp(Context context,
             CallList callList,
+            ExternalCallList externalCallList,
             AudioModeProvider audioModeProvider,
             StatusBarNotifier statusBarNotifier,
+            ExternalCallNotifier externalCallNotifier,
             ContactInfoCache contactInfoCache,
             ProximitySensor proximitySensor) {
         if (mServiceConnected) {
@@ -318,6 +323,7 @@
         mContactInfoCache = contactInfoCache;
 
         mStatusBarNotifier = statusBarNotifier;
+        mExternalCallNotifier = externalCallNotifier;
         addListener(mStatusBarNotifier);
 
         mAudioModeProvider = audioModeProvider;
@@ -329,6 +335,8 @@
         addInCallUiListener(mAnswerPresenter);
 
         mCallList = callList;
+        mExternalCallList = externalCallList;
+        externalCallList.addExternalCallListener(mExternalCallNotifier);
 
         // This only gets called by the service so this is okay.
         mServiceConnected = true;
@@ -501,7 +509,12 @@
         if (shouldAttemptBlocking(call)) {
             maybeBlockCall(call);
         } else {
-            mCallList.onCallAdded(call);
+            if (call.getDetails()
+                    .hasProperty(CallSdkCompat.Details.PROPERTY_IS_EXTERNAL_CALL)) {
+                mExternalCallList.onCallAdded(call);
+            } else {
+                mCallList.onCallAdded(call);
+            }
         }
 
         // Since a call has been added we are no longer waiting for Telecom to send us a call.
@@ -521,6 +534,9 @@
             Log.i(this, "Not attempting to block incoming call due to recent emergency call");
             return false;
         }
+        if (call.getDetails().hasProperty(CallSdkCompat.Details.PROPERTY_IS_EXTERNAL_CALL)) {
+            return false;
+        }
 
         return true;
     }
@@ -590,8 +606,13 @@
     }
 
     public void onCallRemoved(android.telecom.Call call) {
-        mCallList.onCallRemoved(call);
-        call.unregisterCallback(mCallCallback);
+        if (call.getDetails()
+                .hasProperty(CallSdkCompat.Details.PROPERTY_IS_EXTERNAL_CALL)) {
+            mExternalCallList.onCallRemoved(call);
+        } else {
+            mCallList.onCallRemoved(call);
+            call.unregisterCallback(mCallCallback);
+        }
     }
 
     public void onCanAddCallChanged(boolean canAddCall) {
@@ -1506,6 +1527,9 @@
             if (mStatusBarNotifier != null) {
                 removeListener(mStatusBarNotifier);
             }
+            if (mExternalCallNotifier != null && mExternalCallList != null) {
+                mExternalCallList.removeExternalCallListener(mExternalCallNotifier);
+            }
             mStatusBarNotifier = null;
 
             if (mCallList != null) {
@@ -1808,6 +1832,10 @@
         return mAnswerPresenter;
     }
 
+    ExternalCallNotifier getExternalCallNotifier() {
+        return mExternalCallNotifier;
+    }
+
     /**
      * Private constructor. Must use getInstance() to get this singleton.
      */
diff --git a/InCallUI/src/com/android/incallui/InCallServiceImpl.java b/InCallUI/src/com/android/incallui/InCallServiceImpl.java
index 8693697..1414bc5 100644
--- a/InCallUI/src/com/android/incallui/InCallServiceImpl.java
+++ b/InCallUI/src/com/android/incallui/InCallServiceImpl.java
@@ -64,8 +64,10 @@
         InCallPresenter.getInstance().setUp(
                 getApplicationContext(),
                 CallList.getInstance(),
+                new ExternalCallList(),
                 AudioModeProvider.getInstance(),
                 new StatusBarNotifier(context, contactInfoCache),
+                new ExternalCallNotifier(context, contactInfoCache),
                 contactInfoCache,
                 new ProximitySensor(
                         context,
diff --git a/InCallUI/src/com/android/incallui/NotificationBroadcastReceiver.java b/InCallUI/src/com/android/incallui/NotificationBroadcastReceiver.java
index 2543b78..27f7115 100644
--- a/InCallUI/src/com/android/incallui/NotificationBroadcastReceiver.java
+++ b/InCallUI/src/com/android/incallui/NotificationBroadcastReceiver.java
@@ -45,6 +45,10 @@
             "com.android.incallui.ACTION_ACCEPT_VIDEO_UPGRADE_REQUEST";
     public static final String ACTION_DECLINE_VIDEO_UPGRADE_REQUEST =
             "com.android.incallui.ACTION_DECLINE_VIDEO_UPGRADE_REQUEST";
+    public static final String ACTION_PULL_EXTERNAL_CALL =
+            "com.android.incallui.ACTION_PULL_EXTERNAL_CALL";
+    public static final String EXTRA_NOTIFICATION_ID =
+            "com.android.incallui.extra.EXTRA_NOTIFICATION_ID";
 
     @Override
     public void onReceive(Context context, Intent intent) {
@@ -68,6 +72,10 @@
                     VideoProfile.STATE_BIDIRECTIONAL, context);
         } else if (action.equals(ACTION_DECLINE_VIDEO_UPGRADE_REQUEST)) {
             InCallPresenter.getInstance().declineUpgradeRequest(context);
+        } else if (action.equals(ACTION_PULL_EXTERNAL_CALL)) {
+            int notificationId = intent.getIntExtra(EXTRA_NOTIFICATION_ID, -1);
+            InCallPresenter.getInstance().getExternalCallNotifier()
+                    .pullExternalCall(notificationId);
         }
     }
 
diff --git a/InCallUI/src/com/android/incallui/StatusBarNotifier.java b/InCallUI/src/com/android/incallui/StatusBarNotifier.java
index 5bf8e16..0662cca 100644
--- a/InCallUI/src/com/android/incallui/StatusBarNotifier.java
+++ b/InCallUI/src/com/android/incallui/StatusBarNotifier.java
@@ -247,8 +247,11 @@
                 getContentString(call, contactInfo.userType);
         final String contentTitle = getContentTitle(contactInfo, call);
 
+        final boolean isVideoUpgradeRequest = call.getSessionModificationState()
+                == Call.SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST;
         final int notificationType;
-        if (callState == Call.State.INCOMING || callState == Call.State.CALL_WAITING) {
+        if (callState == Call.State.INCOMING || callState == Call.State.CALL_WAITING
+                || isVideoUpgradeRequest) {
             notificationType = NOTIFICATION_INCOMING_CALL;
         } else {
             notificationType = NOTIFICATION_IN_CALL;
@@ -301,8 +304,6 @@
         builder.setLargeIcon(largeIcon);
         builder.setColor(mContext.getResources().getColor(R.color.dialer_theme_color));
 
-        final boolean isVideoUpgradeRequest = call.getSessionModificationState()
-                == Call.SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST;
         if (isVideoUpgradeRequest) {
             builder.setUsesChronometer(false);
             addDismissUpgradeRequestAction(builder);
diff --git a/InCallUI/src/com/android/incallui/VideoCallFragment.java b/InCallUI/src/com/android/incallui/VideoCallFragment.java
index cb8c644..6a46a42 100644
--- a/InCallUI/src/com/android/incallui/VideoCallFragment.java
+++ b/InCallUI/src/com/android/incallui/VideoCallFragment.java
@@ -435,12 +435,11 @@
      */
     @Override
     public void onActivityCreated(Bundle savedInstanceState) {
-        super.onActivityCreated(savedInstanceState);
-
         mIsLandscape = getResources().getBoolean(R.bool.is_layout_landscape);
-
         Log.d(this, "onActivityCreated: IsLandscape=" + mIsLandscape);
         getPresenter().init(getActivity());
+
+        super.onActivityCreated(savedInstanceState);
     }
 
     @Override
@@ -499,6 +498,7 @@
     public void onPause() {
         super.onPause();
         Log.d(this, "onPause:");
+        getPresenter().cancelAutoFullScreen();
     }
 
     @Override
@@ -549,6 +549,7 @@
      * Hides and shows the incoming video view and changes the outgoing video view's state based on
      * whether outgoing view is enabled or not.
      */
+    @Override
     public void showVideoViews(boolean previewPaused, boolean showIncoming) {
         inflateVideoUi(true);
 
@@ -567,6 +568,7 @@
     /**
      * Hide all video views.
      */
+    @Override
     public void hideVideoUi() {
         inflateVideoUi(false);
     }
diff --git a/InCallUI/src/com/android/incallui/VideoCallPresenter.java b/InCallUI/src/com/android/incallui/VideoCallPresenter.java
index 9a33d80..06e3e44 100644
--- a/InCallUI/src/com/android/incallui/VideoCallPresenter.java
+++ b/InCallUI/src/com/android/incallui/VideoCallPresenter.java
@@ -81,7 +81,9 @@
     private Runnable mAutoFullscreenRunnable =  new Runnable() {
         @Override
         public void run() {
-            if (mAutoFullScreenPending && !InCallPresenter.getInstance().isDialpadVisible()) {
+            if (mAutoFullScreenPending && !InCallPresenter.getInstance().isDialpadVisible()
+                    && mIsVideoMode) {
+
                 Log.v(this, "Automatically entering fullscreen mode.");
                 InCallPresenter.getInstance().setFullScreen(true);
                 mAutoFullScreenPending = false;
@@ -242,6 +244,10 @@
         InCallVideoCallCallbackNotifier.getInstance().addVideoEventListener(this);
         mCurrentVideoState = VideoProfile.STATE_AUDIO_ONLY;
         mCurrentCallState = Call.State.INVALID;
+
+        final InCallPresenter.InCallState inCallState =
+             InCallPresenter.getInstance().getInCallState();
+        onStateChange(inCallState, inCallState, CallList.getInstance());
     }
 
     /**
@@ -258,6 +264,8 @@
             return;
         }
 
+        cancelAutoFullScreen();
+
         InCallPresenter.getInstance().removeListener(this);
         InCallPresenter.getInstance().removeDetailsListener(this);
         InCallPresenter.getInstance().removeIncomingCallListener(this);
@@ -495,7 +503,7 @@
         updateCameraSelection(call);
 
         if (isVideoCall) {
-            enterVideoMode(call);
+            adjustVideoMode(call);
         } else if (isVideoMode()) {
             exitVideoMode();
         }
@@ -555,8 +563,9 @@
             Log.d(this, "onPrimaryCallChanged: Entering video mode...");
 
             updateCameraSelection(newPrimaryCall);
-            enterVideoMode(newPrimaryCall);
+            adjustVideoMode(newPrimaryCall);
         }
+        checkForOrientationAllowedChange(newPrimaryCall);
     }
 
     private boolean isVideoMode() {
@@ -630,7 +639,7 @@
      * Handles a change to the video call. Sets the surfaces on the previous call to null and sets
      * the surfaces on the new video call accordingly.
      *
-     * @param videoCall The new video call.
+     * @param call The new video call.
      */
     private void changeVideoCall(Call call) {
         final VideoCall videoCall = call.getTelecomCall().getVideoCall();
@@ -651,13 +660,13 @@
         }
 
         if (VideoUtils.isVideoCall(call) && hasChanged) {
-            enterVideoMode(call);
+            adjustVideoMode(call);
         }
     }
 
     private static boolean isCameraRequired(int videoState) {
-        return VideoProfile.isBidirectional(videoState) ||
-                VideoProfile.isTransmissionEnabled(videoState);
+        return VideoProfile.isBidirectional(videoState)
+                || VideoProfile.isTransmissionEnabled(videoState);
     }
 
     private boolean isCameraRequired() {
@@ -665,14 +674,16 @@
     }
 
     /**
-     * Enters video mode by showing the video surfaces and making other adjustments (eg. audio).
+     * Adjusts the current video mode by setting up the preview and display surfaces as necessary.
+     * Expected to be called whenever the video state associated with a call changes (e.g. a user
+     * turns their camera on or off) to ensure the correct surfaces are shown/hidden.
      * TODO(vt): Need to adjust size and orientation of preview surface here.
      */
-    private void enterVideoMode(Call call) {
+    private void adjustVideoMode(Call call) {
         VideoCall videoCall = call.getVideoCall();
         int newVideoState = call.getVideoState();
 
-        Log.d(this, "enterVideoMode videoCall= " + videoCall + " videoState: " + newVideoState);
+        Log.d(this, "adjustVideoMode videoCall= " + videoCall + " videoState: " + newVideoState);
         VideoCallUi ui = getUi();
         if (ui == null) {
             Log.e(this, "Error VideoCallUi is null so returning");
@@ -692,16 +703,15 @@
             videoCall.setDeviceOrientation(mDeviceOrientation);
             enableCamera(videoCall, isCameraRequired(newVideoState));
         }
+        int previousVideoState = mCurrentVideoState;
         mCurrentVideoState = newVideoState;
-
         mIsVideoMode = true;
 
-        maybeAutoEnterFullscreen(call);
-    }
-
-    private static boolean isSpeakerEnabledForVideoCalls() {
-        // TODO: Make this a carrier configurable setting. For now this is always true. b/20090407
-        return true;
+        // adjustVideoMode may be called if we are already in a 1-way video state.  In this case
+        // we do not want to trigger auto-fullscreen mode.
+        if (!VideoUtils.isVideoCall(previousVideoState) && VideoUtils.isVideoCall(newVideoState)) {
+            maybeAutoEnterFullscreen(call);
+        }
     }
 
     private void enableCamera(VideoCall videoCall, boolean isCameraRequired) {
@@ -1068,6 +1078,8 @@
      * 2. Call is not active
      * 3. Call is not video call
      * 4. Already in fullscreen mode
+     * 5. The current video state is not bi-directional (if the remote party stops transmitting,
+     *    the user's contact photo would dominate in fullscreen mode).
      *
      * @param call The current call.
      */
@@ -1079,7 +1091,8 @@
         if (call == null || (
                 call != null && (call.getState() != Call.State.ACTIVE ||
                         !VideoUtils.isVideoCall(call)) ||
-                        InCallPresenter.getInstance().isFullscreen())) {
+                        InCallPresenter.getInstance().isFullscreen()) ||
+                        !VideoUtils.isBidirectionalVideoCall(call)) {
             // Ensure any previously scheduled attempt to enter fullscreen is cancelled.
             cancelAutoFullScreen();
             return;
@@ -1106,10 +1119,6 @@
         mAutoFullScreenPending = false;
     }
 
-    private static boolean isAudioRouteEnabled(int audioRoute, int audioRouteMask) {
-        return ((audioRoute & audioRouteMask) != 0);
-    }
-
     private static void updateCameraSelection(Call call) {
         Log.d(TAG, "updateCameraSelection: call=" + call);
         Log.d(TAG, "updateCameraSelection: call=" + toSimpleString(call));
diff --git a/InCallUI/src/com/android/incallui/VideoPauseController.java b/InCallUI/src/com/android/incallui/VideoPauseController.java
index 01b6b0d..fb87350 100644
--- a/InCallUI/src/com/android/incallui/VideoPauseController.java
+++ b/InCallUI/src/com/android/incallui/VideoPauseController.java
@@ -248,26 +248,27 @@
      */
     public void onUiShowing(boolean showing) {
         // Only send pause/unpause requests if we are in the INCALL state.
-        if (mInCallPresenter == null || mInCallPresenter.getInCallState() != InCallState.INCALL) {
+        if (mInCallPresenter == null) {
             return;
         }
-
+        final boolean isInCall = mInCallPresenter.getInCallState() == InCallState.INCALL;
         if (showing) {
-            onResume();
+            onResume(isInCall);
         } else {
-            onPause();
+            onPause(isInCall);
         }
     }
 
     /**
      * Called when UI is brought to the foreground.  Sends a session modification request to resume
      * the outgoing video.
+     * @param isInCall true if phone state is INCALL, false otherwise
      */
-    private void onResume() {
+    private void onResume(boolean isInCall) {
         log("onResume");
 
         mIsInBackground = false;
-        if (canVideoPause(mPrimaryCallContext)) {
+        if (canVideoPause(mPrimaryCallContext) && isInCall) {
             sendRequest(mPrimaryCallContext.getCall(), true);
         } else {
             log("onResume. Ignoring...");
@@ -277,12 +278,13 @@
     /**
      * Called when UI is sent to the background.  Sends a session modification request to pause the
      * outgoing video.
+     * @param isInCall true if phone state is INCALL, false otherwise
      */
-    private void onPause() {
+    private void onPause(boolean isInCall) {
         log("onPause");
 
         mIsInBackground = true;
-        if (canVideoPause(mPrimaryCallContext)) {
+        if (canVideoPause(mPrimaryCallContext) && isInCall) {
             sendRequest(mPrimaryCallContext.getCall(), false);
         } else {
             log("onPause, Ignoring...");
diff --git a/InCallUI/src/com/android/incallui/VideoUtils.java b/InCallUI/src/com/android/incallui/VideoUtils.java
index 8641d60..a2eb8bc 100644
--- a/InCallUI/src/com/android/incallui/VideoUtils.java
+++ b/InCallUI/src/com/android/incallui/VideoUtils.java
@@ -45,6 +45,14 @@
         return VideoProfile.isBidirectional(call.getVideoState());
     }
 
+    public static boolean isTransmissionEnabled(Call call) {
+        if (!CompatUtils.isVideoCompatible()) {
+            return false;
+        }
+
+        return VideoProfile.isTransmissionEnabled(call.getVideoState());
+    }
+
     public static boolean isIncomingVideoCall(Call call) {
         if (!VideoUtils.isVideoCall(call)) {
             return false;
diff --git a/InCallUI/tests/src/com/android/incallui/ExternalCallListTest.java b/InCallUI/tests/src/com/android/incallui/ExternalCallListTest.java
new file mode 100644
index 0000000..070bdf5
--- /dev/null
+++ b/InCallUI/tests/src/com/android/incallui/ExternalCallListTest.java
@@ -0,0 +1,142 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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.ComponentName;
+import android.content.Context;
+import android.net.Uri;
+import android.os.Bundle;
+import android.telecom.*;
+import android.telecom.Call;
+import android.test.AndroidTestCase;
+
+import java.lang.reflect.Constructor;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
+
+public class ExternalCallListTest extends AndroidTestCase {
+
+    private static class Listener implements ExternalCallList.ExternalCallListener {
+        private CountDownLatch mCallAddedLatch = new CountDownLatch(1);
+        private CountDownLatch mCallRemovedLatch = new CountDownLatch(1);
+        private CountDownLatch mCallUpdatedLatch = new CountDownLatch(1);
+
+        @Override
+        public void onExternalCallAdded(Call call) {
+            mCallAddedLatch.countDown();
+        }
+
+        @Override
+        public void onExternalCallRemoved(Call call) {
+            mCallRemovedLatch.countDown();
+        }
+
+        @Override
+        public void onExternalCallUpdated(Call call) {
+            mCallUpdatedLatch.countDown();
+        }
+
+        public boolean awaitCallAdded() {
+            try {
+                return mCallAddedLatch.await(WAIT_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
+            } catch (InterruptedException e) {
+                return false;
+            }
+        }
+
+        public boolean awaitCallRemoved() {
+            try {
+                return mCallRemovedLatch.await(WAIT_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
+            } catch (InterruptedException e) {
+                return false;
+            }
+        }
+
+        public boolean awaitCallUpdated() {
+            try {
+                return mCallUpdatedLatch.await(WAIT_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
+            } catch (InterruptedException e) {
+                return false;
+            }
+        }
+    }
+
+    private static final int WAIT_TIMEOUT_MILLIS = 5000;
+
+    private ExternalCallList mExternalCallList = new ExternalCallList();
+    private Listener mExternalCallListener = new Listener();
+
+    @Override
+    public void setUp() throws Exception {
+        super.setUp();
+        mExternalCallList.addExternalCallListener(mExternalCallListener);
+    }
+
+    public void testAddCallSuccess() {
+        TestTelecomCall call = getTestCall(Call.Details.PROPERTY_IS_EXTERNAL_CALL);
+        mExternalCallList.onCallAdded(call.getCall());
+        assertTrue(mExternalCallListener.awaitCallAdded());
+    }
+
+    public void testAddCallFail() {
+        TestTelecomCall call = getTestCall(0 /* no properties */);
+        try {
+            mExternalCallList.onCallAdded(call.getCall());
+            fail();
+        } catch (IllegalArgumentException e) {
+        }
+    }
+
+    public void testUpdateCall() {
+        TestTelecomCall call = getTestCall(Call.Details.PROPERTY_IS_EXTERNAL_CALL);
+        mExternalCallList.onCallAdded(call.getCall());
+        assertTrue(mExternalCallListener.awaitCallAdded());
+
+        call.forceDetailsUpdate();
+        assertTrue(mExternalCallListener.awaitCallUpdated());
+    }
+
+    public void testRemoveCall() {
+        TestTelecomCall call = getTestCall(Call.Details.PROPERTY_IS_EXTERNAL_CALL);
+        mExternalCallList.onCallAdded(call.getCall());
+        assertTrue(mExternalCallListener.awaitCallAdded());
+
+        mExternalCallList.onCallRemoved(call.getCall());
+        assertTrue(mExternalCallListener.awaitCallRemoved());
+    }
+
+    private TestTelecomCall getTestCall(int properties) {
+        TestTelecomCall testCall = TestTelecomCall.createInstance(
+                "1",
+                Uri.parse("tel:650-555-1212"), /* handle */
+                TelecomManager.PRESENTATION_ALLOWED, /* handlePresentation */
+                "Joe", /* callerDisplayName */
+                TelecomManager.PRESENTATION_ALLOWED, /* callerDisplayNamePresentation */
+                new PhoneAccountHandle(new ComponentName("test", "class"),
+                        "handle"), /* accountHandle */
+                Call.Details.CAPABILITY_CAN_PULL_CALL, /* capabilities */
+                properties, /* properties */
+                null, /* disconnectCause */
+                0, /* connectTimeMillis */
+                null, /* GatewayInfo */
+                VideoProfile.STATE_AUDIO_ONLY, /* videoState */
+                null, /* statusHints */
+                null, /* extras */
+                null /* intentExtras */);
+        return testCall;
+    }
+}
diff --git a/InCallUI/tests/src/com/android/incallui/ExternalCallNotifierTest.java b/InCallUI/tests/src/com/android/incallui/ExternalCallNotifierTest.java
new file mode 100644
index 0000000..e57efef
--- /dev/null
+++ b/InCallUI/tests/src/com/android/incallui/ExternalCallNotifierTest.java
@@ -0,0 +1,212 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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 static org.mockito.Matchers.anyInt;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.anyBoolean;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.eq;
+import static org.mockito.Mockito.timeout;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import com.android.contacts.common.preference.ContactsPreferences;
+
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.mockito.Spy;
+import org.mockito.invocation.InvocationOnMock;
+import org.mockito.stubbing.Answer;
+
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.res.Resources;
+import android.net.Uri;
+import android.telecom.*;
+import android.telecom.Call;
+import android.telephony.TelephonyManager;
+import android.test.AndroidTestCase;
+import android.test.mock.MockContext;
+
+/**
+ * Unit tests for {@link ExternalCallNotifier}.
+ */
+public class ExternalCallNotifierTest extends AndroidTestCase {
+    private static final int TIMEOUT_MILLIS = 5000;
+    private static final String NAME_PRIMARY = "Full Name";
+    private static final String NAME_ALTERNATIVE = "Name, Full";
+    private static final String LOCATION = "US";
+    private static final String NUMBER = "6505551212";
+
+    @Mock private ContactsPreferences mContactsPreferences;
+    @Mock private NotificationManager mNotificationManager;
+    @Mock private MockContext mMockContext;
+    @Mock private Resources mResources;
+    @Mock private StatusBarNotifier mStatusBarNotifier;
+    @Mock private ContactInfoCache mContactInfoCache;
+    @Mock private TelecomManager mTelecomManager;
+    @Mock private TelephonyManager mTelephonyManager;
+    @Mock private ProximitySensor mProximitySensor;
+    @Mock private CallList mCallList;
+    private InCallPresenter mInCallPresenter;
+    private ExternalCallNotifier mExternalCallNotifier;
+    private ContactInfoCache.ContactCacheEntry mContactInfo;
+
+    @Override
+    public void setUp() throws Exception {
+        super.setUp();
+        MockitoAnnotations.initMocks(this);
+
+        when(mContactsPreferences.getDisplayOrder())
+                .thenReturn(ContactsPreferences.DISPLAY_ORDER_PRIMARY);
+
+        // Setup the mock context to return mocks for some of the needed services; the notification
+        // service is especially important as we want to be able to intercept calls into it and
+        // validate the notifcations.
+        when(mMockContext.getSystemService(eq(Context.NOTIFICATION_SERVICE)))
+                .thenReturn(mNotificationManager);
+        when(mMockContext.getSystemService(eq(Context.TELECOM_SERVICE)))
+                .thenReturn(mTelecomManager);
+        when(mMockContext.getSystemService(eq(Context.TELEPHONY_SERVICE)))
+                .thenReturn(mTelephonyManager);
+
+        // These aspects of the context are used by the notification builder to build the actual
+        // notification; we will rely on the actual implementations of these.
+        when(mMockContext.getPackageManager()).thenReturn(mContext.getPackageManager());
+        when(mMockContext.getResources()).thenReturn(mContext.getResources());
+        when(mMockContext.getApplicationInfo()).thenReturn(mContext.getApplicationInfo());
+        when(mMockContext.getContentResolver()).thenReturn(mContext.getContentResolver());
+        when(mMockContext.getPackageName()).thenReturn(mContext.getPackageName());
+
+        ContactsPreferencesFactory.setTestInstance(null);
+        mExternalCallNotifier = new ExternalCallNotifier(mMockContext, mContactInfoCache);
+
+        // We don't directly use the InCallPresenter in the test, or even in ExternalCallNotifier
+        // itself.  However, ExternalCallNotifier needs to make instances of
+        // com.android.incallui.Call for the purpose of performing contact cache lookups.  The
+        // Call class depends on the static InCallPresenter for a number of things, so we need to
+        // set it up here to prevent crashes.
+        mInCallPresenter = InCallPresenter.getInstance();
+        mInCallPresenter.setUp(mMockContext, mCallList, new ExternalCallList(),
+                null, mStatusBarNotifier, mExternalCallNotifier, mContactInfoCache,
+                mProximitySensor);
+
+        // Unlocked all contact info is available
+        mContactInfo = new ContactInfoCache.ContactCacheEntry();
+        mContactInfo.namePrimary = NAME_PRIMARY;
+        mContactInfo.nameAlternative = NAME_ALTERNATIVE;
+        mContactInfo.location = LOCATION;
+        mContactInfo.number = NUMBER;
+
+        // Given the mock ContactInfoCache cache, we need to mock out what happens when the
+        // ExternalCallNotifier calls into the contact info cache to do a lookup.  We will always
+        // return mock info stored in mContactInfo.
+        doAnswer(new Answer() {
+            @Override
+            public Object answer(InvocationOnMock invocation) throws Throwable {
+                Object[] args = invocation.getArguments();
+                com.android.incallui.Call call = (com.android.incallui.Call) args[0];
+                ContactInfoCache.ContactInfoCacheCallback callback
+                        = (ContactInfoCache.ContactInfoCacheCallback) args[2];
+                callback.onContactInfoComplete(call.getId(), mContactInfo);
+                return null;
+            }
+        }).when(mContactInfoCache).findInfo(any(com.android.incallui.Call.class), anyBoolean(),
+                any(ContactInfoCache.ContactInfoCacheCallback.class));
+    }
+
+    @Override
+    public void tearDown() throws Exception {
+        super.tearDown();
+        ContactsPreferencesFactory.setTestInstance(null);
+        mInCallPresenter.tearDown();
+    }
+
+    public void testPostNonPullable() {
+        TestTelecomCall call = getTestCall(false);
+        mExternalCallNotifier.onExternalCallAdded(call.getCall());
+        Notification notification = verifyNotificationPosted();
+        assertNull(notification.actions);
+    }
+
+    public void testPostPullable() {
+        TestTelecomCall call = getTestCall(true);
+        mExternalCallNotifier.onExternalCallAdded(call.getCall());
+        Notification notification = verifyNotificationPosted();
+        assertEquals(1, notification.actions.length);
+    }
+
+    public void testNotificationDismissed() {
+        TestTelecomCall call = getTestCall(false);
+        mExternalCallNotifier.onExternalCallAdded(call.getCall());
+        verifyNotificationPosted();
+
+        mExternalCallNotifier.onExternalCallRemoved(call.getCall());
+        verify(mNotificationManager, timeout(TIMEOUT_MILLIS)).cancel(eq("EXTERNAL_CALL"), eq(0));
+    }
+
+    public void testNotificationUpdated() {
+        TestTelecomCall call = getTestCall(false);
+        mExternalCallNotifier.onExternalCallAdded(call.getCall());
+        verifyNotificationPosted();
+
+        call.setCapabilities(android.telecom.Call.Details.CAPABILITY_CAN_PULL_CALL);
+        mExternalCallNotifier.onExternalCallUpdated(call.getCall());
+
+        ArgumentCaptor<Notification> notificationCaptor =
+                ArgumentCaptor.forClass(Notification.class);
+        verify(mNotificationManager, timeout(TIMEOUT_MILLIS).times(2))
+                .notify(eq("EXTERNAL_CALL"), eq(0), notificationCaptor.capture());
+        Notification notification1 = notificationCaptor.getAllValues().get(0);
+        assertNull(notification1.actions);
+        Notification notification2 = notificationCaptor.getAllValues().get(1);
+        assertEquals(1, notification2.actions.length);
+    }
+
+    private Notification verifyNotificationPosted() {
+        ArgumentCaptor<Notification> notificationCaptor =
+                ArgumentCaptor.forClass(Notification.class);
+        verify(mNotificationManager, timeout(TIMEOUT_MILLIS))
+                .notify(eq("EXTERNAL_CALL"), eq(0), notificationCaptor.capture());
+        return notificationCaptor.getValue();
+    }
+
+    private TestTelecomCall getTestCall(boolean canPull) {
+        TestTelecomCall testCall = TestTelecomCall.createInstance(
+                "1",
+                Uri.parse("tel:650-555-1212"), /* handle */
+                TelecomManager.PRESENTATION_ALLOWED, /* handlePresentation */
+                "Joe", /* callerDisplayName */
+                TelecomManager.PRESENTATION_ALLOWED, /* callerDisplayNamePresentation */
+                new PhoneAccountHandle(new ComponentName("test", "class"),
+                        "handle"), /* accountHandle */
+                canPull ? android.telecom.Call.Details.CAPABILITY_CAN_PULL_CALL : 0, /* capabilities */
+                Call.Details.PROPERTY_IS_EXTERNAL_CALL, /* properties */
+                null, /* disconnectCause */
+                0, /* connectTimeMillis */
+                null, /* GatewayInfo */
+                VideoProfile.STATE_AUDIO_ONLY, /* videoState */
+                null, /* statusHints */
+                null, /* extras */
+                null /* intentExtras */);
+        return testCall;
+    }
+}
diff --git a/InCallUI/tests/src/com/android/incallui/InCallPresenterTest.java b/InCallUI/tests/src/com/android/incallui/InCallPresenterTest.java
index ed8d622..f0f08ab 100644
--- a/InCallUI/tests/src/com/android/incallui/InCallPresenterTest.java
+++ b/InCallUI/tests/src/com/android/incallui/InCallPresenterTest.java
@@ -39,6 +39,7 @@
     @Mock private InCallActivity mInCallActivity;
     @Mock private AudioModeProvider mAudioModeProvider;
     @Mock private StatusBarNotifier mStatusBarNotifier;
+    @Mock private ExternalCallNotifier mExternalCallNotifier;
     @Mock private ContactInfoCache mContactInfoCache;
     @Mock private ProximitySensor mProximitySensor;
 
@@ -57,8 +58,9 @@
         when(mContext.getSystemService(Context.TELEPHONY_SERVICE)).thenReturn(mTelephonyManager);
 
         mInCallPresenter = InCallPresenter.getInstance();
-        mInCallPresenter.setUp(mContext, mCallList.getCallList(), mAudioModeProvider,
-                mStatusBarNotifier, mContactInfoCache, mProximitySensor);
+        mInCallPresenter.setUp(mContext, mCallList.getCallList(), new ExternalCallList(),
+                mAudioModeProvider, mStatusBarNotifier, mExternalCallNotifier, mContactInfoCache,
+                mProximitySensor);
     }
 
     @Override
diff --git a/InCallUI/tests/src/com/android/incallui/TestTelecomCall.java b/InCallUI/tests/src/com/android/incallui/TestTelecomCall.java
new file mode 100644
index 0000000..48ac6e1
--- /dev/null
+++ b/InCallUI/tests/src/com/android/incallui/TestTelecomCall.java
@@ -0,0 +1,161 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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 com.google.common.base.Preconditions;
+
+import android.content.Context;
+import android.net.Uri;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.telecom.DisconnectCause;
+import android.telecom.GatewayInfo;
+import android.telecom.PhoneAccountHandle;
+import android.telecom.StatusHints;
+
+import java.lang.reflect.Constructor;
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+
+/**
+ * Wrapper class which uses reflection to create instances of {@link android.telecom.Call} for use
+ * with unit testing.  Since {@link android.telecom.Call} is final, it cannot be mocked using
+ * mockito, and since all setter methods are hidden, it is necessary to use reflection.  In the
+ * future, it would be desirable to replace this if a different mocking solution is used.
+ */
+public class TestTelecomCall {
+
+    private android.telecom.Call mCall;
+
+    public static @Nullable TestTelecomCall createInstance(String callId,
+            Uri handle,
+            int handlePresentation,
+            String callerDisplayName,
+            int callerDisplayNamePresentation,
+            PhoneAccountHandle accountHandle,
+            int capabilities,
+            int properties,
+            DisconnectCause disconnectCause,
+            long connectTimeMillis,
+            GatewayInfo gatewayInfo,
+            int videoState,
+            StatusHints statusHints,
+            Bundle extras,
+            Bundle intentExtras) {
+
+        try {
+            // Phone and InCall adapter are @hide, so we cannot refer to them directly.
+            Class<?> phoneClass = Class.forName("android.telecom.Phone");
+            Class<?> incallAdapterClass = Class.forName("android.telecom.InCallAdapter");
+            Class<?> callClass = android.telecom.Call.class;
+            Constructor<?> cons = callClass
+                    .getDeclaredConstructor(phoneClass, String.class, incallAdapterClass);
+            cons.setAccessible(true);
+
+            android.telecom.Call call = (android.telecom.Call) cons.newInstance(null, callId, null);
+
+            // Create an instance of the call details.
+            Class<?> callDetailsClass = android.telecom.Call.Details.class;
+            Constructor<?> detailsCons = callDetailsClass.getDeclaredConstructor(
+                    String.class, /* telecomCallId */
+                    Uri.class, /* handle */
+                    int.class, /* handlePresentation */
+                    String.class, /* callerDisplayName */
+                    int.class, /* callerDisplayNamePresentation */
+                    PhoneAccountHandle.class, /* accountHandle */
+                    int.class, /* capabilities */
+                    int.class, /* properties */
+                    DisconnectCause.class, /* disconnectCause */
+                    long.class, /* connectTimeMillis */
+                    GatewayInfo.class, /* gatewayInfo */
+                    int.class, /* videoState */
+                    StatusHints.class, /* statusHints */
+                    Bundle.class, /* extras */
+                    Bundle.class /* intentExtras */);
+            detailsCons.setAccessible(true);
+
+            android.telecom.Call.Details details = (android.telecom.Call.Details)
+                    detailsCons.newInstance(callId, handle, handlePresentation, callerDisplayName,
+                            callerDisplayNamePresentation, accountHandle, capabilities, properties,
+                            disconnectCause, connectTimeMillis, gatewayInfo, videoState,
+                            statusHints,
+                            extras, intentExtras);
+
+            // Finally, set this as the details of the call.
+            Field detailsField = call.getClass().getDeclaredField("mDetails");
+            detailsField.setAccessible(true);
+            detailsField.set(call, details);
+
+            return new TestTelecomCall(call);
+        } catch (NoSuchMethodException nsm) {
+            return null;
+        } catch (ClassNotFoundException cnf) {
+            return null;
+        } catch (IllegalAccessException e) {
+            return null;
+        } catch (InstantiationException e) {
+            return null;
+        } catch (InvocationTargetException e) {
+            return null;
+        } catch (NoSuchFieldException e) {
+            return null;
+        }
+    }
+
+    private TestTelecomCall(android.telecom.Call call) {
+        mCall = call;
+    }
+
+    public android.telecom.Call getCall() {
+        return mCall;
+    }
+
+    public void forceDetailsUpdate() {
+        Preconditions.checkNotNull(mCall);
+
+        try {
+            Method method = mCall.getClass().getDeclaredMethod("fireDetailsChanged",
+                    android.telecom.Call.Details.class);
+            method.setAccessible(true);
+            method.invoke(mCall, mCall.getDetails());
+        } catch (NoSuchMethodException e) {
+            Log.e(this, "forceDetailsUpdate", e);
+        } catch (InvocationTargetException e) {
+            Log.e(this, "forceDetailsUpdate", e);
+        } catch (IllegalAccessException e) {
+            Log.e(this, "forceDetailsUpdate", e);
+        }
+    }
+
+    public void setCapabilities(int capabilities) {
+        Preconditions.checkNotNull(mCall);
+        try {
+            Field field = mCall.getDetails().getClass().getDeclaredField("mCallCapabilities");
+            field.setAccessible(true);
+            field.set(mCall.getDetails(), capabilities);
+        } catch (IllegalAccessException e) {
+            Log.e(this, "setProperties", e);
+        } catch (NoSuchFieldException e) {
+            Log.e(this, "setProperties", e);
+        }
+    }
+
+    public void setCall(android.telecom.Call call) {
+        mCall = call;
+    }
+}
