Loading src/com/android/contacts/ContactsListActivity.java +24 −6 Original line number Original line Diff line number Diff line Loading @@ -188,6 +188,11 @@ public final class ContactsListActivity extends ListActivity SORT_STRING, // 9 SORT_STRING, // 9 }; }; static final String[] SIMPLE_CONTACTS_PROJECTION = new String[] { People._ID, // 0 NAME_COLUMN, // 1 }; static final String[] STREQUENT_PROJECTION = new String[] { static final String[] STREQUENT_PROJECTION = new String[] { People._ID, // 0 People._ID, // 0 NAME_COLUMN, // 1 NAME_COLUMN, // 1 Loading Loading @@ -236,7 +241,7 @@ public final class ContactsListActivity extends ListActivity static final int SORT_STRING_INDEX = 9; static final int SORT_STRING_INDEX = 9; static final int PHONES_PERSON_ID_INDEX = 6; static final int PHONES_PERSON_ID_INDEX = 6; static final int CONTACT_METHODS_PERSON_ID_INDEX = 6; static final int SIMPLE_CONTACTS_PERSON_ID_INDEX = 0; static final int DISPLAY_GROUP_INDEX_ALL_CONTACTS = 0; static final int DISPLAY_GROUP_INDEX_ALL_CONTACTS = 0; static final int DISPLAY_GROUP_INDEX_ALL_CONTACTS_WITH_PHONES = 1; static final int DISPLAY_GROUP_INDEX_ALL_CONTACTS_WITH_PHONES = 1; Loading Loading @@ -1136,12 +1141,14 @@ public final class ContactsListActivity extends ListActivity case MODE_QUERY_PICK_TO_VIEW: { case MODE_QUERY_PICK_TO_VIEW: { if (mQueryMode == QUERY_MODE_MAILTO) { if (mQueryMode == QUERY_MODE_MAILTO) { mQueryPersonIdIndex = CONTACT_METHODS_PERSON_ID_INDEX; // Find all contacts with the given search string as either // an E-mail or IM address. mQueryPersonIdIndex = SIMPLE_CONTACTS_PERSON_ID_INDEX; Uri uri = Uri.withAppendedPath(People.WITH_EMAIL_OR_IM_FILTER_URI, Uri.encode(mQueryData)); mQueryHandler.startQuery(QUERY_TOKEN, null, mQueryHandler.startQuery(QUERY_TOKEN, null, ContactMethods.CONTENT_URI, CONTACT_METHODS_PROJECTION, uri, SIMPLE_CONTACTS_PROJECTION, null, null, QUERY_KIND_EMAIL_OR_IM + " AND " + ContactMethods.DATA + "=?", getSortOrder(CONTACTS_PROJECTION)); new String[] { mQueryData }, getSortOrder(CONTACT_METHODS_PROJECTION)); } else if (mQueryMode == QUERY_MODE_TEL) { } else if (mQueryMode == QUERY_MODE_TEL) { mQueryPersonIdIndex = PHONES_PERSON_ID_INDEX; mQueryPersonIdIndex = PHONES_PERSON_ID_INDEX; Loading Loading @@ -1566,6 +1573,17 @@ public final class ContactsListActivity extends ListActivity cache.nameView.setText(mUnknownNameText); cache.nameView.setText(mUnknownNameText); } } // Bail out early if using a specific SEARCH query mode, usually for // matching a specific E-mail or phone number. Any contact details // shown would be identical, and columns might not even be present // in the returned cursor. if (mQueryMode != QUERY_MODE_NONE) { cache.numberView.setVisibility(View.GONE); cache.labelView.setVisibility(View.GONE); cache.presenceView.setVisibility(View.GONE); return; } // Set the phone number // Set the phone number TextView numberView = cache.numberView; TextView numberView = cache.numberView; TextView labelView = cache.labelView; TextView labelView = cache.labelView; Loading src/com/android/contacts/ShowOrCreateActivity.java +6 −11 Original line number Original line Diff line number Diff line Loading @@ -56,20 +56,17 @@ public final class ShowOrCreateActivity extends Activity { static final boolean LOGD = false; static final boolean LOGD = false; static final String[] PHONES_PROJECTION = new String[] { static final String[] PHONES_PROJECTION = new String[] { Phones._ID, Phones.PERSON_ID, Phones.PERSON_ID, }; }; static final String[] CONTACT_METHODS_PROJECTION = new String[] { static final String[] PEOPLE_PROJECTION = new String[] { ContactMethods._ID, People._ID, ContactMethods.PERSON_ID, }; }; static final String SCHEME_MAILTO = "mailto"; static final String SCHEME_MAILTO = "mailto"; static final String SCHEME_TEL = "tel"; static final String SCHEME_TEL = "tel"; static final int ID_INDEX = 0; static final int PERSON_ID_INDEX = 0; static final int PERSON_ID_INDEX = 1; /** /** * Query clause to filter {@link ContactMethods#CONTENT_URI} to only search * Query clause to filter {@link ContactMethods#CONTENT_URI} to only search Loading Loading @@ -126,11 +123,9 @@ public final class ShowOrCreateActivity extends Activity { // Handle specific query request // Handle specific query request if (SCHEME_MAILTO.equals(scheme)) { if (SCHEME_MAILTO.equals(scheme)) { createExtras.putString(Intents.Insert.EMAIL, ssp); createExtras.putString(Intents.Insert.EMAIL, ssp); mQueryHandler.startQuery(QUERY_TOKEN, null, Uri uri = Uri.withAppendedPath(People.WITH_EMAIL_OR_IM_FILTER_URI, Uri.encode(ssp)); ContactMethods.CONTENT_URI, CONTACT_METHODS_PROJECTION, mQueryHandler.startQuery(QUERY_TOKEN, null, uri, QUERY_KIND_EMAIL_OR_IM + " AND " + ContactMethods.DATA + "=?", PEOPLE_PROJECTION, null, null, null); new String[] { ssp }, null); } else if (SCHEME_TEL.equals(scheme)) { } else if (SCHEME_TEL.equals(scheme)) { createExtras.putString(Intents.Insert.PHONE, ssp); createExtras.putString(Intents.Insert.PHONE, ssp); mQueryHandler.startQuery(QUERY_TOKEN, null, mQueryHandler.startQuery(QUERY_TOKEN, null, Loading Loading
src/com/android/contacts/ContactsListActivity.java +24 −6 Original line number Original line Diff line number Diff line Loading @@ -188,6 +188,11 @@ public final class ContactsListActivity extends ListActivity SORT_STRING, // 9 SORT_STRING, // 9 }; }; static final String[] SIMPLE_CONTACTS_PROJECTION = new String[] { People._ID, // 0 NAME_COLUMN, // 1 }; static final String[] STREQUENT_PROJECTION = new String[] { static final String[] STREQUENT_PROJECTION = new String[] { People._ID, // 0 People._ID, // 0 NAME_COLUMN, // 1 NAME_COLUMN, // 1 Loading Loading @@ -236,7 +241,7 @@ public final class ContactsListActivity extends ListActivity static final int SORT_STRING_INDEX = 9; static final int SORT_STRING_INDEX = 9; static final int PHONES_PERSON_ID_INDEX = 6; static final int PHONES_PERSON_ID_INDEX = 6; static final int CONTACT_METHODS_PERSON_ID_INDEX = 6; static final int SIMPLE_CONTACTS_PERSON_ID_INDEX = 0; static final int DISPLAY_GROUP_INDEX_ALL_CONTACTS = 0; static final int DISPLAY_GROUP_INDEX_ALL_CONTACTS = 0; static final int DISPLAY_GROUP_INDEX_ALL_CONTACTS_WITH_PHONES = 1; static final int DISPLAY_GROUP_INDEX_ALL_CONTACTS_WITH_PHONES = 1; Loading Loading @@ -1136,12 +1141,14 @@ public final class ContactsListActivity extends ListActivity case MODE_QUERY_PICK_TO_VIEW: { case MODE_QUERY_PICK_TO_VIEW: { if (mQueryMode == QUERY_MODE_MAILTO) { if (mQueryMode == QUERY_MODE_MAILTO) { mQueryPersonIdIndex = CONTACT_METHODS_PERSON_ID_INDEX; // Find all contacts with the given search string as either // an E-mail or IM address. mQueryPersonIdIndex = SIMPLE_CONTACTS_PERSON_ID_INDEX; Uri uri = Uri.withAppendedPath(People.WITH_EMAIL_OR_IM_FILTER_URI, Uri.encode(mQueryData)); mQueryHandler.startQuery(QUERY_TOKEN, null, mQueryHandler.startQuery(QUERY_TOKEN, null, ContactMethods.CONTENT_URI, CONTACT_METHODS_PROJECTION, uri, SIMPLE_CONTACTS_PROJECTION, null, null, QUERY_KIND_EMAIL_OR_IM + " AND " + ContactMethods.DATA + "=?", getSortOrder(CONTACTS_PROJECTION)); new String[] { mQueryData }, getSortOrder(CONTACT_METHODS_PROJECTION)); } else if (mQueryMode == QUERY_MODE_TEL) { } else if (mQueryMode == QUERY_MODE_TEL) { mQueryPersonIdIndex = PHONES_PERSON_ID_INDEX; mQueryPersonIdIndex = PHONES_PERSON_ID_INDEX; Loading Loading @@ -1566,6 +1573,17 @@ public final class ContactsListActivity extends ListActivity cache.nameView.setText(mUnknownNameText); cache.nameView.setText(mUnknownNameText); } } // Bail out early if using a specific SEARCH query mode, usually for // matching a specific E-mail or phone number. Any contact details // shown would be identical, and columns might not even be present // in the returned cursor. if (mQueryMode != QUERY_MODE_NONE) { cache.numberView.setVisibility(View.GONE); cache.labelView.setVisibility(View.GONE); cache.presenceView.setVisibility(View.GONE); return; } // Set the phone number // Set the phone number TextView numberView = cache.numberView; TextView numberView = cache.numberView; TextView labelView = cache.labelView; TextView labelView = cache.labelView; Loading
src/com/android/contacts/ShowOrCreateActivity.java +6 −11 Original line number Original line Diff line number Diff line Loading @@ -56,20 +56,17 @@ public final class ShowOrCreateActivity extends Activity { static final boolean LOGD = false; static final boolean LOGD = false; static final String[] PHONES_PROJECTION = new String[] { static final String[] PHONES_PROJECTION = new String[] { Phones._ID, Phones.PERSON_ID, Phones.PERSON_ID, }; }; static final String[] CONTACT_METHODS_PROJECTION = new String[] { static final String[] PEOPLE_PROJECTION = new String[] { ContactMethods._ID, People._ID, ContactMethods.PERSON_ID, }; }; static final String SCHEME_MAILTO = "mailto"; static final String SCHEME_MAILTO = "mailto"; static final String SCHEME_TEL = "tel"; static final String SCHEME_TEL = "tel"; static final int ID_INDEX = 0; static final int PERSON_ID_INDEX = 0; static final int PERSON_ID_INDEX = 1; /** /** * Query clause to filter {@link ContactMethods#CONTENT_URI} to only search * Query clause to filter {@link ContactMethods#CONTENT_URI} to only search Loading Loading @@ -126,11 +123,9 @@ public final class ShowOrCreateActivity extends Activity { // Handle specific query request // Handle specific query request if (SCHEME_MAILTO.equals(scheme)) { if (SCHEME_MAILTO.equals(scheme)) { createExtras.putString(Intents.Insert.EMAIL, ssp); createExtras.putString(Intents.Insert.EMAIL, ssp); mQueryHandler.startQuery(QUERY_TOKEN, null, Uri uri = Uri.withAppendedPath(People.WITH_EMAIL_OR_IM_FILTER_URI, Uri.encode(ssp)); ContactMethods.CONTENT_URI, CONTACT_METHODS_PROJECTION, mQueryHandler.startQuery(QUERY_TOKEN, null, uri, QUERY_KIND_EMAIL_OR_IM + " AND " + ContactMethods.DATA + "=?", PEOPLE_PROJECTION, null, null, null); new String[] { ssp }, null); } else if (SCHEME_TEL.equals(scheme)) { } else if (SCHEME_TEL.equals(scheme)) { createExtras.putString(Intents.Insert.PHONE, ssp); createExtras.putString(Intents.Insert.PHONE, ssp); mQueryHandler.startQuery(QUERY_TOKEN, null, mQueryHandler.startQuery(QUERY_TOKEN, null, Loading