/* 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/. */ #include "nsISupports.idl" webidl BrowsingContext; /** * This interface contains various specialized prompts that the app can * implement. */ [scriptable, uuid(7913837c-9623-11ea-bb37-0242ac130002)] interface nsIPromptCollection : nsISupports { /** * Puts up a dialog for the before unload prompt. * * @param aBrowsingContext * The browsing context the prompt should be opened for. * * @return Promise which resolves to true if the page should be allowed to * navigate away */ Promise asyncBeforeUnloadCheck(in BrowsingContext aBrowsingContext); /** * Puts up a dialog for the confirm repost prompt. * * @param aBrowsingContext * The browsing context the prompt should be opened for. * * @return true if the page should be allowed to repost data. */ boolean confirmRepost(in BrowsingContext aBrowsingContext); /** * Ask the user for confirmation to upload a selected folder. * * @param aBrowsingContext * The browsing context the prompt should be opened for. * @param aDirectoryName * Name of the folder that will be uploaded. * * @return true if the user confirmed the upload, false otherwise. */ boolean confirmFolderUpload(in BrowsingContext aBrowsingContext, in AString aDirectoryName); };