From 0afd6bab1c6d1111a23802ff7381e3b4694c92e3 Mon Sep 17 00:00:00 2001 From: uabdullah Date: Thu, 29 Mar 2018 17:19:55 -0700 Subject: Update what happens when donation is rejected & use correct donation availability check Checking donation is not a simple config check, but everything that donation availability is dependent on via the isVoicemailDonationAvailable() helper method. We update the code accordingly. When the user declines the promo for donation, we should also update the toggle accordingly. Bug: 74033229 Test: N/A PiperOrigin-RevId: 191011808 Change-Id: I6e4ff9914355deed72175179fc7b9009f2395ef5 --- java/com/android/dialer/app/calllog/PhoneCallDetailsHelper.java | 3 +++ .../com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/java/com/android/dialer/app/calllog/PhoneCallDetailsHelper.java b/java/com/android/dialer/app/calllog/PhoneCallDetailsHelper.java index 096488a39..680424a78 100644 --- a/java/com/android/dialer/app/calllog/PhoneCallDetailsHelper.java +++ b/java/com/android/dialer/app/calllog/PhoneCallDetailsHelper.java @@ -356,6 +356,9 @@ public class PhoneCallDetailsHelper new DialogInterface.OnClickListener() { @Override public void onClick(final DialogInterface dialog, final int button) { + VoicemailComponent.get(context) + .getVoicemailClient() + .setVoicemailDonationEnabled(context, details.accountHandle, false); dialog.cancel(); recordPromoShown(context); ratingView.setVisibility(View.GONE); diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java b/java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java index f6035fd2c..60a6811ac 100644 --- a/java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java +++ b/java/com/android/voicemail/impl/transcribe/TranscriptionTaskAsync.java @@ -116,7 +116,9 @@ public class TranscriptionTaskAsync extends TranscriptionTask { // Generate the transcript id locally if configured to do so, or if voicemail donation is // available (because rating donating voicemails requires locally generated voicemail ids). if (configProvider.useClientGeneratedVoicemailIds() - || configProvider.isVoicemailDonationAvailable()) { + || VoicemailComponent.get(context) + .getVoicemailClient() + .isVoicemailDonationAvailable(context, phoneAccountHandle)) { // The server currently can't handle repeated transcription id's so if we add the Uri to the // fingerprint (which contains the voicemail id) which is different each time a voicemail is // downloaded. If this becomes a problem then it should be possible to change the server -- cgit v1.2.3