Adds redlines for QuickContact card.

- Changes background colors.
- Adds star button in the quick contact card.
- Removes the click listener on the photo.

Change-Id: I9e4f32c30c48cd0fff9d3551a780c26bce36a251
diff --git a/res/drawable-hdpi/ic_favorite_off_lt.png b/res/drawable-hdpi/ic_favorite_off_lt.png
new file mode 100644
index 0000000..54f57a6
--- /dev/null
+++ b/res/drawable-hdpi/ic_favorite_off_lt.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_favorite_on_lt.png b/res/drawable-hdpi/ic_favorite_on_lt.png
new file mode 100644
index 0000000..a3c5ed5
--- /dev/null
+++ b/res/drawable-hdpi/ic_favorite_on_lt.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_favorite_off_lt.png b/res/drawable-mdpi/ic_favorite_off_lt.png
new file mode 100644
index 0000000..ce8c460
--- /dev/null
+++ b/res/drawable-mdpi/ic_favorite_off_lt.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_favorite_on_lt.png b/res/drawable-mdpi/ic_favorite_on_lt.png
new file mode 100644
index 0000000..4a5aed3
--- /dev/null
+++ b/res/drawable-mdpi/ic_favorite_on_lt.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_favorite_off_lt.png b/res/drawable-xhdpi/ic_favorite_off_lt.png
new file mode 100644
index 0000000..1386f9d
--- /dev/null
+++ b/res/drawable-xhdpi/ic_favorite_off_lt.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_favorite_on_lt.png b/res/drawable-xhdpi/ic_favorite_on_lt.png
new file mode 100644
index 0000000..903adc0
--- /dev/null
+++ b/res/drawable-xhdpi/ic_favorite_on_lt.png
Binary files differ
diff --git a/res/layout/quickcontact_activity.xml b/res/layout/quickcontact_activity.xml
index c7917f1..36bdd50 100644
--- a/res/layout/quickcontact_activity.xml
+++ b/res/layout/quickcontact_activity.xml
@@ -51,6 +51,6 @@
             android:id="@+id/item_list_pager"
             android:layout_width="match_parent"
             android:layout_height="156dip"
-            android:background="@drawable/quickcontact_track_background"/>
+            android:background="@color/quickcontact_activity_background"/>
     </LinearLayout>
 </view>
diff --git a/res/layout/quickcontact_photo_container.xml b/res/layout/quickcontact_photo_container.xml
index 2fb372d..1ede26d 100644
--- a/res/layout/quickcontact_photo_container.xml
+++ b/res/layout/quickcontact_photo_container.xml
@@ -39,7 +39,7 @@
             android:layout_alignRight="@id/photo"
             android:layout_alignStart="@id/photo"
             android:layout_alignEnd="@id/photo"
-            android:background="#7F000000" />
+            android:background="@color/quickcontact_name_detail_background"/>
         <ImageView
             android:id="@+id/contact_details_image"
             android:src="@drawable/ic_contacts_holo_dark"
@@ -51,7 +51,20 @@
             android:layout_marginBottom="5dip"
             android:layout_alignBottom="@id/photo_text_bar"
             android:layout_alignRight="@id/photo_text_bar"
-            android:layout_alignEnd="@id/photo_text_bar" />
+            android:layout_alignEnd="@id/photo_text_bar"
+            android:clickable="true"/>
+        <ImageView
+            android:id="@+id/quickcontact_star_button"
+            android:src="@drawable/ic_favorite_off_lt"
+            android:layout_height="wrap_content"
+            android:layout_width="wrap_content"
+            android:layout_marginBottom="5dip"
+            android:layout_marginRight="16dip"
+            android:layout_marginEnd="16dip"
+            android:layout_alignBottom="@id/photo_text_bar"
+            android:layout_toLeftOf="@id/contact_details_image"
+            android:layout_toStartOf="@id/contact_details_image"
+            android:clickable="true"/>
         <TextView
             android:id="@+id/name"
             android:layout_width="wrap_content"
@@ -68,11 +81,5 @@
             android:ellipsize="end"
             android:textColor="@android:color/white"
             android:textAppearance="?android:attr/textAppearanceMedium" />
-        <ImageButton
-            android:id="@+id/open_details_push_layer"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:contentDescription="@string/viewContactDesription"
-            android:background="?android:attr/selectableItemBackground" />
     </RelativeLayout>
 </merge>
diff --git a/res/layout/quickcontact_track.xml b/res/layout/quickcontact_track.xml
index 6f50029..83a771c 100644
--- a/res/layout/quickcontact_track.xml
+++ b/res/layout/quickcontact_track.xml
@@ -20,7 +20,7 @@
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:fadingEdgeLength="0dip"
-        android:background="@drawable/quickcontact_track_background"
+        android:background="@color/quickcontact_track_background"
         android:scrollbars="none">
         <RelativeLayout
             android:layout_width="wrap_content"
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 7fc7c6e..282c89f 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -17,7 +17,10 @@
 
     <color name="quickcontact_list_divider">#ffcdcdcd</color>
     <color name="quickcontact_list_background">#ffe2e2e2</color>
-    <color name="quickcontact_tab_indicator">#ff33b5e6</color>
+    <color name="quickcontact_tab_indicator">#ffc6c6c6</color>
+    <color name="quickcontact_track_background">#fff5f5f5</color>
+    <color name="quickcontact_activity_background">#fff5f5f5</color>
+    <color name="quickcontact_name_detail_background">#66000000</color>
 
     <!-- Color of the background of the contact detail and editor pages -->
     <color name="background_primary">#FFFFFF</color>
diff --git a/src/com/android/contacts/quickcontact/QuickContactActivity.java b/src/com/android/contacts/quickcontact/QuickContactActivity.java
index f8d4405..79a71d7 100644
--- a/src/com/android/contacts/quickcontact/QuickContactActivity.java
+++ b/src/com/android/contacts/quickcontact/QuickContactActivity.java
@@ -51,12 +51,12 @@
 import android.view.ViewGroup;
 import android.view.WindowManager;
 import android.widget.HorizontalScrollView;
-import android.widget.ImageButton;
 import android.widget.ImageView;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
 import android.widget.Toast;
 
+import com.android.contacts.ContactSaveService;
 import com.android.contacts.common.Collapser;
 import com.android.contacts.R;
 import com.android.contacts.common.model.AccountTypeManager;
@@ -113,7 +113,7 @@
     private View mLineAfterTrack;
 
     private ImageView mOpenDetailsImage;
-    private ImageButton mOpenDetailsPushLayerButton;
+    private ImageView mStarImage;
     private ViewPager mListPager;
     private ViewPagerAdapter mPagerAdapter;
 
@@ -201,7 +201,7 @@
         mTrack = (ViewGroup) findViewById(R.id.track);
         mTrackScroller = (HorizontalScrollView) findViewById(R.id.track_scroller);
         mOpenDetailsImage = (ImageView) findViewById(R.id.contact_details_image);
-        mOpenDetailsPushLayerButton = (ImageButton) findViewById(R.id.open_details_push_layer);
+        mStarImage = (ImageView) findViewById(R.id.quickcontact_star_button);
         mListPager = (ViewPager) findViewById(R.id.item_list_pager);
         mSelectedTabRectangle = findViewById(R.id.selected_tab_rectangle);
         mLineAfterTrack = findViewById(R.id.line_after_track);
@@ -224,7 +224,8 @@
                 close(false);
             }
         };
-        mOpenDetailsPushLayerButton.setOnClickListener(openDetailsClickHandler);
+        mOpenDetailsImage.setOnClickListener(openDetailsClickHandler);
+
         mPagerAdapter = new ViewPagerAdapter(getFragmentManager());
         mListPager.setAdapter(mPagerAdapter);
         mListPager.setOnPageChangeListener(new PageChangeListener());
@@ -339,6 +340,33 @@
 
         mOpenDetailsImage.setVisibility(isMimeExcluded(Contacts.CONTENT_ITEM_TYPE) ? View.GONE
                 : View.VISIBLE);
+        final boolean isStarred = data.getStarred();
+        if (isStarred) {
+            mStarImage.setImageResource(R.drawable.ic_favorite_on_lt);
+        } else {
+            mStarImage.setImageResource(R.drawable.ic_favorite_off_lt);
+        }
+        final Uri lookupUri = data.getLookupUri();
+        mStarImage.setOnClickListener(new OnClickListener() {
+            @Override
+            public void onClick(View view) {
+                // Toggle "starred" state
+                // Make sure there is a contact
+                if (lookupUri != null) {
+                    // Changes the state of the image already before sending updates to the database
+                    if (isStarred) {
+                        mStarImage.setImageResource(R.drawable.ic_favorite_off_lt);
+                    } else {
+                        mStarImage.setImageResource(R.drawable.ic_favorite_on_lt);
+                    }
+
+                    // Now perform the real save
+                    final Intent intent = ContactSaveService.createSetStarredIntent(context,
+                            lookupUri, !isStarred);
+                    context.startService(intent);
+                }
+            }
+        });
 
         mDefaultsMap.clear();