From 0cbbf4a7e6be836c24f6257fbdee8a03d70d927b Mon Sep 17 00:00:00 2001 From: maxwelb Date: Mon, 8 Jan 2018 16:43:06 -0800 Subject: Hide emergency calls in the call log Bug: 38494024,66926712 Test: CallLogAdapterTest, manually checked UI PiperOrigin-RevId: 181238101 Change-Id: I1b718e30a4bc874e098e30a3aaae39bdd69d0c9a --- java/com/android/dialer/app/calllog/CallLogAdapter.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/java/com/android/dialer/app/calllog/CallLogAdapter.java b/java/com/android/dialer/app/calllog/CallLogAdapter.java index 261b0ec94..963967ffc 100644 --- a/java/com/android/dialer/app/calllog/CallLogAdapter.java +++ b/java/com/android/dialer/app/calllog/CallLogAdapter.java @@ -39,6 +39,7 @@ import android.support.v7.app.AlertDialog; import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView.ViewHolder; import android.telecom.PhoneAccountHandle; +import android.telephony.PhoneNumberUtils; import android.text.TextUtils; import android.util.ArrayMap; import android.util.ArraySet; @@ -802,7 +803,7 @@ public class CallLogAdapter extends GroupingListAdapter int groupSize = getGroupSize(position); CallDetailsEntries callDetailsEntries = createCallDetailsEntries(c, groupSize); PhoneCallDetails details = createPhoneCallDetails(c, groupSize, views); - if (hiddenRowIds.contains(c.getLong(CallLogQuery.ID))) { + if (isHiddenRow(views.number, c.getLong(CallLogQuery.ID))) { views.callLogEntryView.setVisibility(View.GONE); views.dayGroupHeader.setVisibility(View.GONE); return; @@ -827,6 +828,16 @@ public class CallLogAdapter extends GroupingListAdapter } } + private boolean isHiddenRow(@Nullable String number, long rowId) { + if (number != null && PhoneNumberUtils.isEmergencyNumber(number)) { + return true; + } + if (hiddenRowIds.contains(rowId)) { + return true; + } + return false; + } + private void loadAndRender( final CallLogListItemViewHolder viewHolder, final long rowId, -- cgit v1.2.3