Changing icon on the "collapse" button in contact name editor

Bug: 2370412
Change-Id: Ia92c7eeb5038d34be458a5e5489dc9924a191271
diff --git a/res/drawable-hdpi-finger/ic_btn_round_less.png b/res/drawable-hdpi-finger/ic_btn_round_less.png
new file mode 100644
index 0000000..819440e
--- /dev/null
+++ b/res/drawable-hdpi-finger/ic_btn_round_less.png
Binary files differ
diff --git a/res/drawable-mdpi-finger/ic_btn_round_less.png b/res/drawable-mdpi-finger/ic_btn_round_less.png
new file mode 100644
index 0000000..a9b5bed
--- /dev/null
+++ b/res/drawable-mdpi-finger/ic_btn_round_less.png
Binary files differ
diff --git a/res/layout/item_generic_editor.xml b/res/layout/item_generic_editor.xml
index 01fa980..e672eba 100644
--- a/res/layout/item_generic_editor.xml
+++ b/res/layout/item_generic_editor.xml
@@ -56,4 +56,13 @@
         android:visibility="gone"
         style="@style/MoreButton" />
 
+    <ImageButton
+        android:id="@+id/edit_less"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_alignParentRight="true"
+        android:layout_alignBottom="@id/edit_fields"
+        android:visibility="gone"
+        style="@style/LessButton" />
+
 </com.android.contacts.ui.widget.GenericEditorView>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index 8c5ae35..a731443 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -35,6 +35,11 @@
         <item name="android:src">@drawable/ic_btn_round_more</item>
     </style>
 
+    <style name="LessButton">
+        <item name="android:background">@drawable/btn_circle</item>
+        <item name="android:src">@drawable/ic_btn_round_less</item>
+    </style>
+
     <style name="TallTitleBarTheme" parent="android:Theme.NoTitleBar">
         <item name="android:windowContentOverlay">@null</item>
     </style>
diff --git a/src/com/android/contacts/ui/widget/GenericEditorView.java b/src/com/android/contacts/ui/widget/GenericEditorView.java
index 97183e2..40ed5cd 100644
--- a/src/com/android/contacts/ui/widget/GenericEditorView.java
+++ b/src/com/android/contacts/ui/widget/GenericEditorView.java
@@ -70,6 +70,7 @@
     protected ViewGroup mFields;
     protected View mDelete;
     protected View mMore;
+    protected View mLess;
 
     protected DataKind mKind;
     protected ValuesDelta mEntry;
@@ -108,6 +109,9 @@
 
         mMore = findViewById(R.id.edit_more);
         mMore.setOnClickListener(this);
+
+        mLess = findViewById(R.id.edit_less);
+        mLess.setOnClickListener(this);
     }
 
     protected EditorListener mListener;
@@ -129,6 +133,7 @@
             v.setEnabled(enabled);
         }
         mMore.setEnabled(enabled);
+        mLess.setEnabled(enabled);
     }
 
     /**
@@ -248,8 +253,15 @@
         }
 
         // When hiding fields, place expandable
-        mMore.setVisibility(hidePossible ? View.VISIBLE : View.GONE);
+        if (hidePossible) {
+            mMore.setVisibility(mHideOptional ? View.VISIBLE : View.GONE);
+            mLess.setVisibility(mHideOptional ? View.GONE : View.VISIBLE);
+        } else {
+            mMore.setVisibility(View.GONE);
+            mLess.setVisibility(View.GONE);
+        }
         mMore.setEnabled(enabled);
+        mLess.setEnabled(enabled);
     }
 
     /**
@@ -365,7 +377,8 @@
                 }
                 break;
             }
-            case R.id.edit_more: {
+            case R.id.edit_more:
+            case R.id.edit_less: {
                 mHideOptional = !mHideOptional;
                 rebuildValues();
                 break;