From e8c19ff7776ce4173a729d5e8ffbcbb61f2ec0db Mon Sep 17 00:00:00 2001 From: blong Date: Thu, 16 Oct 2014 12:18:17 +0800 Subject: Filter SIM contacts when add info from sms - Original not supports to add contacts info to exist SIM contacts from sms,so hide SIM contacts from UI. CRs-Fixed:731525 Change-Id: Ib3a072a9895c93d8438fb50d7d883505ee32d973 --- src/com/android/contacts/common/list/ContactListFilter.java | 1 + .../contacts/common/list/DefaultContactListAdapter.java | 13 ++++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) mode change 100644 => 100755 src/com/android/contacts/common/list/ContactListFilter.java mode change 100644 => 100755 src/com/android/contacts/common/list/DefaultContactListAdapter.java (limited to 'src/com/android/contacts') diff --git a/src/com/android/contacts/common/list/ContactListFilter.java b/src/com/android/contacts/common/list/ContactListFilter.java old mode 100644 new mode 100755 index f81ea742..b48efb98 --- a/src/com/android/contacts/common/list/ContactListFilter.java +++ b/src/com/android/contacts/common/list/ContactListFilter.java @@ -45,6 +45,7 @@ public final class ContactListFilter implements Comparable, P * TODO: "group" filter and relevant variables are all obsolete. Remove them. */ private static final int FILTER_TYPE_GROUP = 1; + public static final int FILTER_TYPE_ALL_WITHOUT_SIM = 2; private static final String KEY_FILTER_TYPE = "filter.type"; private static final String KEY_ACCOUNT_NAME = "filter.accountName"; diff --git a/src/com/android/contacts/common/list/DefaultContactListAdapter.java b/src/com/android/contacts/common/list/DefaultContactListAdapter.java old mode 100644 new mode 100755 index ed1c509e..ea177eaf --- a/src/com/android/contacts/common/list/DefaultContactListAdapter.java +++ b/src/com/android/contacts/common/list/DefaultContactListAdapter.java @@ -100,9 +100,11 @@ public class DefaultContactListAdapter extends ContactListAdapter { } boolean isAirMode = MoreContactUtils.isAPMOnAndSIMPowerDown(getContext()); - if (isAirMode) { - appendUriQueryParameterWithoutSim(loader, RawContacts.ACCOUNT_TYPE, - SimAccountType.ACCOUNT_TYPE); + if (isAirMode + || (null != filter && filter.filterType == + ContactListFilter.FILTER_TYPE_ALL_WITHOUT_SIM)) { + appendUriQueryParameterWithoutSim(loader, + RawContacts.ACCOUNT_TYPE, SimAccountType.ACCOUNT_TYPE); } else { // Do not show contacts when SIM card is disabled String disabledSimFilter = MoreContactUtils.getDisabledSimFilter(); @@ -220,6 +222,11 @@ public class DefaultContactListAdapter extends ContactListAdapter { // We use query parameters for account filter, so no selection to add here. break; } + case ContactListFilter.FILTER_TYPE_ALL_WITHOUT_SIM: { + appendUriQueryParameterWithoutSim(loader, RawContacts.ACCOUNT_TYPE, + SimAccountType.ACCOUNT_TYPE); + break; + } } loader.setSelection(selection.toString()); loader.setSelectionArgs(selectionArgs.toArray(new String[0])); -- cgit v1.2.3