summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
diff options
context:
space:
mode:
authorcalderwoodra <calderwoodra@google.com>2017-10-17 15:54:45 -0700
committerEric Erfanian <erfanian@google.com>2017-10-17 20:10:38 -0700
commitfe7e9e1d5a083bfe376df0d54bcf632f60012dcf (patch)
tree903650b336b90175f9d9dad64dc36c21848cd65b /java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
parente1c4dc99304e117325bc8c92731c2c64f2c79400 (diff)
Contacts are now searchable by company name.
This change coalesces Cp2 contacts into a new cursor so that they can be associated with the Company name. The following logs can help explain how the data is organizes in the original cursor: display Name (A Pixel), lookupKey (3535i7a9673fc89b77de3), mimeType (vnd.android.cursor.item/name), data1 (A Pixel) display Name (A Pixel), lookupKey (3535i7a9673fc89b77de3), mimeType (vnd.android.cursor.item/note), data1 () display Name (A Pixel), lookupKey (3535i7a9673fc89b77de3), mimeType (vnd.android.cursor.item/group_membership), data1 (1) display Name (A Pixel), lookupKey (3535i7a9673fc89b77de3), mimeType (vnd.android.cursor.item/phone_v2), data1 (+1 650-200-7932) display Name (A Pixel), lookupKey (3535i7a9673fc89b77de3), mimeType (vnd.android.cursor.item/phone_v2), data1 (+1 540-555-6666) display Name (A Pixel), lookupKey (3535i7a9673fc89b77de3), mimeType (vnd.android.cursor.item/organization), data1 (Walmart) This is an example of what is returned for a single contact. We can easily associate contact rows together using the lookup key and determine which rows have relevant data by checking the mime type. I use the data here to coalesce the contacts together into one row for easy parsing in ContactFilterCursor. Rows with mime type phone_v2 contain contact information (for example, this contact has 2 phone numbers). Rows with mime type organization contain contact's company information (for example, this contact works at Walmart). Bug: 67675742,64894607,67848713 Test: existing + SCCT.filter_companyName PiperOrigin-RevId: 172528797 Change-Id: I5c9f66ff0c27276869295eff97bb0216f92995be
Diffstat (limited to 'java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java')
-rw-r--r--java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java b/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
index 775f8deec..6b5cea88d 100644
--- a/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
+++ b/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
@@ -81,6 +81,10 @@ public class QueryFilteringUtil {
* </ul>
*/
public static boolean nameContainsQuery(String query, String name) {
+ if (TextUtils.isEmpty(name)) {
+ return false;
+ }
+
return Pattern.compile("(^|\\s)" + Pattern.quote(query.toLowerCase()))
.matcher(name.toLowerCase())
.find();