diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 5c1164b..fa13adf 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -281,7 +281,7 @@
                   android:configChanges="keyboardHidden"
                   android:exported="false"
                   android:process="com.android.incallui"
-                  android:screenOrientation="nosensor">
+                  android:screenOrientation="sensor" >
         </activity>
 
         <!-- BroadcastReceiver for receiving Intents from Notification mechanism. -->
diff --git a/res/layout/call_detail.xml b/res/layout/call_detail.xml
index 45431a2..2e38e2d 100644
--- a/res/layout/call_detail.xml
+++ b/res/layout/call_detail.xml
@@ -24,7 +24,7 @@
         android:orientation="vertical"
         android:layout_alignParentStart="true"
         android:layout_alignParentTop="true"
-        android:background="@color/background_dialer_list_items" >
+        android:background="@color/background_dialer_details_list_items" >
         <!-- Caller information "card" -->
         <LinearLayout
             android:id="@+id/caller_information"
@@ -104,8 +104,7 @@
             android:paddingStart="@dimen/call_detail_horizontal_margin"
             android:paddingEnd="@dimen/call_detail_horizontal_margin"
             android:paddingTop="@dimen/transcription_top_margin"
-            android:paddingBottom="@dimen/transcription_bottom_margin"
-            android:background="@color/background_dialer_list_items" />
+            android:paddingBottom="@dimen/transcription_bottom_margin" />
         <LinearLayout
             android:id="@+id/voicemail_container"
             android:layout_width="match_parent"
diff --git a/res/layout/call_detail_history_item.xml b/res/layout/call_detail_history_item.xml
index 0e5dcf2..cbe8442 100644
--- a/res/layout/call_detail_history_item.xml
+++ b/res/layout/call_detail_history_item.xml
@@ -22,8 +22,7 @@
     android:paddingBottom="@dimen/call_log_inner_margin"
     android:paddingStart="@dimen/call_detail_horizontal_margin"
     android:paddingEnd="@dimen/call_log_outer_margin"
-    android:orientation="vertical"
-    android:background="@color/background_dialer_list_items" >
+    android:orientation="vertical" >
     <LinearLayout
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index b470f5f..9851f67 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -81,8 +81,8 @@
     <string name="description_playback_start_stop" msgid="5060732345522492292">"Pokretanje ili zaustavljanje reprodukcije"</string>
     <string name="description_playback_speakerphone" msgid="6008323900245707504">"Uključivanje ili isključivanje zvučnika"</string>
     <string name="description_playback_seek" msgid="4509404274968530055">"Traženje položaja reprodukcije"</string>
-    <string name="description_rate_decrease" msgid="3161652589401708284">"Smanjenje stope reprodukcije"</string>
-    <string name="description_rate_increase" msgid="6324606574127052385">"Povećanje stope reprodukcije"</string>
+    <string name="description_rate_decrease" msgid="3161652589401708284">"Smanjenje brzine reprodukcije"</string>
+    <string name="description_rate_increase" msgid="6324606574127052385">"Povećanje brzine reprodukcije"</string>
     <string name="action_menu_call_history_description" msgid="9018442816219748968">"Povijest poziva"</string>
     <string name="action_menu_overflow_description" msgid="2303272250613084574">"Više opcija"</string>
     <string name="action_menu_dialpad_button" msgid="1425910318049008136">"površina za biranje brojeva"</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 5667a40..244e0b7 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -147,7 +147,7 @@
     <string name="recentVoicemails_empty" msgid="4905583746647459963">"אין לך הודעות דואר קולי אחרונות."</string>
     <string name="show_favorites_only" msgid="5520072531022614595">"הצג מועדפים בלבד"</string>
     <string name="call_log_activity_title" msgid="4612824396355272023">"היסטוריה"</string>
-    <string name="call_log_all_title" msgid="3566738938889333307">"הכול"</string>
+    <string name="call_log_all_title" msgid="3566738938889333307">"הכל"</string>
     <string name="call_log_missed_title" msgid="4541142293870638971">"שיחה שלא נענתה"</string>
     <string name="call_log_voicemail_title" msgid="940422274047025948">"דואר קולי"</string>
     <string name="tab_speed_dial" msgid="7807567599021643864">"חיוג מהיר"</string>
diff --git a/res/values-ka-rGE/strings.xml b/res/values-ka-rGE/strings.xml
index a4ad64e..2e2e9a2 100644
--- a/res/values-ka-rGE/strings.xml
+++ b/res/values-ka-rGE/strings.xml
@@ -79,8 +79,8 @@
     <string name="description_dial_button" msgid="1274091017188142646">"დარეკვა"</string>
     <string name="description_digits_edittext" msgid="8760207516497016437">"ასაკრეფი ნომერი"</string>
     <string name="description_playback_start_stop" msgid="5060732345522492292">"დაკვრის შეჩერება ან გაშვება"</string>
-    <string name="description_playback_speakerphone" msgid="6008323900245707504">"სპიკერები შეგიძლიათ ჩაროთ და ამაგროდ."</string>
-    <string name="description_playback_seek" msgid="4509404274968530055">"დაკვრის პოძიციის მოძებნა"</string>
+    <string name="description_playback_speakerphone" msgid="6008323900245707504">"სპიკერები შეგიძლიათ ჩართოთ და გამორთოთ."</string>
+    <string name="description_playback_seek" msgid="4509404274968530055">"დაკვრის პოზიციის მოძებნა"</string>
     <string name="description_rate_decrease" msgid="3161652589401708284">"დაკვრის კოეფიციენტის შემცირება"</string>
     <string name="description_rate_increase" msgid="6324606574127052385">"დაკვრის კოეფიციენტის გაზრდა"</string>
     <string name="action_menu_call_history_description" msgid="9018442816219748968">"საუბრის ისტორია"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 548d795..cd76ece 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -79,7 +79,7 @@
     <string name="description_dial_button" msgid="1274091017188142646">"전화걸기"</string>
     <string name="description_digits_edittext" msgid="8760207516497016437">"전화를 걸 번호"</string>
     <string name="description_playback_start_stop" msgid="5060732345522492292">"재생 실행 또는 중지"</string>
-    <string name="description_playback_speakerphone" msgid="6008323900245707504">"스피커폰을 켜거나 끄기"</string>
+    <string name="description_playback_speakerphone" msgid="6008323900245707504">"스피커폰 켜고 끄기"</string>
     <string name="description_playback_seek" msgid="4509404274968530055">"재생 위치 찾기"</string>
     <string name="description_rate_decrease" msgid="3161652589401708284">"재생 속도 낮추기"</string>
     <string name="description_rate_increase" msgid="6324606574127052385">"재생 속도 높이기"</string>
diff --git a/res/values-ky-rKG/strings.xml b/res/values-ky-rKG/strings.xml
index be5f439..26e53dc 100644
--- a/res/values-ky-rKG/strings.xml
+++ b/res/values-ky-rKG/strings.xml
@@ -103,16 +103,11 @@
     <skip />
     <!-- no translation found for description_digits_edittext (8760207516497016437) -->
     <skip />
-    <!-- no translation found for description_playback_start_stop (5060732345522492292) -->
-    <skip />
-    <!-- no translation found for description_playback_speakerphone (6008323900245707504) -->
-    <skip />
-    <!-- no translation found for description_playback_seek (4509404274968530055) -->
-    <skip />
-    <!-- no translation found for description_rate_decrease (3161652589401708284) -->
-    <skip />
-    <!-- no translation found for description_rate_increase (6324606574127052385) -->
-    <skip />
+    <string name="description_playback_start_stop" msgid="5060732345522492292">"Ойнотууну иштетүү же токтотуу"</string>
+    <string name="description_playback_speakerphone" msgid="6008323900245707504">"Катуу сүйлөткүчтү күйгүзүү же өчүрүү"</string>
+    <string name="description_playback_seek" msgid="4509404274968530055">"Ойнотуунун жайгашкан жерин издөө"</string>
+    <string name="description_rate_decrease" msgid="3161652589401708284">"Ойнотуу ылдамдыгын жайлатуу"</string>
+    <string name="description_rate_increase" msgid="6324606574127052385">"Ойнотуу ылдамдыгын тездетүү"</string>
     <string name="action_menu_call_history_description" msgid="9018442816219748968">"Чалуулардын тарыхы"</string>
     <string name="action_menu_overflow_description" msgid="2303272250613084574">"Көбүрөөк мүмкүнчүлүктөр"</string>
     <string name="action_menu_dialpad_button" msgid="1425910318049008136">"чалгыч такта"</string>
diff --git a/res/values-lo-rLA/strings.xml b/res/values-lo-rLA/strings.xml
index e740905..a736ec6 100644
--- a/res/values-lo-rLA/strings.xml
+++ b/res/values-lo-rLA/strings.xml
@@ -78,16 +78,11 @@
     <string name="description_search_button" msgid="3660807558587384889">"ຊອກຫາ"</string>
     <string name="description_dial_button" msgid="1274091017188142646">"ແປ້ນໂທ"</string>
     <string name="description_digits_edittext" msgid="8760207516497016437">"ໝາຍເລກທີ່ຈະໂທ"</string>
-    <!-- no translation found for description_playback_start_stop (5060732345522492292) -->
-    <skip />
-    <!-- no translation found for description_playback_speakerphone (6008323900245707504) -->
-    <skip />
-    <!-- no translation found for description_playback_seek (4509404274968530055) -->
-    <skip />
-    <!-- no translation found for description_rate_decrease (3161652589401708284) -->
-    <skip />
-    <!-- no translation found for description_rate_increase (6324606574127052385) -->
-    <skip />
+    <string name="description_playback_start_stop" msgid="5060732345522492292">"​ຫຼິ້ນ ຫຼື​ຢຸດ​ການຫຼິ້ນ"</string>
+    <string name="description_playback_speakerphone" msgid="6008323900245707504">"​ປິດຫຼື​ເປີດ​ລຳ​ໂພງ​ມື​ຖື"</string>
+    <string name="description_playback_seek" msgid="4509404274968530055">"​ຊອກ​ຫາ​ຕຳ​​ແໜ່ງ​ຫຼິ້ນ"</string>
+    <string name="description_rate_decrease" msgid="3161652589401708284">"ຫຼ​ຸດ​ອັດ​ຕາ​ການຫຼິ້ນ"</string>
+    <string name="description_rate_increase" msgid="6324606574127052385">"​ເພີ​່ມ​ອັດ​ຕາ​ການຫຼິ້ນ"</string>
     <string name="action_menu_call_history_description" msgid="9018442816219748968">"ປະຫວັດການໂທ"</string>
     <string name="action_menu_overflow_description" msgid="2303272250613084574">"ໂຕເລືອກເພີ່ມເຕີມ"</string>
     <string name="action_menu_dialpad_button" msgid="1425910318049008136">"ປຸ່ມໂທລະສັບ"</string>
diff --git a/res/values-ms-rMY/strings.xml b/res/values-ms-rMY/strings.xml
index cdef8c6..29b4b4e 100644
--- a/res/values-ms-rMY/strings.xml
+++ b/res/values-ms-rMY/strings.xml
@@ -78,7 +78,7 @@
     <string name="description_search_button" msgid="3660807558587384889">"cari"</string>
     <string name="description_dial_button" msgid="1274091017188142646">"dail"</string>
     <string name="description_digits_edittext" msgid="8760207516497016437">"nombor untuk didail"</string>
-    <string name="description_playback_start_stop" msgid="5060732345522492292">"Main atau berhenti main balik"</string>
+    <string name="description_playback_start_stop" msgid="5060732345522492292">"Mainkan atau berhenti main balik"</string>
     <string name="description_playback_speakerphone" msgid="6008323900245707504">"Hidupkan atau matikan pembesar suara"</string>
     <string name="description_playback_seek" msgid="4509404274968530055">"Dapatkan kedudukan main balik"</string>
     <string name="description_rate_decrease" msgid="3161652589401708284">"Kurangkan kadar main balik"</string>
diff --git a/res/values-my-rMM/strings.xml b/res/values-my-rMM/strings.xml
index 4429a78..fb70490 100644
--- a/res/values-my-rMM/strings.xml
+++ b/res/values-my-rMM/strings.xml
@@ -42,7 +42,7 @@
     <string name="notification_new_voicemail_ticker" msgid="895342132049452081">"<xliff:g id="CALLER">%1$s</xliff:g> ဆီမှ အသံစာ အသစ်"</string>
     <string name="voicemail_playback_error" msgid="1811242131549854624">"အသံပို့စာအားဖွင့်မရပါ"</string>
     <string name="voicemail_buffering" msgid="738287747618697097">"ယာယီကြားခံနေစဉ်…"</string>
-    <string name="voicemail_fetching_content" msgid="877911315738258780">"အသံပို့စာများ ရယူစောင့်စားနေစဉ်…"</string>
+    <string name="voicemail_fetching_content" msgid="877911315738258780">"အသံပို့စာများ ရယူစောင့်စားနေစဉ်…"</string>
     <string name="voicemail_fetching_timout" msgid="6691792377574905201">"အသံပို့စာများ ယူ၍မရပါ"</string>
     <string name="call_log_voicemail_header" msgid="3945407886667089173">"အသံမေးလ်ပါသော အဝင်ခေါ်ဆိုမှုများသာ"</string>
     <string name="call_log_incoming_header" msgid="2787722299753674684">"အဝင်ဖုန်းသာ"</string>
@@ -78,11 +78,11 @@
     <string name="description_search_button" msgid="3660807558587384889">"ရှာဖွေရန်"</string>
     <string name="description_dial_button" msgid="1274091017188142646">"ဖုန်းခေါ်သည်"</string>
     <string name="description_digits_edittext" msgid="8760207516497016437">"ခေါ်ရန် နံပါတ်"</string>
-    <string name="description_playback_start_stop" msgid="5060732345522492292">"ပြန်ဖွင့်ပြမှုကို ဖွင့်ရန် သို့မဟုတ် ရပ်ရန်"</string>
-    <string name="description_playback_speakerphone" msgid="6008323900245707504">"စပီကာဖုန်းကို ဖွင့် သို့မဟုတ် ပိတ်ရန်"</string>
-    <string name="description_playback_seek" msgid="4509404274968530055">"အသံပြန်ဖွင့်ရေး နေရာကို ရှာရန်"</string>
-    <string name="description_rate_decrease" msgid="3161652589401708284">"ပြန်ဖွင့်မှု နှုန်းကို လျှော့ချရန်"</string>
-    <string name="description_rate_increase" msgid="6324606574127052385">"ပြန်ဖွင့်မှု နှုန်းကို မြှင့်ရန်"</string>
+    <string name="description_playback_start_stop" msgid="5060732345522492292">"ပြန်ဖွင့်ပြမှုကို ဖွင့်ရန် သို့မဟုတ် ရပ်ရန်"</string>
+    <string name="description_playback_speakerphone" msgid="6008323900245707504">"စပီကာဖုန်းကို ဖွင့် သို့မဟုတ် ပိတ်ရန်"</string>
+    <string name="description_playback_seek" msgid="4509404274968530055">"အသံပြန်ဖွင့်ရေး နေရာကို ရှာရန်"</string>
+    <string name="description_rate_decrease" msgid="3161652589401708284">"ပြန်ဖွင့်မှု နှုန်းကို လျှော့ချရန်"</string>
+    <string name="description_rate_increase" msgid="6324606574127052385">"ပြန်ဖွင့်မှု နှုန်းကို မြှင့်ရန်"</string>
     <string name="action_menu_call_history_description" msgid="9018442816219748968">"ယခင်ခေါ်ဆိုမှုများ"</string>
     <string name="action_menu_overflow_description" msgid="2303272250613084574">"ပိုမိုရွေးချယ်စရာများ"</string>
     <string name="action_menu_dialpad_button" msgid="1425910318049008136">"ဖုန်းနံပါတ်ကွက်"</string>
@@ -93,9 +93,9 @@
     <string name="menu_show_voicemails_only" msgid="1898421289561435703">"အသံပို့စာများသာ ပြပါ"</string>
     <string name="menu_show_all_calls" msgid="7560347482073345885">"ဖုန်းခေါ်မှုအားလုံးပြရန်"</string>
     <string name="add_contact" msgid="4579643070374941999">"အဆက်အသွယ်များ ထဲသို့ ထည့်ရန်"</string>
-    <string name="add_2sec_pause" msgid="9214012315201040129">"၂စက္ကန့်ရပ်ဆိုင်းရန် ထည့်ပါ"</string>
+    <string name="add_2sec_pause" msgid="9214012315201040129">"၂စက္ကန့်ရပ်ဆိုင်းရန် ထည့်ပါ"</string>
     <string name="add_wait" msgid="3360818652790319634">"စောင့်ဆိုင်းခြင်း ထည့်ပါ"</string>
-    <string name="menu_select_account" msgid="5576598753317289565">"အကောင့်ကို ရွေးရန်"</string>
+    <string name="menu_select_account" msgid="5576598753317289565">"အကောင့်ကို ရွေးရန်"</string>
     <string name="dialer_settings_label" msgid="4305043242594150479">"ဆက်တင်များ"</string>
     <string name="menu_newContact" msgid="1209922412763274638">"အဆက်အသွယ်အသစ်"</string>
     <string name="menu_allContacts" msgid="6948308384034051670">"လိပ်စာများအားလုံး"</string>
@@ -103,11 +103,11 @@
     <string name="toast_call_detail_error" msgid="7200975244804730096">"တောင်းဆိုထားသော ခေါ်ဆိုမှုအတွက် အသေးစိတ်အချက်အလက်များ ဖတ်လို့မရပါ"</string>
     <string name="dialer_useDtmfDialpad" msgid="1707548397435075040">"touch tone ကီးခလုတ် ကိုအသုံးပြုပါ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3719386377550913067">"ဖုန်းပြန်ခေါ်မှု ပြုလုပ်နေစဉ်"</string>
-    <string name="dialer_addAnotherCall" msgid="4205688819890074468">"ဖုန်းခေါ်မှု ထပ်ထည့်ပါ"</string>
+    <string name="dialer_addAnotherCall" msgid="4205688819890074468">"ဖုန်းခေါ်မှု ထပ်ထည့်ပါ"</string>
     <string name="type_incoming" msgid="6502076603836088532">"အဝင်ခေါ်ဆိုမှု"</string>
     <string name="type_outgoing" msgid="343108709599392641">"အထွက်ဖုန်း"</string>
     <string name="type_missed" msgid="2720502601640509542">"လွဲသွားသော ဖုန်းခေါ်မှု"</string>
-    <string name="type_incoming_video" msgid="82323391702796181">"ဝင်လာသည့် ဗီဒီယို ခေါ်ဆိုမှု"</string>
+    <string name="type_incoming_video" msgid="82323391702796181">"ဝင်လာသည့် ဗီဒီယို ခေါ်ဆိုမှု"</string>
     <string name="type_outgoing_video" msgid="2858140021680755266">"ပြုလုပ်နေဆဲ ဗီဒီယို ခေါ်ဆိုမှု"</string>
     <string name="type_missed_video" msgid="954396897034220545">"လွတ်သွားသော ဗီဒီယို ခေါ်ဆိုမှု"</string>
     <string name="type_voicemail" msgid="5153139450668549908">"အသံစာပို့စနစ်"</string>
@@ -129,7 +129,7 @@
     <string name="payphone" msgid="4864313342828942922">"အများသုံးဖုန်း"</string>
     <string name="dialerKeyboardHintText" msgid="5401660096579787344">"ကီးဘုတ်သုံး၍ခလုတ်နှိပ်ပါ"</string>
     <string name="dialerDialpadHintText" msgid="5824490365898349041">"ဂဏန်းများနှိပ်၍ ဖုန်းခေါ်မှုကို ထည့်ပါ"</string>
-    <string name="callDetailsDurationFormat" msgid="8157706382818184268">"<xliff:g id="MINUTES">%s</xliff:g> မိနစ် <xliff:g id="SECONDS">%s</xliff:g> စက္ကန့်"</string>
+    <string name="callDetailsDurationFormat" msgid="8157706382818184268">"<xliff:g id="MINUTES">%s</xliff:g> မိနစ် <xliff:g id="SECONDS">%s</xliff:g> စက္ကန့်"</string>
     <string name="dialog_phone_call_prohibited_message" msgid="6554711866586660441">"ဖုန်းခေါ်မှု မထွက်ပါ"</string>
     <string name="dialog_voicemail_not_ready_message" msgid="4384716252789515378">"အသံစာပို့စနစ်ကို ပြင်ဆင်ရန်၊ မီနူး ပြီးနောက် ဆက်တင် သို့သွားပါ"</string>
     <string name="dialog_voicemail_airplane_mode_message" msgid="530922773669546093">"အသံစာပို့စနစ်ကို ခေါ်ဆိုမှုပြုရန်, လေယာဉ်ပျံပေါ်အသုံးပြုသောစနစ်ကို ပိတ်ပါ"</string>
@@ -141,9 +141,9 @@
     <string name="add_contact_not_available" msgid="1419207765446461366">"ပီးပဲလ် အပ်ပလီကေးရှင်းကို ဤအရာအား အသုံးပြုခွင့် ပြန်လည်ပေးရန်"</string>
     <string name="voice_search_not_available" msgid="7580616740587850828">"အသံဖြင့် ရှာဖွေခြင်းကို လုပ်၍မရနိုင်ပါ"</string>
     <string name="call_not_available" msgid="8941576511946492225">"ဖုန်း အပလီကေးရှင်းကို ပိတ်ထား၍ ဖုန်း ခေါ်ဆိုမှု မပြုလုပ်နိုင်ခဲ့ပါ။"</string>
-    <string name="activity_not_available" msgid="8265265380537872585">"ရွေးချယ်ထားသည့် လုပ်ဆောင်ချက်ကို ကိုင်တွယ်ရန် ထည့်သွင်းထားသည့် လှုပ်ရှားမှု မရှိပါ။"</string>
+    <string name="activity_not_available" msgid="8265265380537872585">"ရွေးချယ်ထားသည့် လုပ်ဆောင်ချက်ကို ကိုင်တွယ်ရန် ထည့်သွင်းထားသည့် လှုပ်ရှားမှု မရှိပါ။"</string>
     <string name="dialer_hint_find_contact" msgid="8798845521253672403">"နာမည် သို့မဟုတ် ဖုန်းနံပါတ် တစ်ခု ရိုက်ထည့်ပါ"</string>
-    <string name="recentMissed_empty" msgid="4177320482947526015">"သင်ဆီမှာ မကြာမီတုန်းက လွတ်သွားသည့် ခေါ်ဆိုမှုများ မရှိပါ။"</string>
+    <string name="recentMissed_empty" msgid="4177320482947526015">"သင်ဆီမှာ မကြာမီတုန်းက လွတ်သွားသည့် ခေါ်ဆိုမှုများ မရှိပါ။"</string>
     <string name="recentVoicemails_empty" msgid="4905583746647459963">"သင်ဆီမှာ မကြာမီတုန်းက အသံမေးလ်များ မရှိပါ။"</string>
     <string name="show_favorites_only" msgid="5520072531022614595">"အနှစ်သက်ဆုံးများသာ ပြပါ"</string>
     <string name="call_log_activity_title" msgid="4612824396355272023">"မှတ်တမ်း"</string>
@@ -158,10 +158,10 @@
     <string name="search_shortcut_call_number" msgid="7277194656832895870">"<xliff:g id="NUMBER">%s</xliff:g> ကိုခေါ်ပါ"</string>
     <string name="search_shortcut_add_to_contacts" msgid="1853716708655789069">"လိပ်စာများထဲသို့ ထည့်ပါ"</string>
     <string name="search_shortcut_make_video_call" msgid="1265971685034465166">"ဗီဒီယို ခေါ်ဆိုမှု ပြုလုပ်ရန်"</string>
-    <string name="recents_footer_text" msgid="7315554578957453359">"ခေါ်ဆိုမှု မှတ်တမ်း အပြည့်ကို ကြည့်ရန်"</string>
+    <string name="recents_footer_text" msgid="7315554578957453359">"ခေါ်ဆိုမှု မှတ်တမ်း အပြည့်ကို ကြည့်ရန်"</string>
     <string name="num_missed_calls" msgid="8081736535604293886">"လွတ်သွားသောဖုန်း <xliff:g id="NUMBER">%s</xliff:g> ခါ"</string>
-    <string name="speed_dial_empty" msgid="5476435149276295630">"အမြန် နံပါတ်ကွက်မှာ အကြိုက်ဆုံးများ နှင့် သင် မကြာခဏ ခေါ်ယူသည့် နံပါတ်များ \nကို တစ်ချက် ထိလျက် ခေါ်ဆိုခြင်း\n ဖြစ်သည်။"</string>
-    <string name="all_contacts_empty" msgid="4536082452651392894">"သင့်ဆီမှာ အဆက်အသွယ်များ မရှိပါ။"</string>
+    <string name="speed_dial_empty" msgid="5476435149276295630">"အမြန် နံပါတ်ကွက်မှာ အကြိုက်ဆုံးများ နှင့် သင် မကြာခဏ ခေါ်ယူသည့် နံပါတ်များ \nကို တစ်ချက် ထိလျက် ခေါ်ဆိုခြင်း\n ဖြစ်သည်။"</string>
+    <string name="all_contacts_empty" msgid="4536082452651392894">"သင့်ဆီမှာ အဆက်အသွယ်များ မရှိပါ။"</string>
     <string name="contact_tooltip" msgid="7817483485692282287">"နံပါတ်အားလုံးကို မြင်နိုင်ရန် ပုံကို ထိကိုင်ခြင်း သို့မဟုတ် အစဉ်လိုက်ပြန်စီရန် ဖိကိုင်ထားပါ"</string>
     <string name="description_dismiss" msgid="2146276780562549643">"လွှတ်လိုက်သည်"</string>
     <string name="remove_contact" msgid="1080555335283662961">"ဖယ်ရှာခြင်း"</string>
@@ -177,7 +177,7 @@
     <string name="description_video_call_action" msgid="4303952636480252389">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ထံသို့ ဗီဒီယို ခေါ်ဆိုမှု"</string>
     <string name="description_voicemail_action" msgid="8054891873788903063">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>ထံမှ အသံစာကို နားထောင်ရန်"</string>
     <string name="description_details_action" msgid="2433827152749491785">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>၏ ခေါ်ဆိုမှု အသေးစိတ်များ"</string>
-    <string name="toast_entry_removed" msgid="3389119736202317999">"ခေါ်ဆိုမှု လော့ဂ် ထည့်သွင်းမှု ဖျက်ပြီး။"</string>
+    <string name="toast_entry_removed" msgid="3389119736202317999">"ခေါ်ဆိုမှု လော့ဂ် ထည့်သွင်းမှု ဖျက်ပြီး။"</string>
     <string name="toast_caller_id_reported" msgid="1127087402649645557">"အဆက်အသွယ်ကို အစီရင်ခံထား"</string>
     <string name="call_log_action_report" msgid="561229827189128879">"အစီရင်ခံရန်"</string>
     <string name="call_log_header_today" msgid="3225248682434212981">"ယနေ့"</string>
@@ -185,12 +185,12 @@
     <string name="call_log_header_last_week" msgid="5197040511028258038">"လွန်ခဲ့သော အပတ်"</string>
     <string name="call_log_header_other" msgid="5769921959940709084">"ပိုဟောင်းသော"</string>
     <string name="call_detail_list_header" msgid="866455969433213220">"ခေါ်ဆိုမှု စာရင်း"</string>
-    <string name="voicemail_speaker_on" msgid="209154030283487068">"စပီကာကို ဖွင့်ပါ။"</string>
+    <string name="voicemail_speaker_on" msgid="209154030283487068">"စပီကာကို ဖွင့်ပါ။"</string>
     <string name="voicemail_speaker_off" msgid="7390530056413093958">"စပီကာကို ပိတ်ပါ။"</string>
     <string name="voicemail_play_faster" msgid="3444751008615323006">"ပိုမြန်စွာ ကစားရန်"</string>
     <string name="voicemail_play_slower" msgid="4544796503902818832">"ပိုနှေးစွာ ကစားရန်"</string>
-    <string name="voicemail_play_start_pause" msgid="3687447935787768983">"ဖွင့်မှု စတင် သို့မဟုတ် ဆိုင်းငံ့ရန်"</string>
+    <string name="voicemail_play_start_pause" msgid="3687447935787768983">"ဖွင့်မှု စတင် သို့မဟုတ် ဆိုင်းငံ့ရန်"</string>
     <string name="list_delimeter" msgid="4571593167738725100">"၊ "</string>
     <string name="call_settings_label" msgid="2934215322075055446">"ခေါ်ဆိုမှု ဆက်တင်များ"</string>
-    <string name="call_settings_description" msgid="7955465849094897305">"အသံစဉ်များ၊ အသံစာ ဆက်တင်များ၊ VoIP ခေါ်ဆိုမှုများ စသဖြင့်"</string>
+    <string name="call_settings_description" msgid="7955465849094897305">"အသံစဉ်များ၊ အသံစာ ဆက်တင်များ၊ VoIP ခေါ်ဆိုမှုများ စသဖြင့်"</string>
 </resources>
diff --git a/res/values-ne-rNP/strings.xml b/res/values-ne-rNP/strings.xml
index 4288c0f..72558cf 100644
--- a/res/values-ne-rNP/strings.xml
+++ b/res/values-ne-rNP/strings.xml
@@ -78,11 +78,11 @@
     <string name="description_search_button" msgid="3660807558587384889">"खोजी गर्नुहोस्"</string>
     <string name="description_dial_button" msgid="1274091017188142646">"डायल"</string>
     <string name="description_digits_edittext" msgid="8760207516497016437">"डायल गर्न संख्या"</string>
-    <string name="description_playback_start_stop" msgid="5060732345522492292">"प्लेब्याक चलाउनुहोस वा रोक्नुस्"</string>
-    <string name="description_playback_speakerphone" msgid="6008323900245707504">"स्पीकरफोन खोल्नुस् वा बन्द गर्नुहोस्"</string>
+    <string name="description_playback_start_stop" msgid="5060732345522492292">"प्लेब्याक चलाउनुहोस वा रोक्नुहोस्"</string>
+    <string name="description_playback_speakerphone" msgid="6008323900245707504">"स्पीकरफोन खोल्नुहोस् वा बन्द गर्नुहोस्"</string>
     <string name="description_playback_seek" msgid="4509404274968530055">"प्लेब्याक स्थिति खोज्नुहोस्"</string>
     <string name="description_rate_decrease" msgid="3161652589401708284">"प्लेब्याक दर कम गर्नुहोस्"</string>
-    <string name="description_rate_increase" msgid="6324606574127052385">"प्लेब्याक दर बढाउनुस्"</string>
+    <string name="description_rate_increase" msgid="6324606574127052385">"प्लेब्याक दर बढाउनुहोस्"</string>
     <string name="action_menu_call_history_description" msgid="9018442816219748968">"कल इतिहास"</string>
     <string name="action_menu_overflow_description" msgid="2303272250613084574">"थप विकल्पहरू"</string>
     <string name="action_menu_dialpad_button" msgid="1425910318049008136">"डायल प्याड"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index bdf92f5..95c4ced 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -147,7 +147,7 @@
     <string name="recentVoicemails_empty" msgid="4905583746647459963">"Não existem mensagens de correio de voz recentes."</string>
     <string name="show_favorites_only" msgid="5520072531022614595">"Mostrar apenas os favoritos"</string>
     <string name="call_log_activity_title" msgid="4612824396355272023">"Histórico"</string>
-    <string name="call_log_all_title" msgid="3566738938889333307">"Todos"</string>
+    <string name="call_log_all_title" msgid="3566738938889333307">"Todas"</string>
     <string name="call_log_missed_title" msgid="4541142293870638971">"Não atendidas"</string>
     <string name="call_log_voicemail_title" msgid="940422274047025948">"Corr. Voz"</string>
     <string name="tab_speed_dial" msgid="7807567599021643864">"Marcação rápida"</string>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index ae54d0b..448d1e6 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -20,6 +20,8 @@
     <!-- Secondary text color in the Dialer -->
     <color name="dialtacts_secondary_text_color">#737373</color>
     <color name="dialer_accent_color">#eeff41</color>
+    <color name="dialer_red_highlight_color">#ff1744</color>
+    <color name="dialer_green_highlight_color">#00c853</color>
 
     <!-- Color for the setting text. -->
     <color name="setting_primary_color">#4d4c4c</color>
@@ -28,7 +30,7 @@
     <color name="setting_background_color">#ffffff</color>
 
     <!-- Color of the text describing an unconsumed missed call. -->
-    <color name="call_log_missed_call_highlight_color">#FF0000</color>
+    <color name="call_log_missed_call_highlight_color">@color/dialer_red_highlight_color</color>
 
     <!-- Color of the text describing an unconsumed voicemail. -->
     <color name="call_log_voicemail_highlight_color">#33b5e5</color>
@@ -48,14 +50,15 @@
     <!-- Standard color for selected items. -->
     <color name="item_selected">#660099cc</color>
 
-    <!-- Secondary background color for dialer -->
-    <color name="background_dialer_secondary">#f9f9f9</color>
     <!-- White background for dialer -->
     <color name="background_dialer_white">#ffffff</color>
     <!-- Background color of new dialer activity -->
     <color name="background_dialer_light">#fafafa</color>
+    <!-- Background color for search results and call details -->
+    <color name="background_dialer_results">#f9f9f9</color>
     <!-- Background color of dialer list items (contacts, call log entries) -->
     <color name="background_dialer_list_items">@color/background_dialer_light</color>
+    <color name="background_dialer_details_list_items">@color/background_dialer_results</color>
 
     <!-- Color of the 1dp divider that separates favorites -->
     <color name="favorite_contacts_separator_color">#d0d0d0</color>
@@ -65,7 +68,7 @@
     <!-- Color of the contact name in favorite tiles -->
     <color name="contact_tile_name_color">#ffffff</color>
 
-    <color name="contact_list_name_text_color">#4d4d4d</color>
+    <color name="contact_list_name_text_color">@color/dialtacts_primary_text_color</color>
 
     <!-- Undo dialogue color -->
     <color name="undo_dialogue_text_color">#4d4d4d</color>
@@ -92,7 +95,7 @@
     <color name="missed_call">#ff2e58</color>
 
     <!-- Color for answered or outgoing call icons. -->
-    <color name="answered_call">#2aad6f</color>
+    <color name="answered_call">@color/dialer_green_highlight_color</color>
 
     <!-- Color for icons in the actionbar -->
     <color name="actionbar_icon_color">#ffffff</color>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index dcd23d1..9f37d28 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -102,11 +102,9 @@
     </style>
 
     <style name="CallDetailActivityTheme" parent="DialtactsThemeWithoutActionBarOverlay">
-        <item name="android:windowBackground">@color/background_dialer_light</item>
+        <item name="android:windowBackground">@color/background_dialer_results</item>
         <!-- CallLog -->
-        <item name="call_log_primary_text_color">#404040</item>
         <item name="call_log_primary_background_color">#FFFFFF</item>
-        <item name="call_log_secondary_text_color">#8f8f8f</item>
         <item name="call_log_secondary_background_color">#FFFFFF</item>
         <item name="call_log_header_color">#FFFFFF</item>
         <!-- VoicemailStatus -->
diff --git a/src/com/android/dialer/CallDetailActivity.java b/src/com/android/dialer/CallDetailActivity.java
index e44ff83..e716719 100644
--- a/src/com/android/dialer/CallDetailActivity.java
+++ b/src/com/android/dialer/CallDetailActivity.java
@@ -16,7 +16,6 @@
 
 package com.android.dialer;
 
-import android.app.Activity;
 import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.ContentUris;
@@ -68,6 +67,7 @@
 import com.android.dialer.voicemail.VoicemailStatusHelper;
 import com.android.dialer.voicemail.VoicemailStatusHelper.StatusMessage;
 import com.android.dialer.voicemail.VoicemailStatusHelperImpl;
+import com.android.dialerbind.analytics.AnalyticsActivity;
 
 import java.util.List;
 
@@ -77,7 +77,7 @@
  * This activity can be either started with the URI of a single call log entry, or with the
  * {@link #EXTRA_CALL_LOG_IDS} extra to specify a group of call log entries.
  */
-public class CallDetailActivity extends Activity implements ProximitySensorAware {
+public class CallDetailActivity extends AnalyticsActivity implements ProximitySensorAware {
     private static final String TAG = "CallDetail";
 
     private static final int LOADER_ID = 0;
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index 53627f6..7d4e2d0 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -63,11 +63,11 @@
 import android.widget.Toast;
 
 import com.android.contacts.common.CallUtil;
-import com.android.contacts.common.activity.TransactionSafeActivity;
 import com.android.contacts.common.dialog.ClearFrequentsDialog;
 import com.android.contacts.common.interactions.ImportExportDialogFragment;
 import com.android.contacts.common.list.OnPhoneNumberPickerActionListener;
 import com.android.contacts.common.widget.FloatingActionButtonController;
+import com.android.dialer.activity.TransactionSafeActivity;
 import com.android.dialer.calllog.CallLogActivity;
 import com.android.dialer.database.DialerDatabaseHelper;
 import com.android.dialer.dialpad.DialpadFragment;
diff --git a/src/com/android/dialer/activity/TransactionSafeActivity.java b/src/com/android/dialer/activity/TransactionSafeActivity.java
new file mode 100644
index 0000000..d7a2120
--- /dev/null
+++ b/src/com/android/dialer/activity/TransactionSafeActivity.java
@@ -0,0 +1,67 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.activity;
+
+import android.app.Activity;
+import android.os.Bundle;
+
+import com.android.dialerbind.analytics.AnalyticsActivity;
+
+/**
+ * A common superclass that keeps track of whether an {@link Activity} has saved its state yet or
+ * not.
+ */
+public abstract class TransactionSafeActivity extends AnalyticsActivity {
+
+    private boolean mIsSafeToCommitTransactions;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        mIsSafeToCommitTransactions = true;
+    }
+
+    @Override
+    protected void onStart() {
+        super.onStart();
+        mIsSafeToCommitTransactions = true;
+    }
+
+    @Override
+    protected void onResume() {
+        super.onResume();
+        mIsSafeToCommitTransactions = true;
+    }
+
+    @Override
+    protected void onSaveInstanceState(Bundle outState) {
+        super.onSaveInstanceState(outState);
+        mIsSafeToCommitTransactions = false;
+    }
+
+    /**
+     * Returns true if it is safe to commit {@link FragmentTransaction}s at this time, based on
+     * whether {@link Activity#onSaveInstanceState} has been called or not.
+     *
+     * Make sure that the current activity calls into
+     * {@link super.onSaveInstanceState(Bundle outState)} (if that method is overridden),
+     * so the flag is properly set.
+     */
+    public boolean isSafeToCommitTransactions() {
+        return mIsSafeToCommitTransactions;
+    }
+}
diff --git a/src/com/android/dialer/calllog/CallLogActivity.java b/src/com/android/dialer/calllog/CallLogActivity.java
index 3eb4b6b..0054ac0 100644
--- a/src/com/android/dialer/calllog/CallLogActivity.java
+++ b/src/com/android/dialer/calllog/CallLogActivity.java
@@ -16,7 +16,6 @@
 package com.android.dialer.calllog;
 
 import android.app.ActionBar;
-import android.app.Activity;
 import android.app.Fragment;
 import android.app.FragmentManager;
 import android.content.Intent;
@@ -36,8 +35,9 @@
 import com.android.dialer.R;
 import com.android.dialer.voicemail.VoicemailStatusHelper;
 import com.android.dialer.voicemail.VoicemailStatusHelperImpl;
+import com.android.dialerbind.analytics.AnalyticsActivity;
 
-public class CallLogActivity extends Activity implements CallLogQueryHandler.Listener {
+public class CallLogActivity extends AnalyticsActivity implements CallLogQueryHandler.Listener {
     private Handler mHandler;
     private ViewPager mViewPager;
     private ViewPagerTabs mViewPagerTabs;
diff --git a/src/com/android/dialer/calllog/CallLogAdapter.java b/src/com/android/dialer/calllog/CallLogAdapter.java
index eebe725..64b1055 100644
--- a/src/com/android/dialer/calllog/CallLogAdapter.java
+++ b/src/com/android/dialer/calllog/CallLogAdapter.java
@@ -670,7 +670,8 @@
         views.number = number;
         views.numberPresentation = numberPresentation;
         views.callType = callType;
-        views.mAccountHandle = accountHandle;
+        // NOTE: This is currently not being used, but can be used in future versions.
+        views.accountHandle = accountHandle;
         views.voicemailUri = c.getString(CallLogQuery.VOICEMAIL_URI);
         // Stash away the Ids of the calls so that we can support deleting a row in the call log.
         views.callIds = getCallIds(c, count);
@@ -688,8 +689,7 @@
             // Set return call intent, otherwise null.
             if (PhoneNumberUtilsWrapper.canPlaceCallsTo(number, numberPresentation)) {
                 // Sets the primary action to call the number.
-                views.primaryActionView.setTag(IntentProvider.getReturnCallIntentProvider(number,
-                        accountHandle));
+                views.primaryActionView.setTag(IntentProvider.getReturnCallIntentProvider(number));
             } else {
                 // Number is not callable, so hide button.
                 views.primaryActionView.setTag(null);
@@ -970,7 +970,7 @@
         if (canPlaceCallToNumber) {
             // Sets the primary action to call the number.
             views.callBackButtonView.setTag(
-                    IntentProvider.getReturnCallIntentProvider(views.number, views.mAccountHandle));
+                    IntentProvider.getReturnCallIntentProvider(views.number));
             views.callBackButtonView.setVisibility(View.VISIBLE);
             views.callBackButtonView.setOnClickListener(mActionListener);
         } else {
@@ -982,8 +982,7 @@
         // If one of the calls had video capabilities, show the video call button.
         if (canPlaceCallToNumber && views.phoneCallDetailsViews.callTypeIcons.isVideoShown()) {
             views.videoCallButtonView.setTag(
-                    IntentProvider.getReturnVideoCallIntentProvider(views.number,
-                            views.mAccountHandle));
+                    IntentProvider.getReturnVideoCallIntentProvider(views.number));
             views.videoCallButtonView.setVisibility(View.VISIBLE);
             views.videoCallButtonView.setOnClickListener(mActionListener);
         } else {
diff --git a/src/com/android/dialer/calllog/CallLogFragment.java b/src/com/android/dialer/calllog/CallLogFragment.java
index 52375ed..ded65ed 100644
--- a/src/com/android/dialer/calllog/CallLogFragment.java
+++ b/src/com/android/dialer/calllog/CallLogFragment.java
@@ -22,7 +22,6 @@
 import android.app.Activity;
 import android.app.DialogFragment;
 import android.app.KeyguardManager;
-import android.app.ListFragment;
 import android.content.Context;
 import android.content.Intent;
 import android.database.ContentObserver;
@@ -58,6 +57,7 @@
 import com.android.dialer.voicemail.VoicemailStatusHelper.StatusMessage;
 import com.android.dialer.voicemail.VoicemailStatusHelperImpl;
 import com.android.dialerbind.ObjectFactory;
+import com.android.dialerbind.analytics.AnalyticsListFragment;
 
 import java.util.List;
 
@@ -65,7 +65,7 @@
  * Displays a list of call log entries. To filter for a particular kind of call
  * (all, missed or voicemails), specify it in the constructor.
  */
-public class CallLogFragment extends ListFragment
+public class CallLogFragment extends AnalyticsListFragment
         implements CallLogQueryHandler.Listener, CallLogAdapter.OnReportButtonClickListener,
         CallLogAdapter.CallFetcher,
         CallLogAdapter.CallItemExpandedListener {
diff --git a/src/com/android/dialer/calllog/CallLogListItemViews.java b/src/com/android/dialer/calllog/CallLogListItemViews.java
index 21e0cb0..e95d7b0 100644
--- a/src/com/android/dialer/calllog/CallLogListItemViews.java
+++ b/src/com/android/dialer/calllog/CallLogListItemViews.java
@@ -87,7 +87,7 @@
      * The account for the current call log entry.  Cached here as the call back
      * intent is set only when the actions ViewStub is inflated.
      */
-    public PhoneAccountHandle mAccountHandle;
+    public PhoneAccountHandle accountHandle;
 
     /**
      * If the call has an associated voicemail message, the URI of the voicemail message for
diff --git a/src/com/android/dialer/calllog/IntentProvider.java b/src/com/android/dialer/calllog/IntentProvider.java
index 517d9e7..11dd69f 100644
--- a/src/com/android/dialer/calllog/IntentProvider.java
+++ b/src/com/android/dialer/calllog/IntentProvider.java
@@ -37,6 +37,10 @@
 
     public abstract Intent getIntent(Context context);
 
+    public static IntentProvider getReturnCallIntentProvider(final String number) {
+        return getReturnCallIntentProvider(number, null);
+    }
+
     public static IntentProvider getReturnCallIntentProvider(final String number,
             final PhoneAccountHandle accountHandle) {
         return new IntentProvider() {
@@ -47,6 +51,10 @@
         };
     }
 
+    public static IntentProvider getReturnVideoCallIntentProvider(final String number) {
+        return getReturnVideoCallIntentProvider(number, null);
+    }
+
     public static IntentProvider getReturnVideoCallIntentProvider(final String number,
             final PhoneAccountHandle accountHandle) {
         return new IntentProvider() {
diff --git a/src/com/android/dialer/calllog/PhoneAccountUtils.java b/src/com/android/dialer/calllog/PhoneAccountUtils.java
index dc838fb..f90ad0d 100644
--- a/src/com/android/dialer/calllog/PhoneAccountUtils.java
+++ b/src/com/android/dialer/calllog/PhoneAccountUtils.java
@@ -68,7 +68,8 @@
      */
     private static PhoneAccount getAccountOrNull(Context context,
             PhoneAccountHandle phoneAccount) {
-        final TelecommManager telecommManager = TelecommManager.from(context);
+        final TelecommManager telecommManager =
+                (TelecommManager) context.getSystemService(Context.TELECOMM_SERVICE);
         final PhoneAccount account = telecommManager.getPhoneAccount(phoneAccount);
         if (account == null || !telecommManager.hasMultipleEnabledAccounts()) {
             return null;
diff --git a/src/com/android/dialer/dialpad/DialpadFragment.java b/src/com/android/dialer/dialpad/DialpadFragment.java
index 450b9af..963dc51 100644
--- a/src/com/android/dialer/dialpad/DialpadFragment.java
+++ b/src/com/android/dialer/dialpad/DialpadFragment.java
@@ -20,7 +20,6 @@
 import android.app.AlertDialog;
 import android.app.Dialog;
 import android.app.DialogFragment;
-import android.app.Fragment;
 import android.content.ComponentName;
 import android.content.ContentResolver;
 import android.content.Context;
@@ -74,10 +73,13 @@
 import com.android.dialer.R;
 import com.android.dialer.SpecialCharSequenceMgr;
 import com.android.dialer.util.DialerUtils;
+import com.android.dialerbind.analytics.AnalyticsFragment;
 import com.android.phone.common.CallLogAsync;
 import com.android.phone.common.HapticFeedback;
+import com.android.phone.common.animation.AnimUtils;
 import com.android.phone.common.dialpad.DialpadKeyButton;
 import com.android.phone.common.dialpad.DialpadView;
+
 import com.google.common.annotations.VisibleForTesting;
 
 import java.util.HashSet;
@@ -85,7 +87,7 @@
 /**
  * Fragment that displays a twelve-key phone dialpad.
  */
-public class DialpadFragment extends Fragment
+public class DialpadFragment extends AnalyticsFragment
         implements View.OnClickListener,
         View.OnLongClickListener, View.OnKeyListener,
         AdapterView.OnItemClickListener, TextWatcher,
@@ -169,6 +171,7 @@
     /** Remembers if we need to clear digits field when the screen is completely gone. */
     private boolean mClearDigitsOnStop;
 
+    private View mOverflowMenuButton;
     private PopupMenu mOverflowPopupMenu;
     private View mDelete;
     private ToneGenerator mToneGenerator;
@@ -285,6 +288,7 @@
             final Activity activity = getActivity();
             if (activity != null) {
                 activity.invalidateOptionsMenu();
+                updateMenuOverflowButton(mWasEmptyBeforeTextChange);
             }
         }
 
@@ -646,10 +650,11 @@
 
         mSmsPackageComponentName = DialerUtils.getSmsComponent(activity);
 
-        View overflowMenuButton = mDialpadView.getOverflowMenuButton();
-        mOverflowPopupMenu = buildOptionsMenu(overflowMenuButton);
-        overflowMenuButton.setOnTouchListener(mOverflowPopupMenu.getDragToOpenListener());
-        overflowMenuButton.setOnClickListener(this);
+        mOverflowMenuButton = mDialpadView.getOverflowMenuButton();
+        mOverflowPopupMenu = buildOptionsMenu(mOverflowMenuButton);
+        mOverflowMenuButton.setOnTouchListener(mOverflowPopupMenu.getDragToOpenListener());
+        mOverflowMenuButton.setOnClickListener(this);
+        mOverflowMenuButton.setVisibility(View.INVISIBLE);
     }
 
     @Override
@@ -1480,6 +1485,21 @@
     }
 
     /**
+     * Handle transitions for the menu button depending on the state of the digits edit text.
+     * Transition out when going from digits to no digits and transition in when the first digit
+     * is pressed.
+     * @param transitionIn True if transitioning in, False if transitioning out
+     */
+    private void updateMenuOverflowButton(boolean transitionIn) {
+        mOverflowMenuButton = mDialpadView.getOverflowMenuButton();
+        if (transitionIn) {
+            AnimUtils.fadeIn(mOverflowMenuButton, AnimUtils.DEFAULT_DURATION);
+        } else {
+            AnimUtils.fadeOut(mOverflowMenuButton, AnimUtils.DEFAULT_DURATION);
+        }
+    }
+
+    /**
      * Check if voicemail is enabled/accessible.
      *
      * @return true if voicemail is enabled and accessibly. Note that this can be false
diff --git a/src/com/android/dialer/interactions/PhoneNumberInteraction.java b/src/com/android/dialer/interactions/PhoneNumberInteraction.java
index a0f0c80..dc35b06 100644
--- a/src/com/android/dialer/interactions/PhoneNumberInteraction.java
+++ b/src/com/android/dialer/interactions/PhoneNumberInteraction.java
@@ -49,9 +49,9 @@
 import com.android.contacts.common.Collapser;
 import com.android.contacts.common.Collapser.Collapsible;
 import com.android.contacts.common.MoreContactUtils;
-import com.android.contacts.common.activity.TransactionSafeActivity;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.R;
+import com.android.dialer.activity.TransactionSafeActivity;
 import com.android.dialer.contact.ContactUpdateService;
 import com.android.dialer.util.DialerUtils;
 
diff --git a/src/com/android/dialer/interactions/UndemoteOutgoingCallReceiver.java b/src/com/android/dialer/interactions/UndemoteOutgoingCallReceiver.java
index 2a686c7..6d74cd0 100644
--- a/src/com/android/dialer/interactions/UndemoteOutgoingCallReceiver.java
+++ b/src/com/android/dialer/interactions/UndemoteOutgoingCallReceiver.java
@@ -59,8 +59,7 @@
         // If the contact is not demoted, this will not do anything. Otherwise, it will
         // restore it to an unpinned position. If it was a frequently called contact, it will
         // show up once again show up on the favorites screen.
-        context.getContentResolver().call(ContactsContract.AUTHORITY_URI,
-                PinnedPositions.UNDEMOTE_METHOD, String.valueOf(id), null);
+        PinnedPositions.undemote(context.getContentResolver(), id);
     }
 
     private long getContactIdFromPhoneNumber(Context context, String number) {
diff --git a/src/com/android/dialer/list/ListsFragment.java b/src/com/android/dialer/list/ListsFragment.java
index 4f96d63..8ca66cf 100644
--- a/src/com/android/dialer/list/ListsFragment.java
+++ b/src/com/android/dialer/list/ListsFragment.java
@@ -35,6 +35,7 @@
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.widget.OverlappingPaneLayout;
 import com.android.dialer.widget.OverlappingPaneLayout.PanelSlideListener;
+import com.android.dialerbind.analytics.AnalyticsFragment;
 import com.android.dialerbind.ObjectFactory;
 
 import java.util.ArrayList;
@@ -47,7 +48,7 @@
  * ViewPager containing the lists up above the shortcut cards and pin it against the top of the
  * screen.
  */
-public class ListsFragment extends Fragment implements CallLogQueryHandler.Listener,
+public class ListsFragment extends AnalyticsFragment implements CallLogQueryHandler.Listener,
         CallLogAdapter.CallFetcher, ViewPager.OnPageChangeListener {
 
     private static final boolean DEBUG = DialtactsActivity.DEBUG;
diff --git a/src/com/android/dialer/list/SpeedDialFragment.java b/src/com/android/dialer/list/SpeedDialFragment.java
index a04d4cc..9732e19 100644
--- a/src/com/android/dialer/list/SpeedDialFragment.java
+++ b/src/com/android/dialer/list/SpeedDialFragment.java
@@ -19,7 +19,6 @@
 import android.animation.AnimatorSet;
 import android.animation.ObjectAnimator;
 import android.app.Activity;
-import android.app.Fragment;
 import android.app.LoaderManager;
 import android.content.CursorLoader;
 import android.content.Loader;
@@ -49,6 +48,7 @@
 import com.android.contacts.common.list.OnPhoneNumberPickerActionListener;
 import com.android.dialer.R;
 import com.android.dialer.util.DialerUtils;
+import com.android.dialerbind.analytics.AnalyticsFragment;
 
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -56,7 +56,7 @@
 /**
  * This fragment displays the user's favorite/frequent contacts in a grid.
  */
-public class SpeedDialFragment extends Fragment implements OnItemClickListener,
+public class SpeedDialFragment extends AnalyticsFragment implements OnItemClickListener,
         PhoneFavoritesTileAdapter.OnDataSetChangedForAnimationListener {
 
     /**
diff --git a/src/com/android/dialer/settings/DialerSettingsActivity.java b/src/com/android/dialer/settings/DialerSettingsActivity.java
index 6d21db0..8d41d77 100644
--- a/src/com/android/dialer/settings/DialerSettingsActivity.java
+++ b/src/com/android/dialer/settings/DialerSettingsActivity.java
@@ -5,7 +5,6 @@
 import android.content.Context;
 import android.content.SharedPreferences;
 import android.os.Bundle;
-import android.preference.PreferenceActivity;
 import android.preference.PreferenceManager;
 import android.preference.PreferenceActivity.Header;
 import android.text.TextUtils;
@@ -21,10 +20,11 @@
 import com.android.contacts.common.preference.DisplayOptionsPreferenceFragment;
 import com.android.dialer.DialtactsActivity;
 import com.android.dialer.R;
+import com.android.dialerbind.analytics.AnalyticsPreferenceActivity;
 
 import java.util.List;
 
-public class DialerSettingsActivity extends PreferenceActivity {
+public class DialerSettingsActivity extends AnalyticsPreferenceActivity {
 
     protected SharedPreferences mPreferences;
     private HeaderAdapter mHeaderAdapter;
diff --git a/src/com/android/dialer/voicemail/VoicemailPlaybackFragment.java b/src/com/android/dialer/voicemail/VoicemailPlaybackFragment.java
index 33ae5c8..133a988 100644
--- a/src/com/android/dialer/voicemail/VoicemailPlaybackFragment.java
+++ b/src/com/android/dialer/voicemail/VoicemailPlaybackFragment.java
@@ -20,7 +20,6 @@
 import static com.android.dialer.CallDetailActivity.EXTRA_VOICEMAIL_URI;
 
 import android.app.Activity;
-import android.app.Fragment;
 import android.content.ContentResolver;
 import android.content.Context;
 import android.content.Intent;
@@ -43,6 +42,7 @@
 import com.android.dialer.ProximitySensorAware;
 import com.android.dialer.R;
 import com.android.dialer.util.AsyncTaskExecutors;
+import com.android.dialerbind.analytics.AnalyticsFragment;
 import com.android.ex.variablespeed.MediaPlayerProxy;
 import com.android.ex.variablespeed.VariableSpeed;
 import com.google.common.base.Preconditions;
@@ -66,7 +66,7 @@
  * methods on this class are expected to come from the main ui thread.
  */
 @NotThreadSafe
-public class VoicemailPlaybackFragment extends Fragment {
+public class VoicemailPlaybackFragment extends AnalyticsFragment {
     private static final String TAG = "VoicemailPlayback";
     private static final int NUMBER_OF_THREADS_IN_POOL = 2;
     private static final String[] HAS_CONTENT_PROJECTION = new String[] {
