diff --git a/java/com/android/contacts/common/dialog/CallSubjectDialog.java b/java/com/android/contacts/common/dialog/CallSubjectDialog.java
index bbf31e8..bf0ac14 100644
--- a/java/com/android/contacts/common/dialog/CallSubjectDialog.java
+++ b/java/com/android/contacts/common/dialog/CallSubjectDialog.java
@@ -41,12 +41,12 @@
 import android.widget.ListView;
 import android.widget.QuickContactBadge;
 import android.widget.TextView;
-import com.android.contacts.common.R;
 import com.android.dialer.animation.AnimUtils;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.contactphoto.ContactPhotoManager;
+import com.android.dialer.contacts.resources.R;
 import com.android.dialer.lettertile.LetterTileDrawable;
 import com.android.dialer.precall.PreCall;
 import com.android.dialer.util.ViewUtil;
diff --git a/java/com/android/contacts/common/dialog/ClearFrequentsDialog.java b/java/com/android/contacts/common/dialog/ClearFrequentsDialog.java
index 751490a..cd9511c 100644
--- a/java/com/android/contacts/common/dialog/ClearFrequentsDialog.java
+++ b/java/com/android/contacts/common/dialog/ClearFrequentsDialog.java
@@ -28,7 +28,7 @@
 import android.os.AsyncTask;
 import android.os.Bundle;
 import android.provider.ContactsContract;
-import com.android.contacts.common.R;
+import com.android.dialer.contacts.resources.R;
 import com.android.dialer.util.PermissionsUtil;
 
 /** Dialog that clears the frequently contacted list after confirming with the user. */
diff --git a/java/com/android/contacts/common/list/ContactTileView.java b/java/com/android/contacts/common/list/ContactTileView.java
index 072e07d..732cee7 100644
--- a/java/com/android/contacts/common/list/ContactTileView.java
+++ b/java/com/android/contacts/common/list/ContactTileView.java
@@ -23,12 +23,12 @@
 import android.widget.FrameLayout;
 import android.widget.ImageView;
 import com.android.contacts.common.MoreContactUtils;
-import com.android.contacts.common.R;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.contactphoto.ContactPhotoManager;
 import com.android.dialer.contactphoto.ContactPhotoManager.DefaultImageRequest;
+import com.android.dialer.contacts.resources.R;
 import com.android.dialer.widget.BidiTextView;
 
 /** A ContactTile displays a contact's picture and name */
diff --git a/java/com/android/contacts/common/list/ViewPagerTabStrip.java b/java/com/android/contacts/common/list/ViewPagerTabStrip.java
index 88c0369..7a9e506 100644
--- a/java/com/android/contacts/common/list/ViewPagerTabStrip.java
+++ b/java/com/android/contacts/common/list/ViewPagerTabStrip.java
@@ -23,7 +23,7 @@
 import android.util.AttributeSet;
 import android.view.View;
 import android.widget.LinearLayout;
-import com.android.contacts.common.R;
+import com.android.dialer.contacts.resources.R;
 import com.android.dialer.theme.base.ThemeComponent;
 
 public class ViewPagerTabStrip extends LinearLayout {
diff --git a/java/com/android/contacts/common/list/ViewPagerTabs.java b/java/com/android/contacts/common/list/ViewPagerTabs.java
index f48fd29..b3242ee 100644
--- a/java/com/android/contacts/common/list/ViewPagerTabs.java
+++ b/java/com/android/contacts/common/list/ViewPagerTabs.java
@@ -32,7 +32,7 @@
 import android.widget.LinearLayout;
 import android.widget.TextView;
 import android.widget.Toast;
-import com.android.contacts.common.R;
+import com.android.dialer.contacts.resources.R;
 
 /**
  * Lightweight implementation of ViewPager tabs. This looks similar to traditional actionBar tabs,
diff --git a/java/com/android/contacts/common/model/account/AccountType.java b/java/com/android/contacts/common/model/account/AccountType.java
index ed0d421..499286a 100644
--- a/java/com/android/contacts/common/model/account/AccountType.java
+++ b/java/com/android/contacts/common/model/account/AccountType.java
@@ -29,8 +29,8 @@
 import android.util.ArrayMap;
 import android.view.inputmethod.EditorInfo;
 import android.widget.EditText;
-import com.android.contacts.common.R;
 import com.android.contacts.common.model.dataitem.DataKind;
+import com.android.dialer.contacts.resources.R;
 import java.text.Collator;
 import java.util.ArrayList;
 import java.util.Collections;
diff --git a/java/com/android/contacts/common/model/account/BaseAccountType.java b/java/com/android/contacts/common/model/account/BaseAccountType.java
index ccdad36..2911975 100644
--- a/java/com/android/contacts/common/model/account/BaseAccountType.java
+++ b/java/com/android/contacts/common/model/account/BaseAccountType.java
@@ -37,11 +37,11 @@
 import android.util.ArrayMap;
 import android.util.AttributeSet;
 import android.view.inputmethod.EditorInfo;
-import com.android.contacts.common.R;
 import com.android.contacts.common.model.dataitem.DataKind;
 import com.android.contacts.common.util.CommonDateUtils;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.contacts.resources.R;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
diff --git a/java/com/android/contacts/common/model/account/ExchangeAccountType.java b/java/com/android/contacts/common/model/account/ExchangeAccountType.java
index a27028e..0a95e7e 100644
--- a/java/com/android/contacts/common/model/account/ExchangeAccountType.java
+++ b/java/com/android/contacts/common/model/account/ExchangeAccountType.java
@@ -29,10 +29,10 @@
 import android.provider.ContactsContract.CommonDataKinds.StructuredName;
 import android.provider.ContactsContract.CommonDataKinds.StructuredPostal;
 import android.provider.ContactsContract.CommonDataKinds.Website;
-import android.util.Log;
-import com.android.contacts.common.R;
 import com.android.contacts.common.model.dataitem.DataKind;
 import com.android.contacts.common.util.CommonDateUtils;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.contacts.resources.R;
 import java.util.ArrayList;
 import java.util.Locale;
 
@@ -67,7 +67,7 @@
 
       mIsInitialized = true;
     } catch (DefinitionException e) {
-      Log.e(TAG, "Problem building account type", e);
+      LogUtil.e(TAG, "Problem building account type", e);
     }
   }
 
diff --git a/java/com/android/contacts/common/model/account/ExternalAccountType.java b/java/com/android/contacts/common/model/account/ExternalAccountType.java
index aca1f70..618def7 100644
--- a/java/com/android/contacts/common/model/account/ExternalAccountType.java
+++ b/java/com/android/contacts/common/model/account/ExternalAccountType.java
@@ -30,10 +30,10 @@
 import android.support.annotation.VisibleForTesting;
 import android.text.TextUtils;
 import android.util.AttributeSet;
-import android.util.Log;
 import android.util.Xml;
-import com.android.contacts.common.R;
 import com.android.contacts.common.model.dataitem.DataKind;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.contacts.resources.R;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
@@ -152,7 +152,7 @@
       error.append(" for external package ");
       error.append(packageName);
 
-      Log.e(TAG, error.toString(), e);
+      LogUtil.e(TAG, error.toString(), e);
       return;
     } finally {
       if (parser != null) {
@@ -210,13 +210,11 @@
         for (String metadataName : METADATA_CONTACTS_NAMES) {
           final XmlResourceParser parser = serviceInfo.loadXmlMetaData(pm, metadataName);
           if (parser != null) {
-            if (Log.isLoggable(TAG, Log.DEBUG)) {
-              Log.d(
-                  TAG,
-                  String.format(
-                      "Metadata loaded from: %s, %s, %s",
-                      serviceInfo.packageName, serviceInfo.name, metadataName));
-            }
+            LogUtil.d(
+                TAG,
+                String.format(
+                    "Metadata loaded from: %s, %s, %s",
+                    serviceInfo.packageName, serviceInfo.name, metadataName));
             return parser;
           }
         }
@@ -250,7 +248,7 @@
       return -1; // Empty text is okay.
     }
     if (resourceName.charAt(0) != '@') {
-      Log.e(TAG, xmlAttributeName + " must be a resource name beginnig with '@'");
+      LogUtil.e(TAG, xmlAttributeName + " must be a resource name beginnig with '@'");
       return -1;
     }
     final String name = resourceName.substring(1);
@@ -258,12 +256,12 @@
     try {
       res = context.getPackageManager().getResourcesForApplication(packageName);
     } catch (NameNotFoundException e) {
-      Log.e(TAG, "Unable to load package " + packageName);
+      LogUtil.e(TAG, "Unable to load package " + packageName);
       return -1;
     }
     final int resId = res.getIdentifier(name, null, packageName);
     if (resId == 0) {
-      Log.e(TAG, "Unable to load " + resourceName + " from package " + packageName);
+      LogUtil.e(TAG, "Unable to load " + resourceName + " from package " + packageName);
       return -1;
     }
     return resId;
@@ -366,9 +364,7 @@
       for (int i = 0; i < attributeCount; i++) {
         String attr = parser.getAttributeName(i);
         String value = parser.getAttributeValue(i);
-        if (Log.isLoggable(TAG, Log.DEBUG)) {
-          Log.d(TAG, attr + "=" + value);
-        }
+        LogUtil.d(TAG, attr + "=" + value);
         if (ATTR_EDIT_CONTACT_ACTIVITY.equals(attr)) {
           mEditContactActivityClassName = value;
         } else if (ATTR_CREATE_CONTACT_ACTIVITY.equals(attr)) {
@@ -394,7 +390,7 @@
         } else if (ATTR_ACCOUNT_ICON.equals(attr)) {
           mAccountTypeIconAttribute = value;
         } else {
-          Log.e(TAG, "Unsupported attribute " + attr);
+          LogUtil.e(TAG, "Unsupported attribute " + attr);
         }
       }
 
diff --git a/java/com/android/contacts/common/model/account/FallbackAccountType.java b/java/com/android/contacts/common/model/account/FallbackAccountType.java
index 976a7b8..ee3a757 100644
--- a/java/com/android/contacts/common/model/account/FallbackAccountType.java
+++ b/java/com/android/contacts/common/model/account/FallbackAccountType.java
@@ -17,9 +17,9 @@
 package com.android.contacts.common.model.account;
 
 import android.content.Context;
-import android.util.Log;
-import com.android.contacts.common.R;
 import com.android.contacts.common.model.dataitem.DataKind;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.contacts.resources.R;
 
 public class FallbackAccountType extends BaseAccountType {
 
@@ -53,7 +53,7 @@
 
       mIsInitialized = true;
     } catch (DefinitionException e) {
-      Log.e(TAG, "Problem building account type", e);
+      LogUtil.e(TAG, "Problem building account type", e);
     }
   }
 
diff --git a/java/com/android/contacts/common/model/account/GoogleAccountType.java b/java/com/android/contacts/common/model/account/GoogleAccountType.java
index 2f1fe0e..a25544b 100644
--- a/java/com/android/contacts/common/model/account/GoogleAccountType.java
+++ b/java/com/android/contacts/common/model/account/GoogleAccountType.java
@@ -22,10 +22,10 @@
 import android.provider.ContactsContract.CommonDataKinds.Event;
 import android.provider.ContactsContract.CommonDataKinds.Phone;
 import android.provider.ContactsContract.CommonDataKinds.Relation;
-import android.util.Log;
-import com.android.contacts.common.R;
 import com.android.contacts.common.model.dataitem.DataKind;
 import com.android.contacts.common.util.CommonDateUtils;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.contacts.resources.R;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
@@ -69,7 +69,7 @@
 
       mIsInitialized = true;
     } catch (DefinitionException e) {
-      Log.e(TAG, "Problem building account type", e);
+      LogUtil.e(TAG, "Problem building account type", e);
     }
   }
 
diff --git a/java/com/android/contacts/common/model/account/SamsungAccountType.java b/java/com/android/contacts/common/model/account/SamsungAccountType.java
index 45406bc..77c0575 100644
--- a/java/com/android/contacts/common/model/account/SamsungAccountType.java
+++ b/java/com/android/contacts/common/model/account/SamsungAccountType.java
@@ -23,10 +23,10 @@
 import android.provider.ContactsContract.CommonDataKinds.Phone;
 import android.provider.ContactsContract.CommonDataKinds.Relation;
 import android.provider.ContactsContract.CommonDataKinds.StructuredPostal;
-import android.util.Log;
-import com.android.contacts.common.R;
 import com.android.contacts.common.model.dataitem.DataKind;
 import com.android.contacts.common.util.CommonDateUtils;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.contacts.resources.R;
 import java.util.ArrayList;
 import java.util.Locale;
 
@@ -69,7 +69,7 @@
 
       mIsInitialized = true;
     } catch (DefinitionException e) {
-      Log.e(TAG, "Problem building account type", e);
+      LogUtil.e(TAG, "Problem building account type", e);
     }
   }
 
diff --git a/java/com/android/contacts/common/res/values-ko/donottranslate_config.xml b/java/com/android/contacts/common/res/values-ko/donottranslate_config.xml
deleted file mode 100644
index 8def554..0000000
--- a/java/com/android/contacts/common/res/values-ko/donottranslate_config.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <!-- If true, an option is shown in Display Options UI to choose a sort order -->
-  <bool name="config_sort_order_user_changeable">false</bool>
-
-  <!-- If true, the default sort order is primary (i.e. by given name) -->
-  <bool name="config_default_sort_order_primary">false</bool>
-
-  <!-- If true, an option is shown in Display Options UI to choose a name display order -->
-  <bool name="config_display_order_user_changeable">false</bool>
-
-  <!-- If true, the default sort order is primary (i.e. by given name) -->
-  <bool name="config_default_display_order_primary">false</bool>
-
-  <!-- If true, the order of name fields in the editor is primary (i.e. given name first) -->
-  <bool name="config_editor_field_order_primary">false</bool>
-</resources>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/values-zh-rCN/donottranslate_config.xml b/java/com/android/contacts/common/res/values-zh-rCN/donottranslate_config.xml
deleted file mode 100644
index 0802399..0000000
--- a/java/com/android/contacts/common/res/values-zh-rCN/donottranslate_config.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <!-- If true, an option is shown in Display Options UI to choose a sort order -->
-  <bool name="config_sort_order_user_changeable">false</bool>
-
-  <!-- If true, the default sort order is primary (i.e. by given name) -->
-  <bool name="config_default_sort_order_primary">true</bool>
-
-  <!-- If true, an option is shown in Display Options UI to choose a name display order -->
-  <bool name="config_display_order_user_changeable">false</bool>
-
-  <!-- If true, the default sort order is primary (i.e. by given name) -->
-  <bool name="config_default_display_order_primary">true</bool>
-
-  <!-- If true, the order of name fields in the editor is primary (i.e. given name first) -->
-  <bool name="config_editor_field_order_primary">false</bool>
-</resources>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/values-zh-rTW/donottranslate_config.xml b/java/com/android/contacts/common/res/values-zh-rTW/donottranslate_config.xml
deleted file mode 100644
index 0802399..0000000
--- a/java/com/android/contacts/common/res/values-zh-rTW/donottranslate_config.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <!-- If true, an option is shown in Display Options UI to choose a sort order -->
-  <bool name="config_sort_order_user_changeable">false</bool>
-
-  <!-- If true, the default sort order is primary (i.e. by given name) -->
-  <bool name="config_default_sort_order_primary">true</bool>
-
-  <!-- If true, an option is shown in Display Options UI to choose a name display order -->
-  <bool name="config_display_order_user_changeable">false</bool>
-
-  <!-- If true, the default sort order is primary (i.e. by given name) -->
-  <bool name="config_default_display_order_primary">true</bool>
-
-  <!-- If true, the order of name fields in the editor is primary (i.e. given name first) -->
-  <bool name="config_editor_field_order_primary">false</bool>
-</resources>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/util/AccountFilterUtil.java b/java/com/android/contacts/common/util/AccountFilterUtil.java
index 25f937c..4587635 100644
--- a/java/com/android/contacts/common/util/AccountFilterUtil.java
+++ b/java/com/android/contacts/common/util/AccountFilterUtil.java
@@ -19,8 +19,8 @@
 import android.content.Context;
 import android.view.View;
 import android.widget.TextView;
-import com.android.contacts.common.R;
 import com.android.contacts.common.list.ContactListFilter;
+import com.android.dialer.contacts.resources.R;
 
 /** Utility class for account filter manipulation. */
 public class AccountFilterUtil {
diff --git a/java/com/android/contacts/common/util/ContactDisplayUtils.java b/java/com/android/contacts/common/util/ContactDisplayUtils.java
index 967395a..86d20bc 100644
--- a/java/com/android/contacts/common/util/ContactDisplayUtils.java
+++ b/java/com/android/contacts/common/util/ContactDisplayUtils.java
@@ -27,8 +27,8 @@
 import android.text.TextUtils;
 import android.text.style.TtsSpan;
 import android.util.Patterns;
-import com.android.contacts.common.R;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.contacts.resources.R;
 import java.util.Objects;
 
 /** Methods for handling various contact data labels. */
diff --git a/java/com/android/contacts/common/util/ContactListViewUtils.java b/java/com/android/contacts/common/util/ContactListViewUtils.java
index 278c27d..924789b 100644
--- a/java/com/android/contacts/common/util/ContactListViewUtils.java
+++ b/java/com/android/contacts/common/util/ContactListViewUtils.java
@@ -19,7 +19,7 @@
 import android.content.res.Resources;
 import android.view.View;
 import android.widget.ListView;
-import com.android.contacts.common.R;
+import com.android.dialer.contacts.resources.R;
 import com.android.dialer.util.ViewUtil;
 
 /** Utilities for configuring ListViews with a card background. */
diff --git a/java/com/android/contacts/common/util/MaterialColorMapUtils.java b/java/com/android/contacts/common/util/MaterialColorMapUtils.java
index bd32faa..ea8c5fc 100644
--- a/java/com/android/contacts/common/util/MaterialColorMapUtils.java
+++ b/java/com/android/contacts/common/util/MaterialColorMapUtils.java
@@ -29,9 +29,10 @@
 
   public MaterialColorMapUtils(Resources resources) {
     sPrimaryColors =
-        resources.obtainTypedArray(com.android.contacts.common.R.array.letter_tile_colors);
+        resources.obtainTypedArray(com.android.dialer.lettertile.R.array.letter_tile_colors);
     sSecondaryColors =
-        resources.obtainTypedArray(com.android.contacts.common.R.array.letter_tile_colors_dark);
+        resources.obtainTypedArray(
+            com.android.dialer.contacts.resources.R.array.letter_tile_colors_dark);
   }
 
   /**
diff --git a/java/com/android/contacts/common/widget/SelectPhoneAccountDialogFragment.java b/java/com/android/contacts/common/widget/SelectPhoneAccountDialogFragment.java
index 3ee21cc..014dcf2 100644
--- a/java/com/android/contacts/common/widget/SelectPhoneAccountDialogFragment.java
+++ b/java/com/android/contacts/common/widget/SelectPhoneAccountDialogFragment.java
@@ -43,8 +43,8 @@
 import android.widget.LinearLayout;
 import android.widget.ListAdapter;
 import android.widget.TextView;
-import com.android.contacts.common.R;
 import com.android.contacts.common.compat.PhoneAccountCompat;
+import com.android.dialer.contacts.resources.R;
 import com.android.dialer.location.GeoUtil;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
 import com.android.dialer.protos.ProtoParsers;
diff --git a/java/com/android/dialer/callcomposer/CallComposerActivity.java b/java/com/android/dialer/callcomposer/CallComposerActivity.java
index 921bbba..fc5cb22 100644
--- a/java/com/android/dialer/callcomposer/CallComposerActivity.java
+++ b/java/com/android/dialer/callcomposer/CallComposerActivity.java
@@ -611,7 +611,7 @@
           TextUtils.isEmpty(contact.getNumberLabel())
               ? contact.getDisplayNumber()
               : getString(
-                  com.android.contacts.common.R.string.call_subject_type_and_number,
+                  com.android.dialer.contacts.resources.R.string.call_subject_type_and_number,
                   contact.getNumberLabel(),
                   contact.getDisplayNumber());
       numberView.setText(secondaryInfo);
diff --git a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
index 84a60c1..f678061 100644
--- a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
+++ b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
@@ -173,7 +173,7 @@
             TextUtils.isEmpty(contact.getNumberLabel())
                 ? contact.getDisplayNumber()
                 : context.getString(
-                    com.android.contacts.common.R.string.call_subject_type_and_number,
+                    com.android.dialer.contacts.resources.R.string.call_subject_type_and_number,
                     contact.getNumberLabel(),
                     contact.getDisplayNumber());
         numberView.setText(secondaryInfo);
diff --git a/java/com/android/dialer/contacts/resources/AndroidManifest.xml b/java/com/android/dialer/contacts/resources/AndroidManifest.xml
new file mode 100644
index 0000000..a1222ae
--- /dev/null
+++ b/java/com/android/dialer/contacts/resources/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2018 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<manifest  package="com.android.dialer.contacts.resources"/>
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_call_note_white_24dp.png b/java/com/android/dialer/contacts/resources/res/drawable-hdpi/ic_call_note_white_24dp.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-hdpi/ic_call_note_white_24dp.png
rename to java/com/android/dialer/contacts/resources/res/drawable-hdpi/ic_call_note_white_24dp.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_phone_attach.png b/java/com/android/dialer/contacts/resources/res/drawable-hdpi/ic_phone_attach.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-hdpi/ic_phone_attach.png
rename to java/com/android/dialer/contacts/resources/res/drawable-hdpi/ic_phone_attach.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_scroll_handle.png b/java/com/android/dialer/contacts/resources/res/drawable-hdpi/ic_scroll_handle.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-hdpi/ic_scroll_handle.png
rename to java/com/android/dialer/contacts/resources/res/drawable-hdpi/ic_scroll_handle.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/ic_call_note_white_24dp.png b/java/com/android/dialer/contacts/resources/res/drawable-mdpi/ic_call_note_white_24dp.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-mdpi/ic_call_note_white_24dp.png
rename to java/com/android/dialer/contacts/resources/res/drawable-mdpi/ic_call_note_white_24dp.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/ic_phone_attach.png b/java/com/android/dialer/contacts/resources/res/drawable-mdpi/ic_phone_attach.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-mdpi/ic_phone_attach.png
rename to java/com/android/dialer/contacts/resources/res/drawable-mdpi/ic_phone_attach.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/ic_scroll_handle.png b/java/com/android/dialer/contacts/resources/res/drawable-mdpi/ic_scroll_handle.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-mdpi/ic_scroll_handle.png
rename to java/com/android/dialer/contacts/resources/res/drawable-mdpi/ic_scroll_handle.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/ic_call_note_white_24dp.png b/java/com/android/dialer/contacts/resources/res/drawable-xhdpi/ic_call_note_white_24dp.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xhdpi/ic_call_note_white_24dp.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xhdpi/ic_call_note_white_24dp.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/ic_phone_attach.png b/java/com/android/dialer/contacts/resources/res/drawable-xhdpi/ic_phone_attach.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xhdpi/ic_phone_attach.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xhdpi/ic_phone_attach.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/ic_scroll_handle.png b/java/com/android/dialer/contacts/resources/res/drawable-xhdpi/ic_scroll_handle.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xhdpi/ic_scroll_handle.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xhdpi/ic_scroll_handle.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/ic_call_note_white_24dp.png b/java/com/android/dialer/contacts/resources/res/drawable-xxhdpi/ic_call_note_white_24dp.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xxhdpi/ic_call_note_white_24dp.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xxhdpi/ic_call_note_white_24dp.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/ic_phone_attach.png b/java/com/android/dialer/contacts/resources/res/drawable-xxhdpi/ic_phone_attach.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xxhdpi/ic_phone_attach.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xxhdpi/ic_phone_attach.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/ic_scroll_handle.png b/java/com/android/dialer/contacts/resources/res/drawable-xxhdpi/ic_scroll_handle.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xxhdpi/ic_scroll_handle.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xxhdpi/ic_scroll_handle.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxxhdpi/ic_call_note_white_24dp.png b/java/com/android/dialer/contacts/resources/res/drawable-xxxhdpi/ic_call_note_white_24dp.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xxxhdpi/ic_call_note_white_24dp.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xxxhdpi/ic_call_note_white_24dp.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxxhdpi/ic_phone_attach.png b/java/com/android/dialer/contacts/resources/res/drawable-xxxhdpi/ic_phone_attach.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xxxhdpi/ic_phone_attach.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xxxhdpi/ic_phone_attach.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxxhdpi/ic_scroll_handle.png b/java/com/android/dialer/contacts/resources/res/drawable-xxxhdpi/ic_scroll_handle.png
similarity index 100%
rename from java/com/android/contacts/common/res/drawable-xxxhdpi/ic_scroll_handle.png
rename to java/com/android/dialer/contacts/resources/res/drawable-xxxhdpi/ic_scroll_handle.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable/back_arrow.xml b/java/com/android/dialer/contacts/resources/res/drawable/back_arrow.xml
similarity index 100%
rename from java/com/android/contacts/common/res/drawable/back_arrow.xml
rename to java/com/android/dialer/contacts/resources/res/drawable/back_arrow.xml
diff --git a/java/com/android/contacts/common/res/drawable/dialog_background_material.xml b/java/com/android/dialer/contacts/resources/res/drawable/dialog_background_material.xml
similarity index 100%
rename from java/com/android/contacts/common/res/drawable/dialog_background_material.xml
rename to java/com/android/dialer/contacts/resources/res/drawable/dialog_background_material.xml
diff --git a/java/com/android/contacts/common/res/drawable/fastscroll_thumb.xml b/java/com/android/dialer/contacts/resources/res/drawable/fastscroll_thumb.xml
similarity index 100%
rename from java/com/android/contacts/common/res/drawable/fastscroll_thumb.xml
rename to java/com/android/dialer/contacts/resources/res/drawable/fastscroll_thumb.xml
diff --git a/java/com/android/contacts/common/res/drawable/ic_scroll_handle_default.xml b/java/com/android/dialer/contacts/resources/res/drawable/ic_scroll_handle_default.xml
similarity index 100%
rename from java/com/android/contacts/common/res/drawable/ic_scroll_handle_default.xml
rename to java/com/android/dialer/contacts/resources/res/drawable/ic_scroll_handle_default.xml
diff --git a/java/com/android/contacts/common/res/drawable/ic_scroll_handle_pressed.xml b/java/com/android/dialer/contacts/resources/res/drawable/ic_scroll_handle_pressed.xml
similarity index 100%
rename from java/com/android/contacts/common/res/drawable/ic_scroll_handle_pressed.xml
rename to java/com/android/dialer/contacts/resources/res/drawable/ic_scroll_handle_pressed.xml
diff --git a/java/com/android/contacts/common/res/drawable/ic_work_profile.xml b/java/com/android/dialer/contacts/resources/res/drawable/ic_work_profile.xml
similarity index 100%
rename from java/com/android/contacts/common/res/drawable/ic_work_profile.xml
rename to java/com/android/dialer/contacts/resources/res/drawable/ic_work_profile.xml
diff --git a/java/com/android/contacts/common/res/drawable/searchedittext_custom_cursor.xml b/java/com/android/dialer/contacts/resources/res/drawable/searchedittext_custom_cursor.xml
similarity index 100%
rename from java/com/android/contacts/common/res/drawable/searchedittext_custom_cursor.xml
rename to java/com/android/dialer/contacts/resources/res/drawable/searchedittext_custom_cursor.xml
diff --git a/java/com/android/contacts/common/res/drawable/unread_count_background.xml b/java/com/android/dialer/contacts/resources/res/drawable/unread_count_background.xml
similarity index 100%
rename from java/com/android/contacts/common/res/drawable/unread_count_background.xml
rename to java/com/android/dialer/contacts/resources/res/drawable/unread_count_background.xml
diff --git a/java/com/android/contacts/common/res/layout-ldrtl/unread_count_tab.xml b/java/com/android/dialer/contacts/resources/res/layout-ldrtl/unread_count_tab.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout-ldrtl/unread_count_tab.xml
rename to java/com/android/dialer/contacts/resources/res/layout-ldrtl/unread_count_tab.xml
diff --git a/java/com/android/contacts/common/res/layout/account_filter_header.xml b/java/com/android/dialer/contacts/resources/res/layout/account_filter_header.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/account_filter_header.xml
rename to java/com/android/dialer/contacts/resources/res/layout/account_filter_header.xml
diff --git a/java/com/android/contacts/common/res/layout/call_subject_history_list_item.xml b/java/com/android/dialer/contacts/resources/res/layout/call_subject_history_list_item.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/call_subject_history_list_item.xml
rename to java/com/android/dialer/contacts/resources/res/layout/call_subject_history_list_item.xml
diff --git a/java/com/android/contacts/common/res/layout/contact_detail_list_padding.xml b/java/com/android/dialer/contacts/resources/res/layout/contact_detail_list_padding.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/contact_detail_list_padding.xml
rename to java/com/android/dialer/contacts/resources/res/layout/contact_detail_list_padding.xml
diff --git a/java/com/android/contacts/common/res/layout/contact_list_card.xml b/java/com/android/dialer/contacts/resources/res/layout/contact_list_card.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/contact_list_card.xml
rename to java/com/android/dialer/contacts/resources/res/layout/contact_list_card.xml
diff --git a/java/com/android/contacts/common/res/layout/contact_list_content.xml b/java/com/android/dialer/contacts/resources/res/layout/contact_list_content.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/contact_list_content.xml
rename to java/com/android/dialer/contacts/resources/res/layout/contact_list_content.xml
diff --git a/java/com/android/contacts/common/res/layout/default_account_checkbox.xml b/java/com/android/dialer/contacts/resources/res/layout/default_account_checkbox.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/default_account_checkbox.xml
rename to java/com/android/dialer/contacts/resources/res/layout/default_account_checkbox.xml
diff --git a/java/com/android/contacts/common/res/layout/dialog_call_subject.xml b/java/com/android/dialer/contacts/resources/res/layout/dialog_call_subject.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/dialog_call_subject.xml
rename to java/com/android/dialer/contacts/resources/res/layout/dialog_call_subject.xml
diff --git a/java/com/android/contacts/common/res/layout/directory_header.xml b/java/com/android/dialer/contacts/resources/res/layout/directory_header.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/directory_header.xml
rename to java/com/android/dialer/contacts/resources/res/layout/directory_header.xml
diff --git a/java/com/android/contacts/common/res/layout/search_bar_expanded.xml b/java/com/android/dialer/contacts/resources/res/layout/search_bar_expanded.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/search_bar_expanded.xml
rename to java/com/android/dialer/contacts/resources/res/layout/search_bar_expanded.xml
diff --git a/java/com/android/contacts/common/res/layout/select_account_list_item.xml b/java/com/android/dialer/contacts/resources/res/layout/select_account_list_item.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/select_account_list_item.xml
rename to java/com/android/dialer/contacts/resources/res/layout/select_account_list_item.xml
diff --git a/java/com/android/contacts/common/res/layout/unread_count_tab.xml b/java/com/android/dialer/contacts/resources/res/layout/unread_count_tab.xml
similarity index 100%
rename from java/com/android/contacts/common/res/layout/unread_count_tab.xml
rename to java/com/android/dialer/contacts/resources/res/layout/unread_count_tab.xml
diff --git a/java/com/android/contacts/common/res/mipmap-hdpi/ic_contacts_launcher.png b/java/com/android/dialer/contacts/resources/res/mipmap-hdpi/ic_contacts_launcher.png
similarity index 100%
rename from java/com/android/contacts/common/res/mipmap-hdpi/ic_contacts_launcher.png
rename to java/com/android/dialer/contacts/resources/res/mipmap-hdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/mipmap-mdpi/ic_contacts_launcher.png b/java/com/android/dialer/contacts/resources/res/mipmap-mdpi/ic_contacts_launcher.png
similarity index 100%
rename from java/com/android/contacts/common/res/mipmap-mdpi/ic_contacts_launcher.png
rename to java/com/android/dialer/contacts/resources/res/mipmap-mdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/mipmap-xhdpi/ic_contacts_launcher.png b/java/com/android/dialer/contacts/resources/res/mipmap-xhdpi/ic_contacts_launcher.png
similarity index 100%
rename from java/com/android/contacts/common/res/mipmap-xhdpi/ic_contacts_launcher.png
rename to java/com/android/dialer/contacts/resources/res/mipmap-xhdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/mipmap-xxhdpi/ic_contacts_launcher.png b/java/com/android/dialer/contacts/resources/res/mipmap-xxhdpi/ic_contacts_launcher.png
similarity index 100%
rename from java/com/android/contacts/common/res/mipmap-xxhdpi/ic_contacts_launcher.png
rename to java/com/android/dialer/contacts/resources/res/mipmap-xxhdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/mipmap-xxxhdpi/ic_contacts_launcher.png b/java/com/android/dialer/contacts/resources/res/mipmap-xxxhdpi/ic_contacts_launcher.png
similarity index 100%
rename from java/com/android/contacts/common/res/mipmap-xxxhdpi/ic_contacts_launcher.png
rename to java/com/android/dialer/contacts/resources/res/mipmap-xxxhdpi/ic_contacts_launcher.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/values-ja/donottranslate_config.xml b/java/com/android/dialer/contacts/resources/res/values-ja/donottranslate_config.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values-ja/donottranslate_config.xml
rename to java/com/android/dialer/contacts/resources/res/values-ja/donottranslate_config.xml
diff --git a/java/com/android/dialer/contacts/resources/res/values-ko/donottranslate_config.xml b/java/com/android/dialer/contacts/resources/res/values-ko/donottranslate_config.xml
new file mode 100644
index 0000000..8a1c2bf
--- /dev/null
+++ b/java/com/android/dialer/contacts/resources/res/values-ko/donottranslate_config.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2012 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<resources>
+  <!-- If true, an option is shown in Display Options UI to choose a sort order -->
+  <bool name="config_sort_order_user_changeable">false</bool>
+
+  <!-- If true, the default sort order is primary (i.e. by given name) -->
+  <bool name="config_default_sort_order_primary">false</bool>
+
+  <!-- If true, an option is shown in Display Options UI to choose a name display order -->
+  <bool name="config_display_order_user_changeable">false</bool>
+
+  <!-- If true, the default sort order is primary (i.e. by given name) -->
+  <bool name="config_default_display_order_primary">false</bool>
+
+  <!-- If true, the order of name fields in the editor is primary (i.e. given name first) -->
+  <bool name="config_editor_field_order_primary">false</bool>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/values-land/integers.xml b/java/com/android/dialer/contacts/resources/res/values-land/integers.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values-land/integers.xml
rename to java/com/android/dialer/contacts/resources/res/values-land/integers.xml
diff --git a/java/com/android/contacts/common/res/values-sw600dp-land/integers.xml b/java/com/android/dialer/contacts/resources/res/values-sw600dp-land/integers.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values-sw600dp-land/integers.xml
rename to java/com/android/dialer/contacts/resources/res/values-sw600dp-land/integers.xml
diff --git a/java/com/android/contacts/common/res/values-sw600dp/dimens.xml b/java/com/android/dialer/contacts/resources/res/values-sw600dp/dimens.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values-sw600dp/dimens.xml
rename to java/com/android/dialer/contacts/resources/res/values-sw600dp/dimens.xml
diff --git a/java/com/android/contacts/common/res/values-sw600dp/integers.xml b/java/com/android/dialer/contacts/resources/res/values-sw600dp/integers.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values-sw600dp/integers.xml
rename to java/com/android/dialer/contacts/resources/res/values-sw600dp/integers.xml
diff --git a/java/com/android/contacts/common/res/values-sw720dp-land/integers.xml b/java/com/android/dialer/contacts/resources/res/values-sw720dp-land/integers.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values-sw720dp-land/integers.xml
rename to java/com/android/dialer/contacts/resources/res/values-sw720dp-land/integers.xml
diff --git a/java/com/android/contacts/common/res/values-sw720dp/integers.xml b/java/com/android/dialer/contacts/resources/res/values-sw720dp/integers.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values-sw720dp/integers.xml
rename to java/com/android/dialer/contacts/resources/res/values-sw720dp/integers.xml
diff --git a/java/com/android/dialer/contacts/resources/res/values-zh-rCN/donottranslate_config.xml b/java/com/android/dialer/contacts/resources/res/values-zh-rCN/donottranslate_config.xml
new file mode 100644
index 0000000..2c130ba
--- /dev/null
+++ b/java/com/android/dialer/contacts/resources/res/values-zh-rCN/donottranslate_config.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2012 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<resources>
+  <!-- If true, an option is shown in Display Options UI to choose a sort order -->
+  <bool name="config_sort_order_user_changeable">false</bool>
+
+  <!-- If true, the default sort order is primary (i.e. by given name) -->
+  <bool name="config_default_sort_order_primary">true</bool>
+
+  <!-- If true, an option is shown in Display Options UI to choose a name display order -->
+  <bool name="config_display_order_user_changeable">false</bool>
+
+  <!-- If true, the default sort order is primary (i.e. by given name) -->
+  <bool name="config_default_display_order_primary">true</bool>
+
+  <!-- If true, the order of name fields in the editor is primary (i.e. given name first) -->
+  <bool name="config_editor_field_order_primary">false</bool>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/contacts/resources/res/values-zh-rTW/donottranslate_config.xml b/java/com/android/dialer/contacts/resources/res/values-zh-rTW/donottranslate_config.xml
new file mode 100644
index 0000000..2c130ba
--- /dev/null
+++ b/java/com/android/dialer/contacts/resources/res/values-zh-rTW/donottranslate_config.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2012 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<resources>
+  <!-- If true, an option is shown in Display Options UI to choose a sort order -->
+  <bool name="config_sort_order_user_changeable">false</bool>
+
+  <!-- If true, the default sort order is primary (i.e. by given name) -->
+  <bool name="config_default_sort_order_primary">true</bool>
+
+  <!-- If true, an option is shown in Display Options UI to choose a name display order -->
+  <bool name="config_display_order_user_changeable">false</bool>
+
+  <!-- If true, the default sort order is primary (i.e. by given name) -->
+  <bool name="config_default_display_order_primary">true</bool>
+
+  <!-- If true, the order of name fields in the editor is primary (i.e. given name first) -->
+  <bool name="config_editor_field_order_primary">false</bool>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/values/animation_constants.xml b/java/com/android/dialer/contacts/resources/res/values/animation_constants.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values/animation_constants.xml
rename to java/com/android/dialer/contacts/resources/res/values/animation_constants.xml
diff --git a/java/com/android/contacts/common/res/values/attrs.xml b/java/com/android/dialer/contacts/resources/res/values/attrs.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values/attrs.xml
rename to java/com/android/dialer/contacts/resources/res/values/attrs.xml
diff --git a/java/com/android/contacts/common/res/values/colors.xml b/java/com/android/dialer/contacts/resources/res/values/colors.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values/colors.xml
rename to java/com/android/dialer/contacts/resources/res/values/colors.xml
diff --git a/java/com/android/contacts/common/res/values/dimens.xml b/java/com/android/dialer/contacts/resources/res/values/dimens.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values/dimens.xml
rename to java/com/android/dialer/contacts/resources/res/values/dimens.xml
diff --git a/java/com/android/contacts/common/res/values/donottranslate_config.xml b/java/com/android/dialer/contacts/resources/res/values/donottranslate_config.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values/donottranslate_config.xml
rename to java/com/android/dialer/contacts/resources/res/values/donottranslate_config.xml
diff --git a/java/com/android/contacts/common/res/values/ids.xml b/java/com/android/dialer/contacts/resources/res/values/ids.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values/ids.xml
rename to java/com/android/dialer/contacts/resources/res/values/ids.xml
diff --git a/java/com/android/contacts/common/res/values/integers.xml b/java/com/android/dialer/contacts/resources/res/values/integers.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values/integers.xml
rename to java/com/android/dialer/contacts/resources/res/values/integers.xml
diff --git a/java/com/android/contacts/common/res/values/strings.xml b/java/com/android/dialer/contacts/resources/res/values/strings.xml
similarity index 95%
rename from java/com/android/contacts/common/res/values/strings.xml
rename to java/com/android/dialer/contacts/resources/res/values/strings.xml
index 2011282..cf24a88 100644
--- a/java/com/android/contacts/common/res/values/strings.xml
+++ b/java/com/android/dialer/contacts/resources/res/values/strings.xml
@@ -332,6 +332,26 @@
   <!-- Displayed at the top of the contacts showing single contact. [CHAR LIMIT=64] -->
   <string name="listSingleContact">Single contact</string>
 
+  <!-- Contact preferences related strings -->
+
+  <!-- Label of the "sort by" display option -->
+  <string name="display_options_sort_list_by">Sort by</string>
+
+  <!-- An allowable value for the "sort list by" contact display option  -->
+  <string name="display_options_sort_by_given_name">First name</string>
+
+  <!-- An allowable value for the "sort list by" contact display option  -->
+  <string name="display_options_sort_by_family_name">Last name</string>
+
+  <!-- Label of the "name format" display option [CHAR LIMIT=64]-->
+  <string name="display_options_view_names_as">Name format</string>
+
+  <!-- An allowable value for the "view names as" contact display option  -->
+  <string name="display_options_view_given_name_first">First name first</string>
+
+  <!-- An allowable value for the "view names as" contact display option  -->
+  <string name="display_options_view_family_name_first">Last name first</string>
+
   <!--  The menu item to clear frequents [CHAR LIMIT=30] -->
   <string name="menu_clear_frequents">Clear frequents</string>
 
diff --git a/java/com/android/contacts/common/res/values/styles.xml b/java/com/android/dialer/contacts/resources/res/values/styles.xml
similarity index 100%
rename from java/com/android/contacts/common/res/values/styles.xml
rename to java/com/android/dialer/contacts/resources/res/values/styles.xml
diff --git a/java/com/android/dialer/contactsfragment/ContactsAdapter.java b/java/com/android/dialer/contactsfragment/ContactsAdapter.java
index 44abe29..5afd41f 100644
--- a/java/com/android/dialer/contactsfragment/ContactsAdapter.java
+++ b/java/com/android/dialer/contactsfragment/ContactsAdapter.java
@@ -128,7 +128,8 @@
             LetterTileDrawable.TYPE_DEFAULT);
 
     String photoDescription =
-        context.getString(com.android.contacts.common.R.string.description_quick_contact_for, name);
+        context.getString(
+            com.android.dialer.contactphoto.R.string.description_quick_contact_for, name);
     contactViewHolder.getPhoto().setContentDescription(photoDescription);
 
     // Always show the view holder's header if it's the first item in the list. Otherwise, compare
diff --git a/java/com/android/dialer/database/DialerDatabaseHelper.java b/java/com/android/dialer/database/DialerDatabaseHelper.java
index b1cd090..719492e 100644
--- a/java/com/android/dialer/database/DialerDatabaseHelper.java
+++ b/java/com/android/dialer/database/DialerDatabaseHelper.java
@@ -35,7 +35,6 @@
 import android.support.annotation.VisibleForTesting;
 import android.support.annotation.WorkerThread;
 import android.text.TextUtils;
-import com.android.contacts.common.R;
 import com.android.contacts.common.util.StopWatch;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.DefaultFutureCallback;
@@ -43,6 +42,7 @@
 import com.android.dialer.common.concurrent.DialerFutureSerializer;
 import com.android.dialer.common.database.Selection;
 import com.android.dialer.configprovider.ConfigProviderComponent;
+import com.android.dialer.contacts.resources.R;
 import com.android.dialer.database.FilteredNumberContract.FilteredNumberColumns;
 import com.android.dialer.smartdial.util.SmartDialNameMatcher;
 import com.android.dialer.smartdial.util.SmartDialPrefix;
diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java b/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java
index de9ce5a..11f5218 100644
--- a/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java
+++ b/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java
@@ -102,7 +102,9 @@
         TextUtils.isEmpty(label)
             ? number
             : context.getString(
-                com.android.contacts.common.R.string.call_subject_type_and_number, label, number);
+                com.android.dialer.contacts.resources.R.string.call_subject_type_and_number,
+                label,
+                number);
 
     nameOrNumberView.setText(QueryBoldingUtil.getNameWithQueryBolded(query, name, context));
     numberView.setText(QueryBoldingUtil.getNumberWithQueryBolded(query, secondaryInfo));
@@ -170,7 +172,7 @@
       case CallToAction.SHARE_AND_CALL:
         callToActionView.setVisibility(View.VISIBLE);
         callToActionView.setImageDrawable(
-            context.getDrawable(com.android.contacts.common.R.drawable.ic_phone_attach));
+            context.getDrawable(com.android.dialer.contacts.resources.R.drawable.ic_phone_attach));
         callToActionView.setContentDescription(
             context.getString(R.string.description_search_call_and_share));
         callToActionView.setOnClickListener(this);
diff --git a/packages.mk b/packages.mk
index 1be1f83..936fc3d 100644
--- a/packages.mk
+++ b/packages.mk
@@ -31,6 +31,7 @@
 	com.android.dialer.common.preference \
 	com.android.dialer.configprovider \
 	com.android.dialer.contacts.displaypreference \
+	com.android.dialer.contacts.resources \
 	com.android.dialer.contactphoto \
 	com.android.dialer.contactsfragment \
 	com.android.dialer.databasepopulator \
