Bug 1259158 - Update tab queues prompt telemetry to use UI telemetry instead of histograms. r=sebastian,mfinkle draft
authorMargaret Leibovic <margaret.leibovic@gmail.com>
Fri, 01 Apr 2016 10:59:03 -0400
changeset 346764 fef41aa8e059d70d7a7160dfd0a7b1d876846f68
parent 346007 e14db462d31d566570e3bece66d5380f7b1ad400
child 517495 905a9561d1a2c5330e88cf1254f1db16fbb521cf
push id14433
push usermleibovic@mozilla.com
push dateFri, 01 Apr 2016 15:07:33 +0000
reviewerssebastian, mfinkle
bugs1259158
milestone48.0a1
Bug 1259158 - Update tab queues prompt telemetry to use UI telemetry instead of histograms. r=sebastian,mfinkle MozReview-Commit-ID: 4aws9Rcy5W1
mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
mobile/android/base/java/org/mozilla/gecko/tabqueue/TabQueuePrompt.java
toolkit/components/telemetry/Histograms.json
--- a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
+++ b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
@@ -1763,17 +1763,16 @@ public class BrowserApp extends GeckoApp
 
         } else if ("Telemetry:Gather".equals(event)) {
             final BrowserDB db = getProfile().getDB();
             final ContentResolver cr = getContentResolver();
             Telemetry.addToHistogram("PLACES_PAGES_COUNT", db.getCount(cr, "history"));
             Telemetry.addToHistogram("FENNEC_BOOKMARKS_COUNT", db.getCount(cr, "bookmarks"));
             Telemetry.addToHistogram("FENNEC_READING_LIST_COUNT", db.getReadingListAccessor().getCount(cr));
             Telemetry.addToHistogram("BROWSER_IS_USER_DEFAULT", (isDefaultBrowser(Intent.ACTION_VIEW) ? 1 : 0));
-            Telemetry.addToHistogram("FENNEC_TABQUEUE_ENABLED", (TabQueueHelper.isTabQueueEnabled(BrowserApp.this) ? 1 : 0));
             Telemetry.addToHistogram("FENNEC_CUSTOM_HOMEPAGE", (TextUtils.isEmpty(getHomepage()) ? 0 : 1));
             final SharedPreferences prefs = GeckoSharedPrefs.forProfile(getContext());
             final boolean hasCustomHomepanels = prefs.contains(HomeConfigPrefsBackend.PREFS_CONFIG_KEY) || prefs.contains(HomeConfigPrefsBackend.PREFS_CONFIG_KEY_OLD);
             Telemetry.addToHistogram("FENNEC_HOMEPANELS_CUSTOM", hasCustomHomepanels ? 1 : 0);
 
             if (Versions.feature16Plus) {
                 Telemetry.addToHistogram("BROWSER_IS_ASSIST_DEFAULT", (isDefaultBrowser(Intent.ACTION_ASSIST) ? 1 : 0));
             }
--- a/mobile/android/base/java/org/mozilla/gecko/tabqueue/TabQueuePrompt.java
+++ b/mobile/android/base/java/org/mozilla/gecko/tabqueue/TabQueuePrompt.java
@@ -4,16 +4,17 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 package org.mozilla.gecko.tabqueue;
 
 import org.mozilla.gecko.GeckoSharedPrefs;
 import org.mozilla.gecko.Locales;
 import org.mozilla.gecko.R;
 import org.mozilla.gecko.Telemetry;
+import org.mozilla.gecko.TelemetryContract;
 
 import android.annotation.TargetApi;
 import android.content.Intent;
 import android.net.Uri;
 import android.os.Build;
 import android.os.Bundle;
 import android.os.Handler;
 import android.provider.Settings;
@@ -44,30 +45,28 @@ public class TabQueuePrompt extends Loca
         super.onCreate(savedInstanceState);
 
         showTabQueueEnablePrompt();
     }
 
     private void showTabQueueEnablePrompt() {
         setContentView(R.layout.tab_queue_prompt);
 
-        final int numberOfTimesTabQueuePromptSeen = GeckoSharedPrefs.forApp(this).getInt(TabQueueHelper.PREF_TAB_QUEUE_TIMES_PROMPT_SHOWN, 0);
-
         final View okButton = findViewById(R.id.ok_button);
         okButton.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
                 onConfirmButtonPressed();
-                Telemetry.addToHistogram("FENNEC_TABQUEUE_PROMPT_ENABLE_YES", numberOfTimesTabQueuePromptSeen);
+                Telemetry.sendUIEvent(TelemetryContract.Event.ACTION, TelemetryContract.Method.BUTTON, "tabqueue_prompt_yes");
             }
         });
         findViewById(R.id.cancel_button).setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                Telemetry.addToHistogram("FENNEC_TABQUEUE_PROMPT_ENABLE_NO", numberOfTimesTabQueuePromptSeen);
+                Telemetry.sendUIEvent(TelemetryContract.Event.ACTION, TelemetryContract.Method.BUTTON, "tabqueue_prompt_no");
                 setResult(TabQueueHelper.TAB_QUEUE_NO);
                 finish();
             }
         });
         final View settingsButton = findViewById(R.id.settings_button);
         settingsButton.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -163,18 +162,17 @@ public class TabQueuePrompt extends Loca
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         if (requestCode != SETTINGS_REQUEST_CODE) {
             return;
         }
 
         if (TabQueueHelper.canDrawOverlays(this)) {
             // User granted the permission in Android's settings.
-            final int numberOfTimesTabQueuePromptSeen = GeckoSharedPrefs.forApp(this).getInt(TabQueueHelper.PREF_TAB_QUEUE_TIMES_PROMPT_SHOWN, 0);
-            Telemetry.addToHistogram("FENNEC_TABQUEUE_PROMPT_ENABLE_YES", numberOfTimesTabQueuePromptSeen);
+            Telemetry.sendUIEvent(TelemetryContract.Event.ACTION, TelemetryContract.Method.BUTTON, "tabqueue_prompt_yes");
 
             setResult(TabQueueHelper.TAB_QUEUE_YES);
             finish();
         }
     }
 
     /**
      * Slide the overlay down off the screen and destroy it.
--- a/toolkit/components/telemetry/Histograms.json
+++ b/toolkit/components/telemetry/Histograms.json
@@ -9283,33 +9283,16 @@
   },
   "FENNEC_TABQUEUE_QUEUESIZE" : {
     "expires_in_version": "never",
     "kind": "exponential",
     "high": 50,
     "n_buckets": 10,
     "description": "The number of tabs queued when opened."
   },
-  "FENNEC_TABQUEUE_PROMPT_ENABLE_YES" : {
-    "expires_in_version": "never",
-    "kind": "enumerated",
-    "n_values": 3,
-    "description": "The number of times the tab queue prompt was seen before the user selected YES."
-  },
-  "FENNEC_TABQUEUE_PROMPT_ENABLE_NO" : {
-    "expires_in_version": "never",
-    "kind": "enumerated",
-    "n_values": 3,
-    "description": "The number of times the tab queue prompt was seen before the user selected NO."
-  },
-  "FENNEC_TABQUEUE_ENABLED": {
-    "expires_in_version": "never",
-    "kind": "boolean",
-    "description": "Has the tab queue functionality been enabled."
-  },
   "FENNEC_CUSTOM_HOMEPAGE": {
     "expires_in_version": "50",
     "alert_emails": ["mobile-frontend@mozilla.com"],
     "bug_numbers": [1239102],
     "kind": "boolean",
     "description": "Whether the user has set a custom homepage."
   },
   "GRAPHICS_DRIVER_STARTUP_TEST": {