Commit b4fff225 authored by Anthony Vallee-Dubois's avatar Anthony Vallee-Dubois Committed by Commit Bot

Log events in the Explicit Language Ask prompt to UMA

Bug: 891307
Change-Id: I9b3c2429dc9ebe96d3f06e904aaddfdb034c83f7
Reviewed-on: https://chromium-review.googlesource.com/c/1296809Reviewed-by: default avatarTheresa <twellington@chromium.org>
Reviewed-by: default avatarJesse Doherty <jwd@chromium.org>
Commit-Queue: anthonyvd <anthonyvd@chromium.org>
Cr-Commit-Position: refs/heads/master@{#603219}
parent d8ab2e4d
......@@ -17,6 +17,7 @@ import android.widget.ImageView;
import android.widget.TextView;
import org.chromium.base.LocaleUtils;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.ChromeFeatureList;
......@@ -40,6 +41,17 @@ import java.util.List;
* once at browser startup when no other promo or modals are shown.
*/
public class LanguageAskPrompt implements ModalDialogView.Controller {
// Enum values for the Translate.ExplicitLanguageAsk.Event histogram.
private static final int PROMPT_EVENT_SHOWN = 0;
private static final int PROMPT_EVENT_SAVED = 1;
private static final int PROMPT_EVENT_CANCELLED = 2;
private static final int PROMPT_EVENT_MAX = PROMPT_EVENT_CANCELLED;
private void recordPromptEvent(int event) {
RecordHistogram.recordEnumeratedHistogram(
"Translate.ExplicitLanguageAsk.Event", event, PROMPT_EVENT_MAX);
}
private class SeparatorViewHolder extends ViewHolder {
SeparatorViewHolder(View view) {
super(view);
......@@ -246,6 +258,8 @@ public class LanguageAskPrompt implements ModalDialogView.Controller {
public void show(ChromeActivity activity) {
if (activity == null) return;
recordPromptEvent(PROMPT_EVENT_SHOWN);
List<String> userAcceptLanguagesList =
PrefServiceBridge.getInstance().getUserLanguageCodes();
mInitialLanguages = new HashSet<String>();
......@@ -316,5 +330,11 @@ public class LanguageAskPrompt implements ModalDialogView.Controller {
}
@Override
public void onDismiss(@DialogDismissalCause int dismissalCause) {}
public void onDismiss(@DialogDismissalCause int dismissalCause) {
if (dismissalCause == DialogDismissalCause.POSITIVE_BUTTON_CLICKED) {
recordPromptEvent(PROMPT_EVENT_SAVED);
} else {
recordPromptEvent(PROMPT_EVENT_CANCELLED);
}
}
}
......@@ -49740,6 +49740,12 @@ Full version information for the fingerprint enum values:
<int value="6" label="Translation error"/>
</enum>
<enum name="TranslateExplicitAskPromptEventType">
<int value="0" label="Shown"/>
<int value="1" label="Saved"/>
<int value="2" label="Cancelled"/>
</enum>
<enum name="TranslateInitiationStatus">
<int value="0" label="Completely disabled by prefs"/>
<int value="1" label="Completely disabled by switch"/>
......@@ -111682,6 +111682,16 @@ uploading your change for review.
</summary>
</histogram>
<histogram name="Translate.ExplicitLanguageAsk.Event"
enum="TranslateExplicitAskPromptEventType">
<owner>yyushkina@google.com</owner>
<owner>anthonyvd@google.com</owner>
<summary>
The events (shown, saved, cancelled) happening in the Explicit Language Ask
prompt.
</summary>
</histogram>
<histogram name="Translate.ExplicitLanguageAsk.LanguageAdded"
enum="CLD3LanguageCode">
<owner>yyushkina@google.com</owner>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment