From 07d6d00a5cc6c1aeb1befaccc1e832b3d5b398d8 Mon Sep 17 00:00:00 2001 From: Android Dialer Date: Fri, 23 Mar 2018 21:10:59 -0700 Subject: Move spam setting related methods out of spam interface into a separate spam setting interface. Test: All the existing tests PiperOrigin-RevId: 190314880 Change-Id: I030acbd70120f508c5a4616757d89113524110fa --- .../app/calllog/BlockReportSpamListener.java | 17 +++-- .../android/dialer/app/calllog/CallLogAdapter.java | 2 +- .../app/calllog/VisualVoicemailUpdateTask.java | 27 +++---- .../ShowBlockReportSpamDialogReceiver.java | 23 +++--- java/com/android/dialer/spam/Spam.java | 37 --------- java/com/android/dialer/spam/SpamComponent.java | 2 + java/com/android/dialer/spam/SpamSettings.java | 72 ++++++++++++++++++ java/com/android/dialer/spam/SpamSettingsStub.java | 88 ++++++++++++++++++++++ java/com/android/dialer/spam/SpamStub.java | 52 ------------- java/com/android/dialer/spam/StubSpamModule.java | 3 + .../dialer/spam/promo/SpamBlockingPromoHelper.java | 16 ++-- java/com/android/incallui/call/CallList.java | 2 +- .../incallui/spam/SpamCallListListener.java | 11 +-- .../incallui/spam/SpamNotificationActivity.java | 8 +- 14 files changed, 221 insertions(+), 139 deletions(-) create mode 100644 java/com/android/dialer/spam/SpamSettings.java create mode 100644 java/com/android/dialer/spam/SpamSettingsStub.java diff --git a/java/com/android/dialer/app/calllog/BlockReportSpamListener.java b/java/com/android/dialer/app/calllog/BlockReportSpamListener.java index 5c7641c80..d52ac3241 100644 --- a/java/com/android/dialer/app/calllog/BlockReportSpamListener.java +++ b/java/com/android/dialer/app/calllog/BlockReportSpamListener.java @@ -32,6 +32,7 @@ import com.android.dialer.logging.Logger; import com.android.dialer.logging.ReportingLocation; import com.android.dialer.spam.Spam; import com.android.dialer.spam.SpamComponent; +import com.android.dialer.spam.SpamSettings; import com.android.dialer.spam.promo.SpamBlockingPromoHelper; /** Listener to show dialogs for block and report spam actions. */ @@ -43,6 +44,7 @@ public class BlockReportSpamListener implements CallLogListItemViewHolder.OnClic private final RecyclerView.Adapter adapter; private final FilteredNumberAsyncQueryHandler filteredNumberAsyncQueryHandler; private final Spam spam; + private final SpamSettings spamSettings; private final SpamBlockingPromoHelper spamBlockingPromoHelper; public BlockReportSpamListener( @@ -57,7 +59,8 @@ public class BlockReportSpamListener implements CallLogListItemViewHolder.OnClic this.adapter = adapter; this.filteredNumberAsyncQueryHandler = filteredNumberAsyncQueryHandler; spam = SpamComponent.get(context).spam(); - spamBlockingPromoHelper = new SpamBlockingPromoHelper(context, spam); + spamSettings = SpamComponent.get(context).spamSettings(); + spamBlockingPromoHelper = new SpamBlockingPromoHelper(context, spamSettings); } @Override @@ -69,10 +72,10 @@ public class BlockReportSpamListener implements CallLogListItemViewHolder.OnClic @NonNull final ContactSource.Type contactSourceType) { BlockReportSpamDialogs.DialogFragmentForBlockingNumberAndOptionallyReportingAsSpam.newInstance( displayNumber, - spam.isDialogReportSpamCheckedByDefault(), + spamSettings.isDialogReportSpamCheckedByDefault(), isSpamChecked -> { LogUtil.i("BlockReportSpamListener.onBlockReportSpam", "onClick"); - if (isSpamChecked && spam.isSpamEnabled()) { + if (isSpamChecked && spamSettings.isSpamEnabled()) { Logger.get(context) .logImpression( DialerImpression.Type @@ -110,10 +113,10 @@ public class BlockReportSpamListener implements CallLogListItemViewHolder.OnClic @NonNull final ContactSource.Type contactSourceType) { BlockReportSpamDialogs.DialogFragmentForBlockingNumberAndReportingAsSpam.newInstance( displayNumber, - spam.isSpamEnabled(), + spamSettings.isSpamEnabled(), () -> { LogUtil.i("BlockReportSpamListener.onBlock", "onClick"); - if (spam.isSpamEnabled()) { + if (spamSettings.isSpamEnabled()) { Logger.get(context) .logImpression( DialerImpression.Type @@ -154,7 +157,7 @@ public class BlockReportSpamListener implements CallLogListItemViewHolder.OnClic isSpam, () -> { LogUtil.i("BlockReportSpamListener.onUnblock", "onClick"); - if (isSpam && spam.isSpamEnabled()) { + if (isSpam && spamSettings.isSpamEnabled()) { Logger.get(context) .logImpression(DialerImpression.Type.REPORT_AS_NOT_SPAM_VIA_UNBLOCK_NUMBER); spam.reportNotSpamFromCallHistory( @@ -187,7 +190,7 @@ public class BlockReportSpamListener implements CallLogListItemViewHolder.OnClic displayNumber, () -> { LogUtil.i("BlockReportSpamListener.onReportNotSpam", "onClick"); - if (spam.isSpamEnabled()) { + if (spamSettings.isSpamEnabled()) { Logger.get(context) .logImpression(DialerImpression.Type.DIALOG_ACTION_CONFIRM_NUMBER_NOT_SPAM); spam.reportNotSpamFromCallHistory( diff --git a/java/com/android/dialer/app/calllog/CallLogAdapter.java b/java/com/android/dialer/app/calllog/CallLogAdapter.java index 376057ff5..de9b95e34 100644 --- a/java/com/android/dialer/app/calllog/CallLogAdapter.java +++ b/java/com/android/dialer/app/calllog/CallLogAdapter.java @@ -682,7 +682,7 @@ public class CallLogAdapter extends GroupingListAdapter contactInfoCache.start(); } contactsPreferences.refreshValue(ContactsPreferences.DISPLAY_ORDER_KEY); - isSpamEnabled = SpamComponent.get(activity).spam().isSpamEnabled(); + isSpamEnabled = SpamComponent.get(activity).spamSettings().isSpamEnabled(); getDuo().registerListener(this); notifyDataSetChanged(); } diff --git a/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java b/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java index 6d2581f46..4516382c5 100644 --- a/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java +++ b/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java @@ -36,7 +36,6 @@ import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; import com.android.dialer.notification.DialerNotificationManager; import com.android.dialer.phonenumbercache.ContactInfo; -import com.android.dialer.spam.Spam; import com.android.dialer.spam.SpamComponent; import com.android.dialer.telecom.TelecomUtil; import java.util.ArrayList; @@ -48,7 +47,7 @@ class VisualVoicemailUpdateTask implements Worker filterSpamNumbers( - Context context, Spam spam, List newCalls) { + private static List filterSpamNumbers(Context context, List newCalls) { Assert.isWorkerThread(); - if (!spam.isSpamBlockingEnabled()) { + if (!SpamComponent.get(context).spamSettings().isSpamBlockingEnabled()) { + LogUtil.w("VisualVoicemailUpdateTask.wwwwwwwwwwwww", "NOT ENABLED"); return newCalls; } List result = new ArrayList<>(); for (NewCall newCall : newCalls) { Logger.get(context).logImpression(DialerImpression.Type.INCOMING_VOICEMAIL_SCREENED); - if (spam.checkSpamStatusSynchronous(newCall.number, newCall.countryIso)) { + if (SpamComponent.get(context) + .spam() + .checkSpamStatusSynchronous(newCall.number, newCall.countryIso)) { LogUtil.i( "VisualVoicemailUpdateTask.filterSpamNumbers", "found voicemail from spam number, suppressing notification"); Logger.get(context) .logImpression(DialerImpression.Type.INCOMING_VOICEMAIL_AUTO_BLOCKED_AS_SPAM); } else { + LogUtil.w("VisualVoicemailUpdateTask.wwwwwwwwwwwww", "NOT SPAM NUMBER"); result.add(newCall); } } @@ -234,8 +235,7 @@ class VisualVoicemailUpdateTask implements Worker { LogUtil.i("ShowBlockReportSpamDialogReceiver.showDialogToReportNotSpam", "confirmed"); - Spam spam = SpamComponent.get(context).spam(); - if (spam.isSpamEnabled()) { + if (SpamComponent.get(context).spamSettings().isSpamEnabled()) { Logger.get(context) .logImpression(DialerImpression.Type.DIALOG_ACTION_CONFIRM_NUMBER_NOT_SPAM); - spam.reportNotSpamFromCallHistory( - dialogInfo.getNormalizedNumber(), - dialogInfo.getCountryIso(), - dialogInfo.getCallType(), - dialogInfo.getReportingLocation(), - dialogInfo.getContactSource()); + SpamComponent.get(context) + .spam() + .reportNotSpamFromCallHistory( + dialogInfo.getNormalizedNumber(), + dialogInfo.getCountryIso(), + dialogInfo.getCallType(), + dialogInfo.getReportingLocation(), + dialogInfo.getContactSource()); } }; diff --git a/java/com/android/dialer/spam/Spam.java b/java/com/android/dialer/spam/Spam.java index 09b7ce9c6..c22f541d8 100644 --- a/java/com/android/dialer/spam/Spam.java +++ b/java/com/android/dialer/spam/Spam.java @@ -16,8 +16,6 @@ package com.android.dialer.spam; -import android.content.Context; -import android.content.Intent; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import com.android.dialer.DialerPhoneNumber; @@ -31,23 +29,6 @@ import com.google.common.util.concurrent.ListenableFuture; /** Allows the container application to mark calls as spam. */ public interface Spam { - boolean isSpamEnabled(); - - boolean isSpamNotificationEnabled(); - - boolean isSpamBlockingAvailable(); - - boolean isSpamBlockingEnabled(); - - boolean isDialogEnabledForSpamNotification(); - - boolean isDialogReportSpamCheckedByDefault(); - - /** @return what percentage of aftercall notifications to show to the user */ - int percentOfSpamNotificationsToShow(); - - int percentOfNonSpamNotificationsToShow(); - /** * Checks if each of numbers in the given list is suspected of being a spam. * @@ -184,28 +165,10 @@ public interface Spam { ReportingLocation.Type from, ContactSource.Type contactSourceType); - /** - * Modifies spam blocking setting. - * - * @param enabled Whether to enable or disable the setting. - * @param listener The callback to be invoked after setting change is done. - */ - void modifySpamBlockingSetting(boolean enabled, ModifySettingListener listener); - - /** Returns an intent to start spam blocking setting */ - Intent getSpamBlockingSettingIntent(Context context); - /** Callback to be invoked when data is fetched. */ interface Listener { /** Called when data is fetched. */ void onComplete(boolean isSpam); } - - /** Callback to be invoked when setting change completes. */ - interface ModifySettingListener { - - /** Called when setting change completes. */ - void onComplete(boolean success); - } } diff --git a/java/com/android/dialer/spam/SpamComponent.java b/java/com/android/dialer/spam/SpamComponent.java index 0bcdafac8..2b70b6fe1 100644 --- a/java/com/android/dialer/spam/SpamComponent.java +++ b/java/com/android/dialer/spam/SpamComponent.java @@ -26,6 +26,8 @@ public abstract class SpamComponent { public abstract Spam spam(); + public abstract SpamSettings spamSettings(); + public static SpamComponent get(Context context) { return ((SpamComponent.HasComponent) ((HasRootComponent) context.getApplicationContext()).component()) diff --git a/java/com/android/dialer/spam/SpamSettings.java b/java/com/android/dialer/spam/SpamSettings.java new file mode 100644 index 000000000..e0c06828f --- /dev/null +++ b/java/com/android/dialer/spam/SpamSettings.java @@ -0,0 +1,72 @@ +/* + * Copyright (C) 2018 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.dialer.spam; + +import android.content.Context; +import android.content.Intent; + +/** Allows the container application to interact with spam settings. */ +public interface SpamSettings { + + /** @return if spam module is enabled */ + boolean isSpamEnabled(); + + /** @return if spam after call notification is enabled */ + boolean isSpamNotificationEnabled(); + + /** @return if spam blocking is enabled */ + boolean isSpamBlockingEnabled(); + + /** @return if spam blocking user setting is controlled by carrier */ + boolean isSpamBlockingControlledByCarrier(); + + /** @return if spam blocking module is enabled by flag */ + boolean isSpamBlockingEnabledByFlag(); + + /** @return if spam blocking setting is enabled by user */ + boolean isSpamBlockingEnabledByUser(); + + /** @return if dialog is used by default for spam after call notification */ + boolean isDialogEnabledForSpamNotification(); + + /** @return if report spam is checked by default in block/report dialog */ + boolean isDialogReportSpamCheckedByDefault(); + + /** @return percentage of after call notifications for spam numbers to show to the user */ + int percentOfSpamNotificationsToShow(); + + /** @return percentage of after call notifications for nonspam numbers to show to the user */ + int percentOfNonSpamNotificationsToShow(); + + /** + * Modifies spam blocking setting. + * + * @param enabled Whether to enable or disable the setting. + * @param listener The callback to be invoked after setting change is done. + */ + void modifySpamBlockingSetting(boolean enabled, ModifySettingListener listener); + + /** @return an intent to start spam blocking setting */ + Intent getSpamBlockingSettingIntent(Context context); + + /** Callback to be invoked when setting change completes. */ + interface ModifySettingListener { + + /** Called when setting change completes. */ + void onComplete(boolean success); + } +} diff --git a/java/com/android/dialer/spam/SpamSettingsStub.java b/java/com/android/dialer/spam/SpamSettingsStub.java new file mode 100644 index 000000000..905daa45c --- /dev/null +++ b/java/com/android/dialer/spam/SpamSettingsStub.java @@ -0,0 +1,88 @@ +/* + * Copyright (C) 2018 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.dialer.spam; + +import android.content.Context; +import android.content.Intent; +import javax.inject.Inject; + +/** Default implementation of SpamSettings. */ +public class SpamSettingsStub implements SpamSettings { + + @Inject + public SpamSettingsStub() {} + + @Override + public boolean isSpamEnabled() { + return false; + } + + @Override + public boolean isSpamNotificationEnabled() { + return false; + } + + @Override + public boolean isSpamBlockingEnabledByFlag() { + return false; + } + + @Override + public boolean isSpamBlockingControlledByCarrier() { + return false; + } + + @Override + public boolean isSpamBlockingEnabled() { + return false; + } + + @Override + public boolean isSpamBlockingEnabledByUser() { + return false; + } + + @Override + public boolean isDialogEnabledForSpamNotification() { + return false; + } + + @Override + public boolean isDialogReportSpamCheckedByDefault() { + return false; + } + + @Override + public int percentOfSpamNotificationsToShow() { + return 0; + } + + @Override + public int percentOfNonSpamNotificationsToShow() { + return 0; + } + + @Override + public void modifySpamBlockingSetting(boolean enabled, ModifySettingListener listener) { + listener.onComplete(false); + } + + @Override + public Intent getSpamBlockingSettingIntent(Context context) { + return new Intent(); + } +} diff --git a/java/com/android/dialer/spam/SpamStub.java b/java/com/android/dialer/spam/SpamStub.java index 39b05fc58..28f26d13b 100644 --- a/java/com/android/dialer/spam/SpamStub.java +++ b/java/com/android/dialer/spam/SpamStub.java @@ -16,8 +16,6 @@ package com.android.dialer.spam; -import android.content.Context; -import android.content.Intent; import com.android.dialer.DialerPhoneNumber; import com.android.dialer.common.concurrent.Annotations.BackgroundExecutor; import com.android.dialer.logging.ContactLookupResult; @@ -41,46 +39,6 @@ public class SpamStub implements Spam { this.backgroundExecutorService = backgroundExecutorService; } - @Override - public boolean isSpamEnabled() { - return false; - } - - @Override - public boolean isSpamNotificationEnabled() { - return false; - } - - @Override - public boolean isSpamBlockingAvailable() { - return false; - } - - @Override - public boolean isSpamBlockingEnabled() { - return false; - } - - @Override - public boolean isDialogEnabledForSpamNotification() { - return false; - } - - @Override - public boolean isDialogReportSpamCheckedByDefault() { - return false; - } - - @Override - public int percentOfSpamNotificationsToShow() { - return 0; - } - - @Override - public int percentOfNonSpamNotificationsToShow() { - return 0; - } - @Override public ListenableFuture> batchCheckSpamStatus( ImmutableSet dialerPhoneNumbers) { @@ -168,14 +126,4 @@ public class SpamStub implements Spam { int callType, ReportingLocation.Type from, ContactSource.Type contactSourceType) {} - - @Override - public void modifySpamBlockingSetting(boolean enabled, ModifySettingListener listener) { - listener.onComplete(false); - } - - @Override - public Intent getSpamBlockingSettingIntent(Context context) { - return new Intent(); - } } diff --git a/java/com/android/dialer/spam/StubSpamModule.java b/java/com/android/dialer/spam/StubSpamModule.java index 0d3b917d2..5540408ad 100644 --- a/java/com/android/dialer/spam/StubSpamModule.java +++ b/java/com/android/dialer/spam/StubSpamModule.java @@ -25,4 +25,7 @@ public abstract class StubSpamModule { @Binds public abstract Spam bindSpam(SpamStub stub); + + @Binds + public abstract SpamSettings bindSpamSettings(SpamSettingsStub stub); } diff --git a/java/com/android/dialer/spam/promo/SpamBlockingPromoHelper.java b/java/com/android/dialer/spam/promo/SpamBlockingPromoHelper.java index 9349577c5..cba94e00d 100644 --- a/java/com/android/dialer/spam/promo/SpamBlockingPromoHelper.java +++ b/java/com/android/dialer/spam/promo/SpamBlockingPromoHelper.java @@ -25,7 +25,7 @@ import android.view.View; import com.android.dialer.configprovider.ConfigProviderBindings; import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; -import com.android.dialer.spam.Spam; +import com.android.dialer.spam.SpamSettings; /** Helper class for showing spam blocking on-boarding promotions. */ public class SpamBlockingPromoHelper { @@ -34,11 +34,11 @@ public class SpamBlockingPromoHelper { static final String SPAM_BLOCKING_PROMO_LAST_SHOW_MILLIS = "spam_blocking_promo_last_show_millis"; private final Context context; - private final Spam spam; + private final SpamSettings spamSettings; - public SpamBlockingPromoHelper(Context context, Spam spam) { + public SpamBlockingPromoHelper(Context context, SpamSettings spamSettings) { this.context = context; - this.spam = spam; + this.spamSettings = spamSettings; } /** Shows a spam blocking promo dialog with on complete snackbar if all the prerequisites meet. */ @@ -54,7 +54,7 @@ public class SpamBlockingPromoHelper { Logger.get(context) .logImpression( DialerImpression.Type.SPAM_BLOCKING_ENABLED_THROUGH_CALL_LOG_PROMO); - spam.modifySpamBlockingSetting( + spamSettings.modifySpamBlockingSetting( true, success -> showModifySettingOnCompleteSnackbar(view, success)); }) .show(fragmentManager, SpamBlockingPromoDialogFragment.SPAM_BLOCKING_PROMO_DIALOG_TAG); @@ -71,7 +71,9 @@ public class SpamBlockingPromoHelper { */ @VisibleForTesting boolean shouldShowSpamBlockingPromo() { - if (!spam.isSpamEnabled() || !spam.isSpamBlockingAvailable() || spam.isSpamBlockingEnabled()) { + if (!spamSettings.isSpamEnabled() + || !spamSettings.isSpamBlockingEnabledByFlag() + || spamSettings.isSpamBlockingEnabledByUser()) { return false; } @@ -109,7 +111,7 @@ public class SpamBlockingPromoHelper { Snackbar.make(view, snackBarText, Snackbar.LENGTH_LONG) .setAction( R.string.spam_blocking_setting_prompt, - v -> context.startActivity(spam.getSpamBlockingSettingIntent(context))) + v -> context.startActivity(spamSettings.getSpamBlockingSettingIntent(context))) .setActionTextColor( context.getResources().getColor(R.color.dialer_snackbar_action_text_color)) .show(); diff --git a/java/com/android/incallui/call/CallList.java b/java/com/android/incallui/call/CallList.java index 9a0902639..f639e5bdb 100644 --- a/java/com/android/incallui/call/CallList.java +++ b/java/com/android/incallui/call/CallList.java @@ -144,7 +144,7 @@ public class CallList implements DialerCallDelegate { Trace.beginSection("checkSpam"); call.addListener(new DialerCallListenerImpl(call)); LogUtil.d("CallList.onCallAdded", "callState=" + call.getState()); - if (SpamComponent.get(context).spam().isSpamEnabled()) { + if (SpamComponent.get(context).spamSettings().isSpamEnabled()) { String number = TelecomCallUtil.getNumber(telecomCall); SpamComponent.get(context) .spam() diff --git a/java/com/android/incallui/spam/SpamCallListListener.java b/java/com/android/incallui/spam/SpamCallListListener.java index 9ef65d877..e852f3d2c 100644 --- a/java/com/android/incallui/spam/SpamCallListListener.java +++ b/java/com/android/incallui/spam/SpamCallListListener.java @@ -205,7 +205,7 @@ public class SpamCallListListener implements CallList.Listener { /** Determines if the after call notification should be shown for the specified call. */ private boolean shouldShowAfterCallNotification(DialerCall call) { - if (!SpamComponent.get(context).spam().isSpamNotificationEnabled()) { + if (!SpamComponent.get(context).spamSettings().isSpamNotificationEnabled()) { return false; } @@ -305,7 +305,8 @@ public class SpamCallListListener implements CallList.Listener { private boolean shouldThrottleSpamNotification() { int randomNumber = random.nextInt(100); - int thresholdForShowing = SpamComponent.get(context).spam().percentOfSpamNotificationsToShow(); + int thresholdForShowing = + SpamComponent.get(context).spamSettings().percentOfSpamNotificationsToShow(); if (thresholdForShowing == 0) { LogUtil.d( "SpamCallListListener.shouldThrottleSpamNotification", @@ -329,7 +330,7 @@ public class SpamCallListListener implements CallList.Listener { private boolean shouldThrottleNonSpamNotification() { int randomNumber = random.nextInt(100); int thresholdForShowing = - SpamComponent.get(context).spam().percentOfNonSpamNotificationsToShow(); + SpamComponent.get(context).spamSettings().percentOfNonSpamNotificationsToShow(); if (thresholdForShowing == 0) { LogUtil.d( "SpamCallListListener.shouldThrottleNonSpamNotification", @@ -418,7 +419,7 @@ public class SpamCallListListener implements CallList.Listener { */ private PendingIntent createBlockReportSpamPendingIntent(DialerCall call) { String action = SpamNotificationActivity.ACTION_MARK_NUMBER_AS_SPAM; - return SpamComponent.get(context).spam().isDialogEnabledForSpamNotification() + return SpamComponent.get(context).spamSettings().isDialogEnabledForSpamNotification() ? createActivityPendingIntent(call, action) : createServicePendingIntent(call, action); } @@ -429,7 +430,7 @@ public class SpamCallListListener implements CallList.Listener { */ private PendingIntent createNotSpamPendingIntent(DialerCall call) { String action = SpamNotificationActivity.ACTION_MARK_NUMBER_AS_NOT_SPAM; - return SpamComponent.get(context).spam().isDialogEnabledForSpamNotification() + return SpamComponent.get(context).spamSettings().isDialogEnabledForSpamNotification() ? createActivityPendingIntent(call, action) : createServicePendingIntent(call, action); } diff --git a/java/com/android/incallui/spam/SpamNotificationActivity.java b/java/com/android/incallui/spam/SpamNotificationActivity.java index 61d04a0d6..cb5f8e514 100644 --- a/java/com/android/incallui/spam/SpamNotificationActivity.java +++ b/java/com/android/incallui/spam/SpamNotificationActivity.java @@ -197,7 +197,7 @@ public class SpamNotificationActivity extends FragmentActivity { /** Creates and displays the dialog for whitelisting a number. */ private void maybeShowNotSpamDialog( final String number, final ContactLookupResult.Type contactLookupResultType) { - if (SpamComponent.get(this).spam().isDialogEnabledForSpamNotification()) { + if (SpamComponent.get(this).spamSettings().isDialogEnabledForSpamNotification()) { DialogFragmentForReportingNotSpam.newInstance( getFormattedNumber(number, this), new BlockReportSpamDialogs.OnConfirmListener() { @@ -216,7 +216,7 @@ public class SpamNotificationActivity extends FragmentActivity { /** Creates and displays the dialog for blocking/reporting a number as spam. */ private void maybeShowBlockReportSpamDialog( final String number, final ContactLookupResult.Type contactLookupResultType) { - if (SpamComponent.get(this).spam().isDialogEnabledForSpamNotification()) { + if (SpamComponent.get(this).spamSettings().isDialogEnabledForSpamNotification()) { String displayNumber = getFormattedNumber(number, this); maybeShowBlockNumberMigrationDialog( new BlockedNumbersMigrator.Listener() { @@ -225,7 +225,7 @@ public class SpamNotificationActivity extends FragmentActivity { DialogFragmentForBlockingNumberAndOptionallyReportingAsSpam.newInstance( displayNumber, SpamComponent.get(SpamNotificationActivity.this) - .spam() + .spamSettings() .isDialogReportSpamCheckedByDefault(), new BlockReportSpamDialogs.OnSpamDialogClickListener() { @Override @@ -319,7 +319,7 @@ public class SpamNotificationActivity extends FragmentActivity { } private void assertDialogsEnabled() { - if (!SpamComponent.get(this).spam().isDialogEnabledForSpamNotification()) { + if (!SpamComponent.get(this).spamSettings().isDialogEnabledForSpamNotification()) { throw new IllegalStateException( "Cannot start this activity with given action because dialogs are not enabled."); } -- cgit v1.2.3