2012-05-21 04:12:37 -07:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2007-08-28 08:41:33 -07:00
|
|
|
/*
|
|
|
|
* -setDefaultBrowser commandline handler
|
|
|
|
* Makes the current executable the "default browser".
|
2007-03-22 10:30:00 -07:00
|
|
|
*/
|
|
|
|
|
2007-08-28 08:41:33 -07:00
|
|
|
const Cc = Components.classes;
|
|
|
|
const Ci = Components.interfaces;
|
|
|
|
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2007-08-28 08:41:33 -07:00
|
|
|
function nsSetDefaultBrowser() {}
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2007-08-28 08:41:33 -07:00
|
|
|
nsSetDefaultBrowser.prototype = {
|
|
|
|
handle: function nsSetDefault_handle(aCmdline) {
|
|
|
|
if (aCmdline.handleFlag("setDefaultBrowser", false)) {
|
|
|
|
var shell = Cc["@mozilla.org/browser/shell-service;1"].
|
|
|
|
getService(Ci.nsIShellService);
|
2007-03-22 10:30:00 -07:00
|
|
|
shell.setDefaultBrowser(true, true);
|
|
|
|
}
|
|
|
|
},
|
|
|
|
|
2009-10-09 03:50:42 -07:00
|
|
|
helpInfo: " -setDefaultBrowser Set this app as the default browser.\n",
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2007-08-28 08:41:33 -07:00
|
|
|
classID: Components.ID("{F57899D0-4E2C-4ac6-9E29-50C736103B0C}"),
|
|
|
|
QueryInterface: XPCOMUtils.generateQI([Ci.nsICommandLineHandler]),
|
2010-06-22 09:59:15 -07:00
|
|
|
};
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2012-10-31 09:13:28 -07:00
|
|
|
this.NSGetFactory = XPCOMUtils.generateNSGetFactory([nsSetDefaultBrowser]);
|