diff options
author | wangqi <wangqi@google.com> | 2018-05-04 15:22:45 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-05-09 16:48:38 -0700 |
commit | 3768a7aa54bdcb14046df258585dfdbc5b04fbb8 (patch) | |
tree | 322a050e25153de717f065032985b016380bfa18 /java | |
parent | f3d253b1333aa516c1dbbe7c3fb03ac5e27f82c2 (diff) |
Fix bug that showing block option for private number.
This happens when the number exists in call log, which usually shouldn't happen but some OEMs may have different behavior. Adding an additional check to align it with call action so block option won't show up if the number is not callable.
Bug: 79202933
Test: verified on LG device.
PiperOrigin-RevId: 195480184
Change-Id: Icde5f5b0914b2198d9031d188b22a65d6a3085cc
Diffstat (limited to 'java')
-rw-r--r-- | java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java index 54748387e..b7781f343 100644 --- a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java +++ b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java @@ -782,7 +782,7 @@ public final class CallLogListItemViewHolder extends RecyclerView.ViewHolder callComposeButtonView.setVisibility(isCallComposerCapable ? View.VISIBLE : View.GONE); - updateBlockReportActions(isVoicemailNumber); + updateBlockReportActions(canPlaceCallToNumber, isVoicemailNumber); } private boolean isFullyUndialableVoicemail() { @@ -1172,14 +1172,15 @@ public final class CallLogListItemViewHolder extends RecyclerView.ViewHolder } } - private void updateBlockReportActions(boolean isVoicemailNumber) { + private void updateBlockReportActions(boolean canPlaceCallToNumber, boolean isVoicemailNumber) { // Set block/spam actions. blockReportView.setVisibility(View.GONE); blockView.setVisibility(View.GONE); unblockView.setVisibility(View.GONE); reportNotSpamView.setVisibility(View.GONE); String e164Number = PhoneNumberUtils.formatNumberToE164(number, countryIso); - if (isVoicemailNumber + if (!canPlaceCallToNumber + || isVoicemailNumber || !FilteredNumbersUtil.canBlockNumber(context, e164Number, number) || !FilteredNumberCompat.canAttemptBlockOperations(context)) { return; @@ -1260,7 +1261,9 @@ public final class CallLogListItemViewHolder extends RecyclerView.ViewHolder String e164Number = PhoneNumberUtils.formatNumberToE164(number, countryIso); boolean isVoicemailNumber = callLogCache.isVoicemailNumber(accountHandle, number); - if (!isVoicemailNumber + boolean canPlaceCallToNumber = PhoneNumberHelper.canPlaceCallsTo(number, numberPresentation); + if (canPlaceCallToNumber + && !isVoicemailNumber && FilteredNumbersUtil.canBlockNumber(context, e164Number, number) && FilteredNumberCompat.canAttemptBlockOperations(context)) { boolean isBlocked = blockId != null; |