Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 /*
6 * -setDefaultBrowser commandline handler
7 * Makes the current executable the "default browser".
8 */
10 const Cc = Components.classes;
11 const Ci = Components.interfaces;
12 Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
14 function nsSetDefaultBrowser() {}
16 nsSetDefaultBrowser.prototype = {
17 handle: function nsSetDefault_handle(aCmdline) {
18 if (aCmdline.handleFlag("setDefaultBrowser", false)) {
19 var shell = Cc["@mozilla.org/browser/shell-service;1"].
20 getService(Ci.nsIShellService);
21 shell.setDefaultBrowser(true, true);
22 }
23 },
25 helpInfo: " -setDefaultBrowser Set this app as the default browser.\n",
27 classID: Components.ID("{F57899D0-4E2C-4ac6-9E29-50C736103B0C}"),
28 QueryInterface: XPCOMUtils.generateQI([Ci.nsICommandLineHandler]),
29 };
31 this.NSGetFactory = XPCOMUtils.generateNSGetFactory([nsSetDefaultBrowser]);