diff --git a/res/drawable-hdpi/type_selector_background.9.png b/res/drawable-hdpi/type_selector_background.9.png
deleted file mode 100644
index f4e1753..0000000
--- a/res/drawable-hdpi/type_selector_background.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/type_selector_background.9.png b/res/drawable-mdpi/type_selector_background.9.png
deleted file mode 100644
index 7f4f3fe..0000000
--- a/res/drawable-mdpi/type_selector_background.9.png
+++ /dev/null
Binary files differ
diff --git a/res/layout-xlarge/contact_browser.xml b/res/layout-xlarge/contact_browser.xml
index 6688b56..39828c6 100644
--- a/res/layout-xlarge/contact_browser.xml
+++ b/res/layout-xlarge/contact_browser.xml
@@ -38,7 +38,7 @@
         android:id="@+id/detail_container"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:paddingBottom="11dip"
+        android:paddingBottom="6dip"
         ex:layout_narrowParentWidth="800dip"
         ex:layout_narrowRightMargin="0dip"
         ex:layout_wideParentWidth="1280dip"
diff --git a/res/layout-xlarge/contact_detail_fragment.xml b/res/layout-xlarge/contact_detail_fragment.xml
index 8a3e003..33ee3fa 100644
--- a/res/layout-xlarge/contact_detail_fragment.xml
+++ b/res/layout-xlarge/contact_detail_fragment.xml
@@ -88,6 +88,6 @@
         android:visibility="gone"
         android:layout_gravity="right"
         android:layout_marginRight="40dip"
-        android:layout_marginTop="20dip"
-        android:layout_marginBottom="20dip" />
+        android:layout_marginTop="10dip"
+        android:layout_marginBottom="10dip" />
 </LinearLayout>
\ No newline at end of file
diff --git a/res/layout-xlarge/item_group_membership.xml b/res/layout-xlarge/item_group_membership.xml
index 70068d7..c61cc93 100644
--- a/res/layout-xlarge/item_group_membership.xml
+++ b/res/layout-xlarge/item_group_membership.xml
@@ -42,4 +42,26 @@
         android:gravity="left"
         android:ellipsize="end"
     />
+
+    <!-- Plus/Minus button only for layout. This makes the editor lay out nicely with the other fields -->
+    <ImageButton
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingLeft="@dimen/editor_round_button_padding_left"
+        android:paddingRight="@dimen/editor_round_button_padding_right"
+        android:paddingTop="@dimen/editor_round_button_padding_top"
+        android:paddingBottom="@dimen/editor_round_button_padding_bottom"
+        android:src="@drawable/btn_plus"
+        android:background="@null"
+        android:visibility="invisible" />
+    <ImageButton
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingLeft="@dimen/editor_round_button_padding_left"
+        android:paddingRight="@dimen/editor_round_button_padding_right"
+        android:paddingTop="@dimen/editor_round_button_padding_top"
+        android:paddingBottom="@dimen/editor_round_button_padding_bottom"
+        android:src="@drawable/btn_minus"
+        android:background="@null"
+        android:visibility="invisible" />
 </com.android.contacts.views.editor.GroupMembershipView>
diff --git a/res/layout-xlarge/item_contact_editor.xml b/res/layout-xlarge/raw_contact_editor_view.xml
similarity index 88%
rename from res/layout-xlarge/item_contact_editor.xml
rename to res/layout-xlarge/raw_contact_editor_view.xml
index 93da517..a0b7c00 100644
--- a/res/layout-xlarge/item_contact_editor.xml
+++ b/res/layout-xlarge/raw_contact_editor_view.xml
@@ -147,20 +147,31 @@
                 />
             </LinearLayout>
         </com.android.contacts.widget.InterpolatingLayout>
+
+        <com.android.contacts.widget.InterpolatingLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="10dip"
+            android:layout_marginBottom="10dip">>
+            <Button
+                android:id="@+id/button_add_field"
+                android:text="@string/add_field"
+                ex:layout_wideParentWidth="960dip"
+                ex:layout_wideLeftMargin="240dip"
+                ex:layout_wideRightMargin="190dip"
+                ex:layout_narrowParentWidth="800dip"
+                ex:layout_narrowLeftMargin="160dip"
+                ex:layout_narrowRightMargin="102dip"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+            />
+        </com.android.contacts.widget.InterpolatingLayout>
+
         <View
             android:layout_width="match_parent"
             android:layout_height="1px"
             android:layout_alignParentBottom="true"
             android:background="?android:attr/listDivider"
         />
-
-        <Button
-            android:id="@+id/button_add_field"
-            android:text="@string/add_field"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_gravity="right"
-            android:layout_marginTop="10dip"
-        />
     </LinearLayout>
 </com.android.contacts.views.editor.RawContactEditorView>
diff --git a/res/layout/item_contact_editor.xml b/res/layout/raw_contact_editor_view.xml
similarity index 100%
rename from res/layout/item_contact_editor.xml
rename to res/layout/raw_contact_editor_view.xml
diff --git a/res/layout/item_read_only_contact_editor.xml b/res/layout/read_only_raw_contact_editor_view.xml
similarity index 100%
rename from res/layout/item_read_only_contact_editor.xml
rename to res/layout/read_only_raw_contact_editor_view.xml
diff --git a/res/values/strings.xml b/res/values/strings.xml
index aa1c91b..8f0ffea 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1260,8 +1260,8 @@
     <!-- The text displayed when the contacts list is empty while displaying only selected contacts in multiple picker -->
     <string name="no_contacts_selected">"No contacts selected."</string>
 
-    <!-- The add field button shown in the editor under each editable Raw Contact -->
-    <string name="add_field">Add information</string>
+    <!-- The add field button shown in the editor under each editable Raw Contact [CHAR LIMIT=30] -->
+    <string name="add_field">Add another field</string>
 
     <!-- Attbution of a contact status update, when the time of update is unknown -->
     <string name="contact_status_update_attribution">via <xliff:g id="source" example="Google Talk">%1$s</xliff:g></string>
diff --git a/src/com/android/contacts/views/editor/ContactEditorFragment.java b/src/com/android/contacts/views/editor/ContactEditorFragment.java
index 54c7452..dc622b1 100644
--- a/src/com/android/contacts/views/editor/ContactEditorFragment.java
+++ b/src/com/android/contacts/views/editor/ContactEditorFragment.java
@@ -465,11 +465,11 @@
 
             final BaseRawContactEditorView editor;
             if (!source.readOnly) {
-                editor = (BaseRawContactEditorView) inflater.inflate(R.layout.item_contact_editor,
-                        mContent, false);
+                editor = (BaseRawContactEditorView)
+                        inflater.inflate(R.layout.raw_contact_editor_view, mContent, false);
             } else {
                 editor = (BaseRawContactEditorView) inflater.inflate(
-                        R.layout.item_read_only_contact_editor, mContent, false);
+                        R.layout.read_only_raw_contact_editor_view, mContent, false);
             }
             final PhotoEditorView photoEditor = editor.getPhotoEditor();
             final boolean sourceReadOnly = source.readOnly;
diff --git a/src/com/android/contacts/views/editor/KindSectionView.java b/src/com/android/contacts/views/editor/KindSectionView.java
index 7aaefdd..da6fbe0 100644
--- a/src/com/android/contacts/views/editor/KindSectionView.java
+++ b/src/com/android/contacts/views/editor/KindSectionView.java
@@ -44,6 +44,7 @@
     private ViewGroup mEditors;
     private ImageButton mAddPlusButton;
     private TextView mTitle;
+    private String mTitleString;
 
     private DataKind mKind;
     private EntityDelta mState;
@@ -97,10 +98,10 @@
         setId(mViewIdGenerator.getId(state, kind, null, ViewIdGenerator.NO_VIEW_INDEX));
 
         // TODO: handle resources from remote packages
-        final String title = (kind.titleRes == -1 || kind.titleRes == 0)
-                ? null
+        mTitleString = (kind.titleRes == -1 || kind.titleRes == 0)
+                ? ""
                 : getResources().getString(kind.titleRes);
-        mTitle.setText(title == null ? "" : title.toUpperCase());
+        mTitle.setText(mTitleString.toUpperCase());
 
         // Only show the add button if this is a list
         mAddPlusButton.setVisibility(mKind.isList ? View.VISIBLE : View.INVISIBLE);
@@ -110,8 +111,8 @@
         updateVisible();
     }
 
-    public CharSequence getTitle() {
-        return mTitle.getText();
+    public String getTitle() {
+        return mTitleString;
     }
 
     /**
diff --git a/src/com/android/contacts/views/editor/LabeledEditorView.java b/src/com/android/contacts/views/editor/LabeledEditorView.java
index 3b9312f..448bd89 100644
--- a/src/com/android/contacts/views/editor/LabeledEditorView.java
+++ b/src/com/android/contacts/views/editor/LabeledEditorView.java
@@ -134,8 +134,7 @@
      */
     private void setupLabelButton(boolean shouldExist) {
         if (shouldExist && mLabel == null) {
-            mLabel = new Button(mContext, null, android.R.attr.textAppearanceSmall);
-            mLabel.setBackgroundResource(R.drawable.type_selector_background);
+            mLabel = new Button(mContext, null, android.R.attr.dropDownSpinnerStyle);
             final int width =
                     mContext.getResources().getDimensionPixelSize(R.dimen.editor_type_label_width);
             mLabel.setLayoutParams(new LayoutParams(width, LayoutParams.WRAP_CONTENT));
