summaryrefslogtreecommitdiffstats
path: root/embedding/components/windowwatcher/nsIPromptService2.idl
blob: 4afa0975b2e3a1f43d9b293c26791502983ad087 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/* 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 "nsIPromptService.idl"

interface nsIAuthInformation;
interface nsIAuthPromptCallback;
interface nsICancelable;
interface nsIChannel;
interface mozIDOMWindowProxy;

/**
 * This is an improved version of nsIPromptService that is less prescriptive
 * about the resulting user interface.
 *
 * @status INCOMPLETE do not freeze before fixing bug 228207
 */
[scriptable, uuid(3775ad32-8326-422b-9ff3-87ef1d3f9f0e)]
interface nsIPromptService2 : nsIPromptService {
  // NOTE: These functions differ from their nsIAuthPrompt counterparts by
  // having additional checkbox parameters
  // checkValue can be null meaning to show no checkbox
  // checkboxLabel is a wstring so that it can be null from both JS and C++ in
  // a convenient way
  //
  // See nsIAuthPrompt2 for documentation on the semantics of the other
  // parameters.
  boolean promptAuth(in mozIDOMWindowProxy aParent,
                     in nsIChannel aChannel,
                     in uint32_t level,
                     in nsIAuthInformation authInfo,
                     in wstring checkboxLabel,
                     inout boolean checkValue);

  nsICancelable asyncPromptAuth(in mozIDOMWindowProxy aParent,
                                in nsIChannel aChannel,
                                in nsIAuthPromptCallback aCallback,
                                in nsISupports aContext,
                                in uint32_t level,
                                in nsIAuthInformation authInfo,
                                in wstring checkboxLabel,
                                inout boolean checkValue);
};