Bug 1276027 - Add a Telemetry probe to track how often Firefox is used as the default handler. r=bsmedberg r?rstrong
MozReview-Commit-ID: Ar3MaKeUIdz
--- a/browser/components/nsBrowserContentHandler.js
+++ b/browser/components/nsBrowserContentHandler.js
@@ -705,16 +705,26 @@ nsDefaultCommandLineHandler.prototype =
return this;
},
_haveProfile: false,
/* nsICommandLineHandler */
handle : function dch_handle(cmdLine) {
+ // The -url flag is inserted by the operating system when the default
+ // application handler is used. We check for default browser to remove
+ // instances where users explicitly decide to "open with" the browser.
+ if (cmdLine.findFlag("url", false) &&
+ ShellService.isDefaultBrowser(false, false)) {
+ try {
+ Services.telemetry.getHistogramById("FX_STARTUP_EXTERNAL_CONTENT_HANDLER").add();
+ } catch (e) {}
+ }
+
var urilist = [];
if (AppConstants.platform == "win") {
// If we don't have a profile selected yet (e.g. the Profile Manager is
// displayed) we will crash if we open an url and then select a profile. To
// prevent this handle all url command line flags and set the command line's
// preventDefault to true to prevent the display of the ui. The initial
// command line will be retained when nsAppRunner calls LaunchChild though
--- a/toolkit/components/telemetry/Histograms.json
+++ b/toolkit/components/telemetry/Histograms.json
@@ -4439,16 +4439,23 @@
"bug_numbers": [1275114],
"alert_emails": ["gijs@mozilla.com"],
"expires_in_version": "53",
"kind": "enumerated",
"n_values": 15,
"releaseChannelCollection": "opt-out",
"description": "The browser that was the default on the initial profile migration. The values correspond to the internal browser ID (see MigrationUtils.jsm)"
},
+ "FX_STARTUP_EXTERNAL_CONTENT_HANDLER": {
+ "bug_numbers": [1276027],
+ "alert_emails": ["jaws@mozilla.com"],
+ "expires_in_version": "53",
+ "kind": "count",
+ "description": "Count how often the browser is opened as an external app handler. This is generally used when the browser is set as the default browser."
+ },
"INPUT_EVENT_RESPONSE_MS": {
"alert_emails": ["perf-telemetry-alerts@mozilla.com"],
"bug_numbers": [1235908],
"expires_in_version": "never",
"kind": "exponential",
"high": 10000,
"n_buckets": 50,
"description": "Time (ms) from the Input event being created to the end of it being handled"