Merge "When declining Transcription ToS, we should hide the feature ToS."
diff --git a/java/com/android/dialer/voicemail/listui/error/VoicemailTosMessageCreator.java b/java/com/android/dialer/voicemail/listui/error/VoicemailTosMessageCreator.java
index 382118f..15eaa42 100644
--- a/java/com/android/dialer/voicemail/listui/error/VoicemailTosMessageCreator.java
+++ b/java/com/android/dialer/voicemail/listui/error/VoicemailTosMessageCreator.java
@@ -131,10 +131,23 @@
                   public void onClick(View v) {
                     LogUtil.i(
                         "VoicemailTosMessageCreator.getPromoMessage", "declined transcription");
-                    VoicemailClient voicemailClient =
-                        VoicemailComponent.get(context).getVoicemailClient();
-                    voicemailClient.setVoicemailTranscriptionEnabled(
-                        context, status.getPhoneAccountHandle(), false);
+                    if (isVoicemailTranscriptionAvailable()) {
+                      VoicemailClient voicemailClient =
+                          VoicemailComponent.get(context).getVoicemailClient();
+                      voicemailClient.setVoicemailTranscriptionEnabled(
+                          context, status.getPhoneAccountHandle(), false);
+                      // Feature acknowledgement also means accepting TOS, otherwise after removing
+                      // the feature ToS, we'll end up showing the ToS
+                      // TODO(uabdullah): Consider separating the ToS acceptance and feature
+                      // acknowledgment.
+                      recordTosAcceptance();
+                      recordFeatureAcknowledgement();
+                      statusReader.refresh();
+                    } else {
+                      LogUtil.e(
+                          "VoicemailTosMessageCreator.getPromoMessage",
+                          "voicemail transcription not available");
+                    }
                   }
                 }),
             new Action(