Merge "Removing an icon from the date picker dialog." into honeycomb
diff --git a/res/drawable-hdpi/aizy_knob.png b/res/drawable-hdpi/aizy_knob.png
deleted file mode 100644
index 6940a94..0000000
--- a/res/drawable-hdpi/aizy_knob.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/aizy_label.9.png b/res/drawable-hdpi/aizy_label.9.png
deleted file mode 100644
index 1599037..0000000
--- a/res/drawable-hdpi/aizy_label.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/filter_selector_corner.png b/res/drawable-hdpi/filter_selector_corner.png
deleted file mode 100644
index 964dd75..0000000
--- a/res/drawable-hdpi/filter_selector_corner.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_contact_list_picture.png b/res/drawable-hdpi/ic_contact_list_picture.png
deleted file mode 100644
index b96fbf4..0000000
--- a/res/drawable-hdpi/ic_contact_list_picture.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_contact_picture.png b/res/drawable-hdpi/ic_contact_picture.png
index 7c34f5c..e29e63a 100755
--- a/res/drawable-hdpi/ic_contact_picture.png
+++ b/res/drawable-hdpi/ic_contact_picture.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_join.png b/res/drawable-hdpi/ic_join.png
deleted file mode 100644
index 8f140d4..0000000
--- a/res/drawable-hdpi/ic_join.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_menu_cancel_holo_light.png b/res/drawable-hdpi/ic_menu_cancel_holo_light.png
deleted file mode 100644
index 259b90c..0000000
--- a/res/drawable-hdpi/ic_menu_cancel_holo_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/list_item_activated_bg.9.png b/res/drawable-hdpi/list_item_activated_bg.9.png
deleted file mode 100644
index dd82c22..0000000
--- a/res/drawable-hdpi/list_item_activated_bg.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/statusbox_widget_holo_light.9.png b/res/drawable-hdpi/statusbox_widget_holo_light.9.png
deleted file mode 100644
index 383aab8..0000000
--- a/res/drawable-hdpi/statusbox_widget_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/aizy_knob.png b/res/drawable-mdpi/aizy_knob.png
deleted file mode 100644
index daa8242..0000000
--- a/res/drawable-mdpi/aizy_knob.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/aizy_label.9.png b/res/drawable-mdpi/aizy_label.9.png
deleted file mode 100644
index 695b000..0000000
--- a/res/drawable-mdpi/aizy_label.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/filter_selector_corner.png b/res/drawable-mdpi/filter_selector_corner.png
deleted file mode 100644
index 964dd75..0000000
--- a/res/drawable-mdpi/filter_selector_corner.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_contact_list_picture.png b/res/drawable-mdpi/ic_contact_list_picture.png
deleted file mode 100644
index f8aa4ba..0000000
--- a/res/drawable-mdpi/ic_contact_list_picture.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_contact_picture.png b/res/drawable-mdpi/ic_contact_picture.png
index 3a338e8..faa3dc0 100644
--- a/res/drawable-mdpi/ic_contact_picture.png
+++ b/res/drawable-mdpi/ic_contact_picture.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_join.png b/res/drawable-mdpi/ic_join.png
deleted file mode 100644
index 177a582..0000000
--- a/res/drawable-mdpi/ic_join.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_menu_cancel_holo_light.png b/res/drawable-mdpi/ic_menu_cancel_holo_light.png
deleted file mode 100644
index d3bdc37..0000000
--- a/res/drawable-mdpi/ic_menu_cancel_holo_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/list_item_activated_bg.9.png b/res/drawable-mdpi/list_item_activated_bg.9.png
deleted file mode 100644
index dd82c22..0000000
--- a/res/drawable-mdpi/list_item_activated_bg.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/statusbox_widget_holo_light.9.png b/res/drawable-mdpi/statusbox_widget_holo_light.9.png
deleted file mode 100644
index 00c6ba5..0000000
--- a/res/drawable-mdpi/statusbox_widget_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/res/layout/group_membership_list_item.xml b/res/layout/group_membership_list_item.xml
new file mode 100644
index 0000000..1e4f049
--- /dev/null
+++ b/res/layout/group_membership_list_item.xml
@@ -0,0 +1,26 @@
+<?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.
+-->
+
+<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@android:id/text1"
+ android:layout_width="match_parent"
+ android:layout_height="48dip"
+ android:textAppearance="?android:attr/textAppearanceMedium"
+ android:gravity="center_vertical"
+ android:checkMark="?android:attr/listChoiceIndicatorMultiple"
+ android:paddingLeft="6dip"
+ android:paddingRight="6dip"
+/>
diff --git a/res/layout/search_header.xml b/res/layout/search_header.xml
index 1eaa4e0..ab8ec53 100644
--- a/res/layout/search_header.xml
+++ b/res/layout/search_header.xml
@@ -34,6 +34,7 @@
android:id="@+id/progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:layout_toRightOf="@id/totalContactsText"
style="?android:attr/progressBarStyleSmall"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
diff --git a/res/values/strings.xml b/res/values/strings.xml
index b0dffca..d09904a 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -307,8 +307,8 @@
<item quantity="other"><xliff:g id="count">%d</xliff:g> contacts with phone numbers</item>
</plurals>
- <!-- Displayed at the top of the contacts showing the zero as total number of contacts visible when "Only contacts with phones" is selected -->
- <string name="listTotalPhoneContactsZero">No visible contacts with phone numbers</string>
+ <!-- Displayed at the top of the contacts showing the zero as total number of contacts visible when "Only contacts with phones" is selected [CHAR LIMIT=64]-->
+ <string name="listTotalPhoneContactsZero">No contacts with phone numbers</string>
<!-- Displayed at the top of the contacts showing the total number of contacts visible when "Only contacts with phones" not selected -->
<plurals name="listTotalAllContacts">
@@ -316,8 +316,17 @@
<item quantity="other"><xliff:g id="count">%d</xliff:g> contacts</item>
</plurals>
- <!-- Displayed at the top of the contacts showing the zero total number of contacts visible when "Only contacts with phones" not selected -->
- <string name="listTotalAllContactsZero">No visible contacts</string>
+ <!-- Displayed at the top of the contacts showing the zero total number of contacts visible when "All contacts" is selected [CHAR LIMIT=64]-->
+ <string name="listTotalAllContactsZero">No contacts</string>
+
+ <!-- Displayed at the top of the contacts showing the zero total number of contacts visible when "Custom" is selected [CHAR LIMIT=64]-->
+ <string name="listTotalAllContactsZeroCustom">No visible contacts</string>
+
+ <!-- Displayed at the top of the contacts showing the zero total number of contacts visible when starred contact list is selected [CHAR LIMIT=64]-->
+ <string name="listTotalAllContactsZeroStarred">No starred contacts</string>
+
+ <!-- Displayed at the top of the contacts showing the zero total number of contacts visible when a group or account is selected [CHAR LIMIT=64]-->
+ <string name="listTotalAllContactsZeroGroup">No contacts in <xliff:g id="name" example="Friends">%s</xliff:g></string>
<!-- Displayed at the top of the contacts showing the total number of contacts found when "Only contacts with phones" not selected -->
<plurals name="listFoundAllContacts">
diff --git a/src/com/android/contacts/activities/ContactSelectionActivity.java b/src/com/android/contacts/activities/ContactSelectionActivity.java
index 907edd3..4efc43f 100644
--- a/src/com/android/contacts/activities/ContactSelectionActivity.java
+++ b/src/com/android/contacts/activities/ContactSelectionActivity.java
@@ -54,6 +54,9 @@
private static final String KEY_ACTION_CODE = "actionCode";
private static final int DEFAULT_DIRECTORY_RESULT_LIMIT = 20;
+ // Delay to allow the UI to settle before making search view visible
+ private static final int FOCUS_DELAY = 200;
+
private ContactsIntentResolver mIntentResolver;
protected ContactEntryListFragment<?> mListFragment;
@@ -116,13 +119,13 @@
// at this point. If search view were visible, it would always grabs focus
// because it is the first focusable widget in the window.
mSearchView.setVisibility(View.INVISIBLE);
- mSearchView.post(new Runnable() {
+ mSearchView.postDelayed(new Runnable() {
@Override
public void run() {
mSearchView.setVisibility(View.VISIBLE);
}
- });
+ }, FOCUS_DELAY);
}
Button cancel = (Button) findViewById(R.id.cancel);
diff --git a/src/com/android/contacts/editor/GroupMembershipView.java b/src/com/android/contacts/editor/GroupMembershipView.java
index c0b3644..8845aa3 100644
--- a/src/com/android/contacts/editor/GroupMembershipView.java
+++ b/src/com/android/contacts/editor/GroupMembershipView.java
@@ -203,7 +203,7 @@
}
mAdapter = new ArrayAdapter<GroupSelectionItem>(
- getContext(), android.R.layout.simple_list_item_multiple_choice);
+ getContext(), R.layout.group_membership_list_item);
mGroupMetaData.moveToPosition(-1);
while (mGroupMetaData.moveToNext()) {
diff --git a/src/com/android/contacts/list/ContactEntryListFragment.java b/src/com/android/contacts/list/ContactEntryListFragment.java
index e61232a..e3f5e1c 100644
--- a/src/com/android/contacts/list/ContactEntryListFragment.java
+++ b/src/com/android/contacts/list/ContactEntryListFragment.java
@@ -760,7 +760,7 @@
protected void configurePhotoLoader() {
if (isPhotoLoaderEnabled() && mContext != null) {
if (mPhotoLoader == null) {
- mPhotoLoader = new ContactPhotoLoader(mContext, R.drawable.ic_contact_list_picture);
+ mPhotoLoader = new ContactPhotoLoader(mContext, R.drawable.ic_contact_picture);
}
if (mListView != null) {
mListView.setOnScrollListener(this);
@@ -892,17 +892,6 @@
}
}
- // TODO: fix PluralRules to handle zero correctly and use Resources.getQuantityText directly
- public String getQuantityText(int count, int zeroResourceId, int pluralResourceId) {
- if (count == 0) {
- return mContext.getString(zeroResourceId);
- } else {
- String format = mContext.getResources()
- .getQuantityText(pluralResourceId, count).toString();
- return String.format(format, count);
- }
- }
-
protected void setEmptyText(int resourceId) {
TextView empty = (TextView) getEmptyView().findViewById(R.id.emptyText);
empty.setText(mContext.getText(resourceId));
diff --git a/src/com/android/contacts/list/ContactListFilter.java b/src/com/android/contacts/list/ContactListFilter.java
index 5cb96b4..c53859b 100644
--- a/src/com/android/contacts/list/ContactListFilter.java
+++ b/src/com/android/contacts/list/ContactListFilter.java
@@ -43,6 +43,7 @@
private static final String KEY_GROUP_ID = "filter.groupId";
private static final String KEY_GROUP_SOURCE_ID = "filter.groupSourceId";
private static final String KEY_GROUP_READ_ONLY = "filter.groupReadOnly";
+ private static final String KEY_GROUP_TITLE = "filter.groupTitle";
public int filterType;
public String accountType;
@@ -177,6 +178,7 @@
.putLong(KEY_GROUP_ID, filter == null ? -1 : filter.groupId)
.putString(KEY_GROUP_SOURCE_ID, filter == null ? null : filter.groupSourceId)
.putBoolean(KEY_GROUP_READ_ONLY, filter == null ? false : filter.groupReadOnly)
+ .putString(KEY_GROUP_TITLE, filter == null ? null : filter.title)
.apply();
}
@@ -192,6 +194,7 @@
filter.groupId = prefs.getLong(KEY_GROUP_ID, -1);
filter.groupSourceId = prefs.getString(KEY_GROUP_SOURCE_ID, null);
filter.groupReadOnly = prefs.getBoolean(KEY_GROUP_READ_ONLY, false);
+ filter.title = prefs.getString(KEY_GROUP_TITLE, "group");
return filter;
}
diff --git a/src/com/android/contacts/list/DefaultContactBrowseListFragment.java b/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
index 7b04562..f95c4af 100644
--- a/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
+++ b/src/com/android/contacts/list/DefaultContactBrowseListFragment.java
@@ -95,15 +95,38 @@
protected void showCount(int partitionIndex, Cursor data) {
if (!isSearchMode() && data != null) {
int count = data.getCount();
- // TODO
- // if (contactsListActivity.mDisplayOnlyPhones) {
- // text = contactsListActivity.getQuantityText(count,
- // R.string.listTotalPhoneContactsZero,
- // R.plurals.listTotalPhoneContacts);
- TextView textView = (TextView)mCounterHeaderView.findViewById(R.id.totalContactsText);
- String text = getQuantityText(count, R.string.listTotalAllContactsZero,
- R.plurals.listTotalAllContacts);
- textView.setText(text);
+ TextView textView = (TextView) mCounterHeaderView.findViewById(R.id.totalContactsText);
+ if (count != 0) {
+ String format = getResources().getQuantityText(
+ R.plurals.listTotalAllContacts, count).toString();
+ textView.setText(String.format(format, count));
+ } else {
+ ContactListFilter filter = getFilter();
+ int filterType = filter != null ? filter.filterType
+ : ContactListFilter.FILTER_TYPE_ALL_ACCOUNTS;
+ switch (filterType) {
+ case ContactListFilter.FILTER_TYPE_ACCOUNT:
+ textView.setText(getString(
+ R.string.listTotalAllContactsZeroGroup, filter.accountName));
+ break;
+ case ContactListFilter.FILTER_TYPE_GROUP:
+ textView.setText(
+ getString(R.string.listTotalAllContactsZeroGroup, filter.title));
+ break;
+ case ContactListFilter.FILTER_TYPE_WITH_PHONE_NUMBERS_ONLY:
+ textView.setText(R.string.listTotalPhoneContactsZero);
+ break;
+ case ContactListFilter.FILTER_TYPE_STARRED:
+ textView.setText(R.string.listTotalAllContactsZeroStarred);
+ break;
+ case ContactListFilter.FILTER_TYPE_CUSTOM:
+ textView.setText(R.string.listTotalAllContactsZeroCustom);
+ break;
+ default:
+ textView.setText(R.string.listTotalAllContactsZero);
+ break;
+ }
+ }
} else {
ContactListAdapter adapter = getAdapter();
if (adapter == null) {