Merge "Don't show Phone/SMS in QuickContacts if device can't do it"
diff --git a/res/drawable-hdpi/btn_dial_action_left_disable.9.png b/res/drawable-hdpi/btn_dial_action_left_disable.9.png
index 7ba8672..e5e78bc 100644
--- a/res/drawable-hdpi/btn_dial_action_left_disable.9.png
+++ b/res/drawable-hdpi/btn_dial_action_left_disable.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_left_disable_focused.9.png b/res/drawable-hdpi/btn_dial_action_left_disable_focused.9.png
index b4300b6..6f096e4 100644
--- a/res/drawable-hdpi/btn_dial_action_left_disable_focused.9.png
+++ b/res/drawable-hdpi/btn_dial_action_left_disable_focused.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_left_normal.9.png b/res/drawable-hdpi/btn_dial_action_left_normal.9.png
index 7ba8672..6ec12be 100644
--- a/res/drawable-hdpi/btn_dial_action_left_normal.9.png
+++ b/res/drawable-hdpi/btn_dial_action_left_normal.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_left_pressed.9.png b/res/drawable-hdpi/btn_dial_action_left_pressed.9.png
index 1dc40b7..92cb682 100644
--- a/res/drawable-hdpi/btn_dial_action_left_pressed.9.png
+++ b/res/drawable-hdpi/btn_dial_action_left_pressed.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_left_selected.9.png b/res/drawable-hdpi/btn_dial_action_left_selected.9.png
index 4f6c7cf..ba83c24 100644
--- a/res/drawable-hdpi/btn_dial_action_left_selected.9.png
+++ b/res/drawable-hdpi/btn_dial_action_left_selected.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_right_disable.9.png b/res/drawable-hdpi/btn_dial_action_right_disable.9.png
index 6e6fa30..c1c01bf 100644
--- a/res/drawable-hdpi/btn_dial_action_right_disable.9.png
+++ b/res/drawable-hdpi/btn_dial_action_right_disable.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_right_disable_focused.9.png b/res/drawable-hdpi/btn_dial_action_right_disable_focused.9.png
index 46a042f..56aa5cd 100644
--- a/res/drawable-hdpi/btn_dial_action_right_disable_focused.9.png
+++ b/res/drawable-hdpi/btn_dial_action_right_disable_focused.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_right_normal.9.png b/res/drawable-hdpi/btn_dial_action_right_normal.9.png
index 6e6fa30..f29de90 100644
--- a/res/drawable-hdpi/btn_dial_action_right_normal.9.png
+++ b/res/drawable-hdpi/btn_dial_action_right_normal.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_right_pressed.9.png b/res/drawable-hdpi/btn_dial_action_right_pressed.9.png
index d66a509..48026de 100644
--- a/res/drawable-hdpi/btn_dial_action_right_pressed.9.png
+++ b/res/drawable-hdpi/btn_dial_action_right_pressed.9.png
Binary files differ
diff --git a/res/drawable-hdpi/btn_dial_action_right_selected.9.png b/res/drawable-hdpi/btn_dial_action_right_selected.9.png
index d2ee98b..15dc704 100644
--- a/res/drawable-hdpi/btn_dial_action_right_selected.9.png
+++ b/res/drawable-hdpi/btn_dial_action_right_selected.9.png
Binary files differ
diff --git a/res/drawable-hdpi/dial_num_pound_blk.png b/res/drawable-hdpi/dial_num_pound_blk.png
index fcfc58c..ee772f1 100644
--- a/res/drawable-hdpi/dial_num_pound_blk.png
+++ b/res/drawable-hdpi/dial_num_pound_blk.png
Binary files differ
diff --git a/res/drawable-hdpi/dial_num_star_blk.png b/res/drawable-hdpi/dial_num_star_blk.png
index ddda118..28a4504 100644
--- a/res/drawable-hdpi/dial_num_star_blk.png
+++ b/res/drawable-hdpi/dial_num_star_blk.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_left_disable.9.png b/res/drawable-mdpi/btn_dial_action_left_disable.9.png
index 6ab27d8..af596d1 100644
--- a/res/drawable-mdpi/btn_dial_action_left_disable.9.png
+++ b/res/drawable-mdpi/btn_dial_action_left_disable.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_left_disable_focused.9.png b/res/drawable-mdpi/btn_dial_action_left_disable_focused.9.png
index 5bba3c4..b0188dc 100644
--- a/res/drawable-mdpi/btn_dial_action_left_disable_focused.9.png
+++ b/res/drawable-mdpi/btn_dial_action_left_disable_focused.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_left_normal.9.png b/res/drawable-mdpi/btn_dial_action_left_normal.9.png
index 6ab27d8..6f7d991 100644
--- a/res/drawable-mdpi/btn_dial_action_left_normal.9.png
+++ b/res/drawable-mdpi/btn_dial_action_left_normal.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_left_pressed.9.png b/res/drawable-mdpi/btn_dial_action_left_pressed.9.png
index 542abe7..31f9e70 100644
--- a/res/drawable-mdpi/btn_dial_action_left_pressed.9.png
+++ b/res/drawable-mdpi/btn_dial_action_left_pressed.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_left_selected.9.png b/res/drawable-mdpi/btn_dial_action_left_selected.9.png
index 34caba1..96e3aec 100644
--- a/res/drawable-mdpi/btn_dial_action_left_selected.9.png
+++ b/res/drawable-mdpi/btn_dial_action_left_selected.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_right_disable.9.png b/res/drawable-mdpi/btn_dial_action_right_disable.9.png
index 85dfff0..9bde573 100644
--- a/res/drawable-mdpi/btn_dial_action_right_disable.9.png
+++ b/res/drawable-mdpi/btn_dial_action_right_disable.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_right_disable_focused.9.png b/res/drawable-mdpi/btn_dial_action_right_disable_focused.9.png
index 1f76f0c..c2aa050 100644
--- a/res/drawable-mdpi/btn_dial_action_right_disable_focused.9.png
+++ b/res/drawable-mdpi/btn_dial_action_right_disable_focused.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_right_normal.9.png b/res/drawable-mdpi/btn_dial_action_right_normal.9.png
index 85dfff0..7d408e6 100644
--- a/res/drawable-mdpi/btn_dial_action_right_normal.9.png
+++ b/res/drawable-mdpi/btn_dial_action_right_normal.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_right_pressed.9.png b/res/drawable-mdpi/btn_dial_action_right_pressed.9.png
index 226633f..229e6ba 100644
--- a/res/drawable-mdpi/btn_dial_action_right_pressed.9.png
+++ b/res/drawable-mdpi/btn_dial_action_right_pressed.9.png
Binary files differ
diff --git a/res/drawable-mdpi/btn_dial_action_right_selected.9.png b/res/drawable-mdpi/btn_dial_action_right_selected.9.png
index 9cca52c..e11a660 100644
--- a/res/drawable-mdpi/btn_dial_action_right_selected.9.png
+++ b/res/drawable-mdpi/btn_dial_action_right_selected.9.png
Binary files differ
diff --git a/res/layout-xlarge/contact_detail_header_view.xml b/res/layout-xlarge/contact_detail_header_view.xml
index be86255..3299b34 100644
--- a/res/layout-xlarge/contact_detail_header_view.xml
+++ b/res/layout-xlarge/contact_detail_header_view.xml
@@ -22,7 +22,7 @@
     android:paddingTop="40dip"
     android:paddingRight="5dip">
 
-    <android.widget.QuickContactBadge android:id="@+id/photo"
+    <ImageView android:id="@+id/photo"
         android:layout_marginRight="8dip"
         android:layout_marginLeft="-1dip"
         android:layout_width="96dip"
diff --git a/res/layout/contact_detail_header_view.xml b/res/layout/contact_detail_header_view.xml
index b7c7988..2417e45 100644
--- a/res/layout/contact_detail_header_view.xml
+++ b/res/layout/contact_detail_header_view.xml
@@ -22,11 +22,11 @@
     android:background="@drawable/title_bar_medium"
     android:paddingRight="5dip">
 
-    <android.widget.QuickContactBadge android:id="@+id/photo"
+    <ImageView android:id="@+id/photo"
         android:layout_gravity="center_vertical"
         android:layout_marginRight="8dip"
         android:layout_marginLeft="-1dip"
-        style="@*android:style/Widget.QuickContactBadge.WindowSmall" />
+        android:src="@*android:drawable/ic_contact_picture"
     />
 
     <LinearLayout
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 47bb0a1..9b43a31 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -982,7 +982,7 @@
     <!-- Title for data source when creating or editing a contact that doesn't
          belong to a specific account.  This contact will only exist on the phone
          and will not be synced. -->
-    <string name="account_phone">Phone-only (unsynced)</string>
+    <string name="account_phone">Phone-only, unsynced</string>
 
     <!-- Action string for calling a custom phone number -->
     <string name="call_custom">Call <xliff:g id="custom">%s</xliff:g></string>
diff --git a/src/com/android/contacts/vcard/ImportProcessor.java b/src/com/android/contacts/vcard/ImportProcessor.java
index 14cba46..6a7dbe6 100644
--- a/src/com/android/contacts/vcard/ImportProcessor.java
+++ b/src/com/android/contacts/vcard/ImportProcessor.java
@@ -84,7 +84,7 @@
             mBound = false;
         }
 
-        public void sendFinisheNotification() {
+        public void sendFinishNotification() {
             try {
                 mMessenger.send(Message.obtain(null,
                         VCardService.MSG_NOTIFY_IMPORT_FINISHED,
@@ -233,7 +233,7 @@
             // Currenty we don't have an appropriate way to let users see all URIs imported.
             // Instead, we show one only when there's just one created uri.
             doFinishNotification(mCreatedUris.size() > 0 ? mCreatedUris.get(0) : null);
-            mConnection.sendFinisheNotification();
+            mConnection.sendFinishNotification();
         } finally {
             // TODO: verify this works fine.
             mReadyForRequest = false;  // Just in case.
diff --git a/src/com/android/contacts/vcard/VCardService.java b/src/com/android/contacts/vcard/VCardService.java
index b5a216e..1e855ab 100644
--- a/src/com/android/contacts/vcard/VCardService.java
+++ b/src/com/android/contacts/vcard/VCardService.java
@@ -66,7 +66,7 @@
                     } else {
                         final ImportRequest parameter = (ImportRequest)msg.obj;
 
-                        if (mImportProcessor == null) {
+                        if (mImportProcessor == null || !mImportProcessor.isReadyForRequest()) {
                             mImportProcessor = new ImportProcessor(VCardService.this);
                         } else if (mImportProcessor.isCanceled()) {
                             Log.i(LOG_TAG,
diff --git a/src/com/android/contacts/views/detail/ContactDetailFragment.java b/src/com/android/contacts/views/detail/ContactDetailFragment.java
index b456f59..ab22995 100644
--- a/src/com/android/contacts/views/detail/ContactDetailFragment.java
+++ b/src/com/android/contacts/views/detail/ContactDetailFragment.java
@@ -190,9 +190,6 @@
         mInflater = inflater;
 
         mHeaderView = (ContactDetailHeaderView) view.findViewById(R.id.contact_header_widget);
-        mHeaderView.setExcludeMimes(new String[] {
-            Contacts.CONTENT_ITEM_TYPE
-        });
         mHeaderView.setListener(mHeaderViewListener);
 
         mListView = (ListView) view.findViewById(android.R.id.list);
diff --git a/src/com/android/contacts/views/detail/ContactDetailHeaderView.java b/src/com/android/contacts/views/detail/ContactDetailHeaderView.java
index 8ac9ce7..16a2320 100644
--- a/src/com/android/contacts/views/detail/ContactDetailHeaderView.java
+++ b/src/com/android/contacts/views/detail/ContactDetailHeaderView.java
@@ -43,7 +43,6 @@
 import android.view.View;
 import android.widget.CheckBox;
 import android.widget.ImageButton;
-import android.widget.QuickContactBadge;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
 import android.widget.TextView;
@@ -60,7 +59,7 @@
     private TextView mDisplayNameView;
     private TextView mPhoneticNameView;
     private CheckBox mStarredView;
-    private QuickContactBadge mPhotoView;
+    private ImageView mPhotoView;
     private ImageView mPresenceView;
     private View mStatusContainerView;
     private TextView mStatusView;
@@ -100,7 +99,7 @@
         mStarredView = (CheckBox)findViewById(R.id.star);
         mStarredView.setOnClickListener(this);
 
-        mPhotoView = (QuickContactBadge) findViewById(R.id.photo);
+        mPhotoView = (ImageView) findViewById(R.id.photo);
 
         mPresenceView = (ImageView) findViewById(R.id.presence);
         mStatusContainerView = findViewById(R.id.status_container);
@@ -116,7 +115,6 @@
      */
     public void loadData(ContactLoader.Result contactData) {
         mContactUri = contactData.getLookupUri();
-        mPhotoView.assignContactUri(contactData.getLookupUri());
 
         setDisplayName(contactData.getDisplayName(), contactData.getPhoneticName());
         setPhoto(findPhoto(contactData));
@@ -241,15 +239,6 @@
     }
 
     /**
-     * Set a list of specific MIME-types to exclude and not display. For
-     * example, this can be used to hide the {@link Contacts#CONTENT_ITEM_TYPE}
-     * profile icon.
-     */
-    public void setExcludeMimes(String[] excludeMimes) {
-        mPhotoView.setExcludeMimes(excludeMimes);
-    }
-
-    /**
      * Set all the status values to display in the header.
      * @param status             The status of the contact. If this is either null or empty,
      *                           the status is cleared and the other parameters are ignored.