Pixel perfect for tablet contact editor
- Remove a bunch of files because now the tablet should
look like the phone layout
- Fix padding / margins
- Don't allow phonetic name to be deletable (it would
just clear the field) so that the structured name
and phonetic name now line up (UX decision)
- Make text in editable fields centered by
setting a specific height on the edit text field
if it's not multi-line text
Bug: 5096927
Change-Id: If5d27752d79680cd40316428c7aa9ec30af6e320
diff --git a/res/layout-sw580dp-w1000dp/contact_editor_activity.xml b/res/layout-sw580dp-w1000dp/contact_editor_activity.xml
new file mode 100644
index 0000000..d2e0d22
--- /dev/null
+++ b/res/layout-sw580dp-w1000dp/contact_editor_activity.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 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.
+-->
+
+<ScrollView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:fillViewport="true">
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="horizontal">
+
+ <!-- Empty view to represent the left margin -->
+ <View
+ android:layout_height="match_parent"
+ android:layout_width="0dip"
+ android:layout_weight="2" />
+
+ <fragment class="com.android.contacts.editor.ContactEditorFragment"
+ android:id="@+id/contact_editor_fragment"
+ android:layout_width="0dip"
+ android:layout_weight="6"
+ android:layout_height="match_parent"/>
+
+ <!-- Empty view to represent the right margin -->
+ <View
+ android:layout_height="match_parent"
+ android:layout_width="0dip"
+ android:layout_weight="2" />
+
+ </LinearLayout>
+
+</ScrollView>
\ No newline at end of file
diff --git a/res/layout-sw580dp/contact_editor_activity.xml b/res/layout-sw580dp/contact_editor_activity.xml
index b9f98a3..c33a3c0 100644
--- a/res/layout-sw580dp/contact_editor_activity.xml
+++ b/res/layout-sw580dp/contact_editor_activity.xml
@@ -16,23 +16,13 @@
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:ex="http://schemas.android.com/apk/res/com.android.contacts"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
- <com.android.contacts.widget.InterpolatingLayout
+
+ <fragment class="com.android.contacts.editor.ContactEditorFragment"
+ android:id="@+id/contact_editor_fragment"
android:layout_width="match_parent"
- android:layout_height="match_parent">
- <fragment class="com.android.contacts.editor.ContactEditorFragment"
- android:id="@+id/contact_editor_fragment"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- ex:layout_wideParentWidth="1280dip"
- ex:layout_wideMarginLeft="160dip"
- ex:layout_wideMarginRight="160dip"
- ex:layout_narrowParentWidth="800dip"
- ex:layout_narrowMarginLeft="0dip"
- ex:layout_narrowMarginRight="0dip"
- />
- </com.android.contacts.widget.InterpolatingLayout>
+ android:layout_height="match_parent"/>
+
</ScrollView>
diff --git a/res/layout-sw580dp/contact_editor_fragment.xml b/res/layout-sw580dp/contact_editor_fragment.xml
index 0d01214..988be2a 100644
--- a/res/layout-sw580dp/contact_editor_fragment.xml
+++ b/res/layout-sw580dp/contact_editor_fragment.xml
@@ -14,12 +14,23 @@
limitations under the License.
-->
-<LinearLayout
+<com.android.contacts.widget.InterpolatingLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ex="http://schemas.android.com/apk/res/com.android.contacts"
- android:id="@+id/editors"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="@drawable/panel_message"
- android:orientation="vertical"
-/>
+ android:background="@drawable/panel_message">
+
+ <LinearLayout
+ android:id="@+id/editors"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical"
+ ex:layout_wideParentWidth="800dip"
+ ex:layout_wideMarginLeft="128dip"
+ ex:layout_wideMarginRight="128dip"
+ ex:layout_narrowParentWidth="600dip"
+ ex:layout_narrowMarginLeft="50dip"
+ ex:layout_narrowMarginRight="50dip"/>
+
+</com.android.contacts.widget.InterpolatingLayout>
\ No newline at end of file
diff --git a/res/layout-sw580dp/edit_spinner.xml b/res/layout-sw580dp/edit_spinner.xml
deleted file mode 100644
index f1909fe..0000000
--- a/res/layout-sw580dp/edit_spinner.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2011 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.
--->
-
-<!-- Spinner for a field in the contact editor. -->
-
-<Spinner
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/spinner"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginLeft="@dimen/editor_field_left_padding"
- android:textAppearance="?android:attr/textAppearanceLarge"
- android:paddingLeft="5dip"
- android:paddingTop="5dip"/>
\ No newline at end of file
diff --git a/res/layout-sw580dp/event_field_editor_view.xml b/res/layout-sw580dp/event_field_editor_view.xml
deleted file mode 100644
index 822de37..0000000
--- a/res/layout-sw580dp/event_field_editor_view.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2011 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.
--->
-
-<!-- Editor for a single event entry in the contact editor -->
-
-<com.android.contacts.editor.EventFieldEditorView
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="?android:attr/listPreferredItemHeight"
- android:orientation="vertical">
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="horizontal"
- android:gravity="bottom"
- android:focusable="true"
- android:clickable="true">
-
- <include
- android:id="@+id/date_view"
- layout="@layout/edit_date_picker" />
-
- <include
- android:id="@+id/spinner"
- layout="@layout/edit_spinner"
- android:visibility="gone" />
-
- <include
- android:id="@+id/delete_button_container"
- layout="@layout/edit_delete_button"
- android:visibility="gone" />
-
- </LinearLayout>
-
-</com.android.contacts.editor.EventFieldEditorView>
diff --git a/res/layout-sw580dp/external_raw_contact_editor_view.xml b/res/layout-sw580dp/external_raw_contact_editor_view.xml
deleted file mode 100644
index fba5220..0000000
--- a/res/layout-sw580dp/external_raw_contact_editor_view.xml
+++ /dev/null
@@ -1,141 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2007 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.
--->
-
-<com.android.contacts.editor.ExternalRawContactEditorView
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:ex="http://schemas.android.com/apk/res/com.android.contacts"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical">
-
- <include
- layout="@layout/editor_account_header" />
-
- <LinearLayout
- android:id="@+id/body"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:paddingTop="10dip">
-
- <com.android.contacts.widget.InterpolatingLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content">
-
- <FrameLayout
- android:id="@+id/stub_photo"
- android:layout_width="96dip"
- android:layout_height="96dip"
- android:layout_gravity="top|left"
- ex:layout_wideParentWidth="960dip"
- ex:layout_wideMarginLeft="96dip"
- ex:layout_narrowParentWidth="@dimen/editor_interpolator_narrow_width"
- ex:layout_narrowMarginLeft="15dip">
-
- <include
- android:id="@+id/edit_photo"
- layout="@layout/item_photo_editor" />
-
- </FrameLayout>
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_gravity="top"
- ex:layout_wideParentWidth="960dip"
- ex:layout_wideMarginRight="48dip"
- ex:layout_narrowParentWidth="@dimen/editor_interpolator_narrow_width"
- ex:layout_narrowMarginRight="15dip"
- android:orientation="vertical">
-
- <View
- android:layout_width="match_parent"
- android:layout_height="1px"
- android:background="@color/contact_detail_header_divider_color" />
-
- <TextView
- android:id="@+id/read_only_name"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginLeft="@dimen/editor_name_text_field_left_margin"
- android:layout_marginRight="48dip"
- android:layout_marginTop="6dip"
- android:layout_marginBottom="4dip"
- android:paddingRight="?android:attr/scrollbarSize"
- android:textSize="@dimen/contact_name_text_size" />
- </LinearLayout>
- </com.android.contacts.widget.InterpolatingLayout>
-
- <com.android.contacts.widget.InterpolatingLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content">
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- ex:layout_wideParentWidth="960dip"
- ex:layout_wideMarginLeft="96dip"
- ex:layout_wideMarginRight="96dip"
- ex:layout_narrowParentWidth="@dimen/editor_interpolator_narrow_width"
- ex:layout_narrowMarginLeft="15dip"
- ex:layout_narrowMarginRight="15dip">
-
- <TextView
- android:id="@+id/read_only_warning"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="13dip"
- android:layout_marginBottom="13dip"
- android:layout_marginLeft="13dip"
- android:textAppearance="?android:attr/textAppearanceSmall"
- android:textColor="?android:attr/textColorPrimary"
- android:drawableLeft="?android:attr/alertDialogIcon"
- android:drawablePadding="10dip"
- android:gravity="center_vertical" />
-
- <View
- android:layout_width="match_parent"
- android:layout_height="1px"
- android:background="?android:attr/listDivider" />
-
- <LinearLayout
- android:id="@+id/sect_general"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical" />
- </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="42dip">
- <Button
- android:id="@+id/button_edit_externally"
- android:text="@string/edit_contact"
- ex:layout_wideParentWidth="960dip"
- ex:layout_wideMarginLeft="246dip"
- ex:layout_wideMarginRight="156dip"
- ex:layout_narrowParentWidth="@dimen/editor_interpolator_narrow_width"
- ex:layout_narrowMarginLeft="165dip"
- ex:layout_narrowMarginRight="121dip"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
- </com.android.contacts.widget.InterpolatingLayout>
- </LinearLayout>
-</com.android.contacts.editor.ExternalRawContactEditorView>
diff --git a/res/layout-sw580dp/item_group_membership.xml b/res/layout-sw580dp/item_group_membership.xml
deleted file mode 100644
index 985b7ae..0000000
--- a/res/layout-sw580dp/item_group_membership.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2010 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.
--->
-
-<!-- the body surrounding all editors for a specific kind -->
-
-<com.android.contacts.editor.GroupMembershipView
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="@dimen/editor_min_line_item_height"
- android:orientation="horizontal">
-
- <TextView
- android:id="@+id/kind_title"
- android:layout_width="@dimen/editor_title_label_width"
- android:layout_height="@dimen/editor_min_line_item_height"
- android:gravity="center_vertical"
- android:textAppearance="?android:attr/textAppearanceSmall"
- android:singleLine="true"
- android:textColor="@color/editor_label_text_color"
- android:ellipsize="marquee" />
-
- <Button
- style="?android:attr/spinnerStyle"
- android:id="@+id/group_list"
- android:layout_width="0dip"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:textAppearance="?android:attr/textAppearanceMedium"
- android:gravity="left|center_vertical"
- android:ellipsize="end"
- android:focusable="true"
- android:paddingLeft="18dip"
- />
-
- <!-- 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/ic_menu_add_field_holo_light"
- 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/ic_menu_remove_field_holo_light"
- android:background="@null"
- android:visibility="invisible" />
-</com.android.contacts.editor.GroupMembershipView>
diff --git a/res/layout-sw580dp/phonetic_name_editor_view.xml b/res/layout-sw580dp/phonetic_name_editor_view.xml
deleted file mode 100644
index f27c1fc..0000000
--- a/res/layout-sw580dp/phonetic_name_editor_view.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2011 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.
--->
-
-<com.android.contacts.editor.PhoneticNameEditorView
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="?android:attr/listPreferredItemHeight"
- android:orientation="vertical"
- android:paddingRight="?android:attr/scrollbarSize"
- android:layout_marginLeft="@dimen/editor_name_text_field_left_margin"
- android:layout_marginRight="48dip"
- android:layout_marginTop="6dip"
- android:layout_marginBottom="4dip">
-
- <include
- android:id="@+id/spinner"
- layout="@layout/edit_spinner"
- android:visibility="gone" />
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="horizontal"
- android:gravity="center_vertical"
- android:focusable="true"
- android:clickable="true">
-
- <include
- android:id="@+id/editors"
- layout="@layout/edit_field_list" />
-
- <include
- android:id="@+id/expansion_view_container"
- layout="@layout/edit_expansion_view"
- android:visibility="gone" />
-
- <include
- android:id="@+id/delete_button_container"
- layout="@layout/edit_delete_button"
- android:visibility="gone" />
-
- </LinearLayout>
-
-</com.android.contacts.editor.PhoneticNameEditorView>
diff --git a/res/layout-sw580dp/raw_contact_editor_view.xml b/res/layout-sw580dp/raw_contact_editor_view.xml
deleted file mode 100644
index 11fc161..0000000
--- a/res/layout-sw580dp/raw_contact_editor_view.xml
+++ /dev/null
@@ -1,142 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2007 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.
--->
-
-<com.android.contacts.editor.RawContactEditorView
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:ex="http://schemas.android.com/apk/res/com.android.contacts"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical">
-
- <include
- layout="@layout/editor_account_header" />
-
- <LinearLayout
- android:id="@+id/body"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:paddingTop="10dip">
-
- <com.android.contacts.widget.InterpolatingLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content">
-
- <FrameLayout
- android:id="@+id/stub_photo"
- android:layout_width="96dip"
- android:layout_height="96dip"
- android:layout_gravity="top|left"
- ex:layout_wideParentWidth="960dip"
- ex:layout_wideMarginLeft="96dip"
- ex:layout_narrowParentWidth="@dimen/editor_interpolator_narrow_width"
- ex:layout_narrowMarginLeft="20dip">
-
- <include
- android:id="@+id/edit_photo"
- layout="@layout/item_photo_editor" />
-
- </FrameLayout>
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_gravity="top"
- ex:layout_wideParentWidth="960dip"
- ex:layout_wideMarginRight="48dip"
- ex:layout_wideMarginLeft="10dip"
- ex:layout_narrowParentWidth="@dimen/editor_interpolator_narrow_width"
- ex:layout_narrowMarginRight="15dip"
- ex:layout_narrowMarginLeft="5dip"
- android:orientation="vertical">
-
- <View
- android:layout_width="match_parent"
- android:layout_height="1px"
- android:background="@color/contact_detail_header_divider_color" />
-
- <include
- android:id="@+id/edit_name"
- layout="@layout/structured_name_editor_view" />
-
- <include
- android:id="@+id/edit_phonetic_name"
- layout="@layout/phonetic_name_editor_view" />
-
- <FrameLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginLeft="@dimen/editor_name_text_field_left_margin"
- android:layout_marginRight="48dip">
- <ViewStub
- android:id="@+id/aggregation_suggestion_stub"
- android:inflatedId="@+id/aggregation_suggestion"
- android:layout="@layout/aggregation_suggestions"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:visibility="visible" />
- </FrameLayout>
- </LinearLayout>
- </com.android.contacts.widget.InterpolatingLayout>
-
- <com.android.contacts.widget.InterpolatingLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content">
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- ex:layout_wideParentWidth="960dip"
- ex:layout_wideMarginLeft="96dip"
- ex:layout_wideMarginRight="48dip"
- ex:layout_narrowParentWidth="@dimen/editor_interpolator_narrow_width"
- ex:layout_narrowMarginLeft="25dip"
- ex:layout_narrowMarginRight="10dip">
-
- <LinearLayout
- android:id="@+id/sect_fields"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:paddingRight="@dimen/editor_name_text_field_right_margin" />
- </LinearLayout>
- </com.android.contacts.widget.InterpolatingLayout>
-
- <com.android.contacts.widget.InterpolatingLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="16dip"
- android:layout_marginBottom="32dip">
- <Button
- android:id="@+id/button_add_field"
- android:text="@string/add_field"
- ex:layout_wideParentWidth="960dip"
- ex:layout_wideMarginLeft="246dip"
- ex:layout_wideMarginRight="156dip"
- ex:layout_narrowParentWidth="@dimen/editor_interpolator_narrow_width"
- ex:layout_narrowMarginLeft="165dip"
- ex:layout_narrowMarginRight="121dip"
- 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" />
- </LinearLayout>
-</com.android.contacts.editor.RawContactEditorView>
diff --git a/res/layout-sw580dp/structured_name_editor_view.xml b/res/layout-sw580dp/structured_name_editor_view.xml
deleted file mode 100644
index 97e222e..0000000
--- a/res/layout-sw580dp/structured_name_editor_view.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2011 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.
--->
-
-<com.android.contacts.editor.StructuredNameEditorView
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="?android:attr/listPreferredItemHeight"
- android:orientation="vertical"
- android:paddingRight="?android:attr/scrollbarSize"
- android:layout_marginLeft="@dimen/editor_name_text_field_left_margin"
- android:layout_marginRight="48dip"
- android:layout_marginTop="6dip"
- android:layout_marginBottom="4dip">
-
- <include
- android:id="@+id/spinner"
- layout="@layout/edit_spinner"
- android:visibility="gone" />
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="horizontal"
- android:focusable="true"
- android:clickable="true">
-
- <include
- android:id="@+id/editors"
- layout="@layout/edit_field_list" />
-
- <include
- android:id="@+id/expansion_view_container"
- layout="@layout/edit_expansion_view"
- android:visibility="gone" />
-
- <include
- android:id="@+id/delete_button_container"
- layout="@layout/edit_delete_button"
- android:visibility="gone" />
-
- </LinearLayout>
-
-</com.android.contacts.editor.StructuredNameEditorView>
diff --git a/res/layout-sw580dp/text_fields_editor_view.xml b/res/layout-sw580dp/text_fields_editor_view.xml
index be0ea67..ecc9dd2 100644
--- a/res/layout-sw580dp/text_fields_editor_view.xml
+++ b/res/layout-sw580dp/text_fields_editor_view.xml
@@ -18,7 +18,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:minHeight="?android:attr/listPreferredItemHeight"
+ android:layout_marginTop="-4dip"
android:orientation="vertical">
<LinearLayout
@@ -26,7 +26,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal"
- android:gravity="top"
+ android:gravity="center_vertical"
android:focusable="true"
android:clickable="true">
@@ -35,14 +35,13 @@
layout="@layout/edit_field_list" />
<include
- android:id="@+id/spinner"
- layout="@layout/edit_spinner"
- android:paddingTop="15dip"
+ android:id="@+id/expansion_view_container"
+ layout="@layout/edit_expansion_view"
android:visibility="gone" />
<include
- android:id="@+id/expansion_view_container"
- layout="@layout/edit_expansion_view"
+ android:id="@+id/spinner"
+ layout="@layout/edit_spinner"
android:visibility="gone" />
<include
diff --git a/res/layout/edit_add_field.xml b/res/layout/edit_add_field.xml
index b17185d..0b62ac1 100644
--- a/res/layout/edit_add_field.xml
+++ b/res/layout/edit_add_field.xml
@@ -17,8 +17,8 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:minHeight="48dip"
- android:paddingLeft="16dip"
+ android:minHeight="40dip"
+ android:paddingLeft="@dimen/editor_add_field_label_left_padding"
android:background="?android:attr/selectableItemBackground">
<TextView
android:id="@+id/add_text"
diff --git a/res/layout/edit_delete_button.xml b/res/layout/edit_delete_button.xml
index f05b0e4..ed3f4d6 100644
--- a/res/layout/edit_delete_button.xml
+++ b/res/layout/edit_delete_button.xml
@@ -19,12 +19,13 @@
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
- android:layout_height="wrap_content"
+ android:layout_height="@dimen/editor_min_line_item_height"
android:layout_gravity="top">
<ImageView
android:id="@+id/delete_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:layout_gravity="center"
android:duplicateParentState="true"
android:background="?android:attr/selectableItemBackground"
android:src="@drawable/ic_menu_remove_field_holo_light"
diff --git a/res/layout/edit_kind_title.xml b/res/layout/edit_kind_title.xml
index 0f755ee..8901d5b 100644
--- a/res/layout/edit_kind_title.xml
+++ b/res/layout/edit_kind_title.xml
@@ -24,14 +24,15 @@
android:minHeight="24dip"
android:paddingLeft="8dip"
android:paddingRight="8dip"
+ android:paddingBottom="4dip"
android:orientation="vertical">
<TextView
android:id="@+id/kind_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:paddingLeft="8dip"
- android:textAppearance="?android:attr/textAppearanceMedium"
+ android:paddingLeft="@dimen/editor_kind_title_left_padding"
+ android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/people_app_theme_color"
android:textStyle="bold"
android:textAllCaps="true"
diff --git a/res/layout/edit_spinner.xml b/res/layout/edit_spinner.xml
index 37edcbd..0f3ed23 100644
--- a/res/layout/edit_spinner.xml
+++ b/res/layout/edit_spinner.xml
@@ -22,6 +22,6 @@
android:id="@+id/spinner"
android:layout_gravity="top"
android:layout_width="@dimen/editor_type_label_width"
- android:layout_height="wrap_content"
- android:paddingLeft="5dip"
+ android:layout_height="@dimen/editor_min_line_item_height"
+ android:paddingLeft="8dip"
android:paddingRight="20dip"/>
\ No newline at end of file
diff --git a/res/layout/external_raw_contact_editor_view.xml b/res/layout/external_raw_contact_editor_view.xml
index 6f39b34..24e8322 100644
--- a/res/layout/external_raw_contact_editor_view.xml
+++ b/res/layout/external_raw_contact_editor_view.xml
@@ -19,7 +19,8 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:orientation="vertical">
+ android:orientation="vertical"
+ android:paddingBottom="32dip">
<include
layout="@layout/editor_account_header" />
@@ -28,8 +29,8 @@
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="horizontal"
- android:paddingLeft="16dip"
- android:paddingRight="16dip">
+ android:paddingTop="8dip"
+ android:paddingLeft="16dip">
<TextView android:id="@+id/read_only_name"
android:layout_width="0dip"
@@ -45,7 +46,8 @@
<FrameLayout
android:id="@+id/stub_photo"
android:layout_width="wrap_content"
- android:layout_height="wrap_content">
+ android:layout_height="wrap_content"
+ android:layout_marginRight="8dip">
<include
android:id="@+id/edit_photo"
diff --git a/res/layout/item_photo_editor.xml b/res/layout/item_photo_editor.xml
index 2e73cb2..a41b007 100644
--- a/res/layout/item_photo_editor.xml
+++ b/res/layout/item_photo_editor.xml
@@ -17,13 +17,13 @@
<view
class="com.android.contacts.editor.PhotoEditorView"
xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="@dimen/edit_photo_size"
- android:layout_height="@dimen/edit_photo_size"
+ android:layout_width="42dip"
+ android:layout_height="42dip"
>
<ImageView
android:id="@+id/photo"
- android:layout_width="@dimen/edit_photo_size"
- android:layout_height="@dimen/edit_photo_size"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
android:src="@drawable/ic_contact_picture"
android:cropToPadding="true"
android:scaleType="centerCrop"
@@ -31,8 +31,8 @@
/>
<View
android:id="@+id/frame"
- android:layout_width="@dimen/edit_photo_size"
- android:layout_height="@dimen/edit_photo_size"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
android:clickable="true"
android:focusable="true"
android:contentDescription="@string/description_contact_photo"
diff --git a/res/layout/organization_editor_view_switcher.xml b/res/layout/organization_editor_view_switcher.xml
index fb21626..810634c 100644
--- a/res/layout/organization_editor_view_switcher.xml
+++ b/res/layout/organization_editor_view_switcher.xml
@@ -23,14 +23,14 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:minHeight="48dip"
+ android:minHeight="40dip"
android:background="?android:attr/selectableItemBackground">
<TextView
android:id="@+id/add_organization_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:paddingLeft="16dip"
+ android:paddingLeft="@dimen/editor_add_field_label_left_padding"
android:paddingRight="16dip"
android:layout_gravity="center_vertical"
android:duplicateParentState="true"
diff --git a/res/layout/phonetic_name_editor_view.xml b/res/layout/phonetic_name_editor_view.xml
index 6084d3f..5846998 100644
--- a/res/layout/phonetic_name_editor_view.xml
+++ b/res/layout/phonetic_name_editor_view.xml
@@ -18,6 +18,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:minHeight="@dimen/editor_min_line_item_height"
android:orientation="vertical">
<include
diff --git a/res/layout/raw_contact_editor_view.xml b/res/layout/raw_contact_editor_view.xml
index b4aa766..b98f4fb 100644
--- a/res/layout/raw_contact_editor_view.xml
+++ b/res/layout/raw_contact_editor_view.xml
@@ -18,7 +18,8 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:orientation="vertical">
+ android:orientation="vertical"
+ android:paddingTop="@dimen/editor_padding_top">
<include
layout="@layout/editor_account_header" />
diff --git a/res/layout/structured_name_editor_view.xml b/res/layout/structured_name_editor_view.xml
index 979a0f3..196b079 100644
--- a/res/layout/structured_name_editor_view.xml
+++ b/res/layout/structured_name_editor_view.xml
@@ -18,6 +18,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:minHeight="@dimen/editor_min_line_item_height"
android:orientation="vertical">
<include
diff --git a/res/layout/text_fields_editor_view.xml b/res/layout/text_fields_editor_view.xml
index 89970c6..e63b7da 100644
--- a/res/layout/text_fields_editor_view.xml
+++ b/res/layout/text_fields_editor_view.xml
@@ -18,6 +18,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:layout_marginTop="-2dip"
android:orientation="vertical">
<LinearLayout
diff --git a/res/values-sw580dp/dimens.xml b/res/values-sw580dp/dimens.xml
index ed845be..40391d0 100644
--- a/res/values-sw580dp/dimens.xml
+++ b/res/values-sw580dp/dimens.xml
@@ -14,14 +14,14 @@
limitations under the License.
-->
<resources>
- <dimen name="edit_photo_size">96dip</dimen>
<dimen name="aggregation_suggestion_icon_size">64dip</dimen>
- <dimen name="editor_type_label_width">180dip</dimen>
+ <dimen name="editor_padding_top">32dip</dimen>
+ <dimen name="editor_type_label_width">122dip</dimen>
<dimen name="editor_field_spinner_text_size">15sp</dimen>
- <dimen name="editor_round_button_padding_left">8dip</dimen>
- <dimen name="editor_round_button_padding_right">8dip</dimen>
- <dimen name="editor_field_top_padding">12dip</dimen>
- <dimen name="editor_field_bottom_padding">12dip</dimen>
+ <dimen name="editor_round_button_padding_left">16dip</dimen>
+ <dimen name="editor_round_button_padding_right">16dip</dimen>
+ <dimen name="editor_kind_title_left_padding">16dip</dimen>
+ <dimen name="editor_add_field_label_left_padding">24dip</dimen>
<dimen name="detail_item_side_margin">0dip</dimen>
<dimen name="detail_item_vertical_margin">16dip</dimen>
<dimen name="detail_item_icon_margin">8dip</dimen>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 1b737bc..4da74b0 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -14,8 +14,6 @@
limitations under the License.
-->
<resources>
- <dimen name="edit_photo_size">42dip</dimen>
-
<!-- The height of the ScrollingTabWidget -->
<dimen name="tab_height">40dip</dimen>
<dimen name="account_name_height">25dip</dimen>
@@ -33,12 +31,21 @@
based on the source of the request -->
<dimen name="quick_contact_top_position">48dip</dimen>
+ <!-- Top padding of the entire contact editor -->
+ <dimen name="editor_padding_top">0dip</dimen>
+
<!-- Padding of the rounded plus/minus/expand/collapse buttons in the editor -->
<dimen name="editor_round_button_padding_left">2dip</dimen>
<dimen name="editor_round_button_padding_right">2dip</dimen>
<dimen name="editor_round_button_padding_top">4dip</dimen>
<dimen name="editor_round_button_padding_bottom">4dip</dimen>
+ <!-- Left padding of the kind title in the contact editor -->
+ <dimen name="editor_kind_title_left_padding">8dip</dimen>
+
+ <!-- Left padding of the label in the add field button for the contact editor -->
+ <dimen name="editor_add_field_label_left_padding">16dip</dimen>
+
<!-- Width of the Type-Label in the Editor -->
<dimen name="editor_type_label_width">100dip</dimen>
@@ -48,12 +55,6 @@
<!-- Right padding of a field in the Editor -->
<dimen name="editor_field_right_padding">4dip</dimen>
- <!-- Top padding of a field in the Editor -->
- <dimen name="editor_field_top_padding">10dip</dimen>
-
- <!-- Bottom padding of a field in the Editor -->
- <dimen name="editor_field_bottom_padding">5dip</dimen>
-
<!-- Minimum height of a row in the Editor -->
<dimen name="editor_min_line_item_height">48dip</dimen>
@@ -75,9 +76,6 @@
<!-- Width of the title labels in the contact editor -->
<dimen name="editor_title_label_width">120dip</dimen>
- <!-- Interpolator layout narrow width value of the contact editor -->
- <dimen name="editor_interpolator_narrow_width">600dip</dimen>
-
<!-- Height of the attribution text view in the contact detail header view -->
<dimen name="detail_header_attribution_height">40dip</dimen>
diff --git a/src/com/android/contacts/editor/ExternalRawContactEditorView.java b/src/com/android/contacts/editor/ExternalRawContactEditorView.java
index 04f4140..cabf639 100644
--- a/src/com/android/contacts/editor/ExternalRawContactEditorView.java
+++ b/src/com/android/contacts/editor/ExternalRawContactEditorView.java
@@ -138,6 +138,8 @@
mContext.getString(R.string.from_account_format, mAccountName));
}
mAccountTypeTextView.setText(mContext.getString(R.string.account_type_format, accountType));
+ mAccountTypeTextView.setTextColor(mContext.getResources().getColor(
+ R.color.secondary_text_color));
// TODO: Expose data set in the UI somehow?
diff --git a/src/com/android/contacts/editor/LabeledEditorView.java b/src/com/android/contacts/editor/LabeledEditorView.java
index bb25ea0..6452c80 100644
--- a/src/com/android/contacts/editor/LabeledEditorView.java
+++ b/src/com/android/contacts/editor/LabeledEditorView.java
@@ -508,7 +508,7 @@
if (convertView == null) {
textView = (TextView) mInflater.inflate(resource, parent, false);
textView.setAllCaps(true);
- textView.setGravity(Gravity.RIGHT);
+ textView.setGravity(Gravity.RIGHT | Gravity.CENTER_VERTICAL);
textView.setTextAppearance(mContext, android.R.style.TextAppearance_Small);
textView.setTextColor(mTextColor);
} else {
diff --git a/src/com/android/contacts/editor/RawContactEditorView.java b/src/com/android/contacts/editor/RawContactEditorView.java
index 6335cb6..dd3c15a 100644
--- a/src/com/android/contacts/editor/RawContactEditorView.java
+++ b/src/com/android/contacts/editor/RawContactEditorView.java
@@ -129,12 +129,11 @@
mInflater = (LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- final int photoSize = getResources().getDimensionPixelSize(R.dimen.edit_photo_size);
-
mName = (StructuredNameEditorView)findViewById(R.id.edit_name);
mName.setDeletable(false);
mPhoneticName = (PhoneticNameEditorView)findViewById(R.id.edit_phonetic_name);
+ mPhoneticName.setDeletable(false);
mFields = (ViewGroup)findViewById(R.id.sect_fields);
diff --git a/src/com/android/contacts/editor/TextFieldsEditorView.java b/src/com/android/contacts/editor/TextFieldsEditorView.java
index d3fa3b7..c48e3c9 100644
--- a/src/com/android/contacts/editor/TextFieldsEditorView.java
+++ b/src/com/android/contacts/editor/TextFieldsEditorView.java
@@ -60,7 +60,7 @@
private ImageView mExpansionView;
private boolean mHideOptional = true;
private boolean mHasShortAndLongForms;
- private int mHintTextColor;
+ private int mMinFieldHeight;
public TextFieldsEditorView(Context context) {
super(context);
@@ -82,7 +82,8 @@
setDrawingCacheEnabled(true);
setAlwaysDrawnWithCacheEnabled(true);
- mHintTextColor = getContext().getResources().getColor(R.color.secondary_text_color);
+ mMinFieldHeight = mContext.getResources().getDimensionPixelSize(
+ R.dimen.editor_min_line_item_height);
mFields = (ViewGroup) findViewById(R.id.editors);
mExpansionView = (ImageView) findViewById(R.id.expansion_view);
mExpansionViewContainer = findViewById(R.id.expansion_view_container);
@@ -173,9 +174,8 @@
final EditField field = kind.fieldList.get(index);
final EditText fieldView = new EditText(mContext);
fieldView.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,
- LayoutParams.WRAP_CONTENT));
+ field.isMultiLine() ? LayoutParams.WRAP_CONTENT : mMinFieldHeight));
fieldView.setTextAppearance(getContext(), kind.textAppearanceResourceId);
- fieldView.setHintTextColor(mHintTextColor);
fieldView.setGravity(Gravity.TOP);
mFieldEditTexts[index] = fieldView;
fieldView.setId(vig.getId(state, kind, entry, index));
diff --git a/src/com/android/contacts/model/AccountType.java b/src/com/android/contacts/model/AccountType.java
index 59b9f45..e652d7b 100644
--- a/src/com/android/contacts/model/AccountType.java
+++ b/src/com/android/contacts/model/AccountType.java
@@ -31,6 +31,7 @@
import android.provider.ContactsContract.Contacts;
import android.provider.ContactsContract.Data;
import android.provider.ContactsContract.RawContacts;
+import android.view.inputmethod.EditorInfo;
import android.widget.EditText;
import java.text.Collator;
@@ -357,6 +358,10 @@
this.isFullName = isFullName;
return this;
}
+
+ public boolean isMultiLine() {
+ return (inputType & EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE) != 0;
+ }
}
/**