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/. */
|
2010-04-29 13:11:23 -07:00
|
|
|
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
|
2011-07-15 03:31:34 -07:00
|
|
|
interface nsIDOMWindow;
|
2010-04-29 13:11:23 -07:00
|
|
|
interface nsIVariant;
|
|
|
|
interface amIInstallCallback;
|
|
|
|
interface nsIURI;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* This interface is used to allow webpages to start installing add-ons.
|
|
|
|
*/
|
|
|
|
[scriptable, uuid(4fdf4f84-73dc-4857-9bbe-84895e8afd5d)]
|
|
|
|
interface amIWebInstaller : nsISupports
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* Checks if installation is enabled for a webpage.
|
|
|
|
*
|
2010-04-28 09:42:07 -07:00
|
|
|
* @param aMimetype
|
|
|
|
* The mimetype for the add-on to be installed
|
|
|
|
* @param referer
|
|
|
|
* The URL of the webpage trying to install an add-on
|
|
|
|
* @return true if installation is enabled
|
2010-04-29 13:11:23 -07:00
|
|
|
*/
|
2010-04-28 09:42:07 -07:00
|
|
|
boolean isInstallEnabled(in AString aMimetype, in nsIURI aReferer);
|
2010-04-29 13:11:23 -07:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Installs an array of add-ons at the request of a webpage
|
|
|
|
*
|
2010-04-28 09:42:07 -07:00
|
|
|
* @param aMimetype
|
|
|
|
* The mimetype for the add-ons
|
|
|
|
* @param aWindow
|
|
|
|
* The window installing the add-ons
|
|
|
|
* @param aReferer
|
|
|
|
* The URI for the webpage installing the add-ons
|
|
|
|
* @param aUris
|
|
|
|
* The URIs of add-ons to be installed
|
|
|
|
* @param aHashes
|
|
|
|
* The hashes for the add-ons to be installed
|
|
|
|
* @param aNames
|
|
|
|
* The names for the add-ons to be installed
|
|
|
|
* @param aIcons
|
|
|
|
* The icons for the add-ons to be installed
|
|
|
|
* @param aCallback
|
|
|
|
* An optional callback to notify about installation success and
|
|
|
|
* failure
|
|
|
|
* @param aInstallCount
|
|
|
|
* An optional argument including the number of add-ons to install
|
|
|
|
* @return true if the installation was successfully started
|
2010-04-29 13:11:23 -07:00
|
|
|
*/
|
2010-04-28 09:42:07 -07:00
|
|
|
boolean installAddonsFromWebpage(in AString aMimetype,
|
2011-07-15 03:31:34 -07:00
|
|
|
in nsIDOMWindow aWindow,
|
2010-04-28 09:42:07 -07:00
|
|
|
in nsIURI aReferer,
|
|
|
|
[array, size_is(aInstallCount)] in wstring aUris,
|
|
|
|
[array, size_is(aInstallCount)] in wstring aHashes,
|
|
|
|
[array, size_is(aInstallCount)] in wstring aNames,
|
|
|
|
[array, size_is(aInstallCount)] in wstring aIcons,
|
|
|
|
[optional] in amIInstallCallback aCallback,
|
2012-08-22 08:56:38 -07:00
|
|
|
[optional] in uint32_t aInstallCount);
|
2010-04-29 13:11:23 -07:00
|
|
|
};
|