diff --git a/res/drawable/ic_voicemail_delete.xml b/res/drawable/ic_calllog_delete.xml
similarity index 100%
rename from res/drawable/ic_voicemail_delete.xml
rename to res/drawable/ic_calllog_delete.xml
diff --git a/res/layout/phone_favorites_fragment.xml b/res/layout/speeddial_fragment.xml
similarity index 96%
rename from res/layout/phone_favorites_fragment.xml
rename to res/layout/speeddial_fragment.xml
index 0b657df..e8587fa 100644
--- a/res/layout/phone_favorites_fragment.xml
+++ b/res/layout/speeddial_fragment.xml
@@ -40,6 +40,7 @@
             android:clipToPadding="false"
             android:fadingEdge="none"
             android:divider="@null"
+            android:paddingBottom="@dimen/floating_action_button_height"
             android:nestedScrollingEnabled="true" />
     </FrameLayout>
 
diff --git a/res/menu/call_details_options.xml b/res/menu/call_details_options.xml
index c1daa6f..a48687e 100644
--- a/res/menu/call_details_options.xml
+++ b/res/menu/call_details_options.xml
@@ -16,13 +16,15 @@
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
     <item
         android:id="@+id/menu_trash"
-        android:icon="@drawable/ic_voicemail_delete"
+        android:icon="@drawable/ic_calllog_delete"
         android:showAsAction="ifRoom"
         android:title="@string/recentCalls_trashVoicemail"
         android:onClick="onMenuTrashVoicemail"
     />
     <item
         android:id="@+id/menu_remove_from_call_log"
+        android:icon="@drawable/ic_calllog_delete"
+        android:showAsAction="ifRoom"
         android:title="@string/recentCalls_removeFromRecentList"
         android:onClick="onMenuRemoveFromCallLog"
     />
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 1e2958f..2d3fd17 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -70,18 +70,6 @@
     <!-- Text color for no favorites message -->
     <color name="nofavorite_text_color">#777777</color>
 
-    <!-- Background color of wifi highlight items -->
-    <color name="background_wifi_highlight">#99cc00</color>
-
-    <!-- Foreground color of wifi highlight items -->
-    <color name="foreground_wifi_highlight">#ffffff</color>
-
-    <!-- Dark (e.g. border) regions of wifi highlight items -->
-    <color name="wifi_dark_wifi_highlight">#009900</color>
-
-    <!-- Generic separator color for wifi list items -->
-    <color name="wifi_list_separator">#909090</color>
-
     <!-- Text color for the "Remove" text in its regular state -->
     <color name="remove_text_color">#555555</color>
 
diff --git a/res/values/strings.xml b/res/values/strings.xml
index db41d31..26ff1a7 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -613,28 +613,6 @@
     <!-- Remove button that shows up when contact is long-pressed. [CHAR LIMIT=NONE] -->
     <string name="remove_contact">Remove</string>
 
-    <string name="wifi_no_signal_no_problem">No Signal? No Problem.</string>
-
-    <string name="wifi_enable_google_wifi_calling">Enable Google Wi-Fi Calling</string>
-
-    <string name="wifi_when_connected_to_a_signal">When connected to a strong Wi-Fi signal:</string>
-
-    <string name="wifi_always_use_wifi">Always use Wi-Fi to make calls</string>
-
-    <string name="wifi_ask_use_wifi">Always ask</string>
-
-    <string name="wifi_never_use_wifi">Never use Wi-Fi to make calls</string>
-
-    <string name="wifi_next_setup_screen">Next</string>
-
-    <string name="wifi_previous_setup_screen">Back</string>
-
-    <string name="wifi_setup_completed">Boom. Wi-Fi calling is all set up. You can change your preferences or turn it off anytime in settings.</string>
-
-    <string name="wifi_setup_ok">Ok, got it</string>
-
-    <string name="wifi_setup_settings_shortcut">Call settings</string>
-
     <!-- Header text displayed on the main dialer screen above the list of favorite phone numbers.
          [CHAR LIMIT=21] -->
     <string name="favorites_menu_speed_dial">Speed Dial</string>
diff --git a/src/com/android/dialer/list/SpeedDialFragment.java b/src/com/android/dialer/list/SpeedDialFragment.java
index 478327c..6e86a3e 100644
--- a/src/com/android/dialer/list/SpeedDialFragment.java
+++ b/src/com/android/dialer/list/SpeedDialFragment.java
@@ -195,7 +195,7 @@
     @Override
     public View onCreateView(LayoutInflater inflater, ViewGroup container,
             Bundle savedInstanceState) {
-        mParentView = inflater.inflate(R.layout.phone_favorites_fragment, container, false);
+        mParentView = inflater.inflate(R.layout.speeddial_fragment, container, false);
 
         mListView = (PhoneFavoriteListView) mParentView.findViewById(R.id.contact_tile_list);
         mListView.setOnItemClickListener(this);
