|
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/. */ |
|
4 |
|
5 #include "nsISupports.idl" |
|
6 |
|
7 interface nsIHandlerInfo; |
|
8 interface nsIHelperAppLauncher; |
|
9 interface nsIURI; |
|
10 interface nsIInterfaceRequestor; |
|
11 |
|
12 /** |
|
13 * This is used to ask a user what they would like to do with a given piece of |
|
14 * content. |
|
15 */ |
|
16 [scriptable, uuid(456ca3b2-02be-4f97-89a2-08c08d3ad88f)] |
|
17 interface nsIContentDispatchChooser : nsISupports { |
|
18 /** |
|
19 * This request is passed to the helper app dialog because Gecko can not |
|
20 * handle content of this type. |
|
21 */ |
|
22 const unsigned long REASON_CANNOT_HANDLE = 0; |
|
23 |
|
24 /** |
|
25 * Asks the user what to do with the content. |
|
26 * |
|
27 * @param aHander |
|
28 * The interface describing the details of how this content should or |
|
29 * can be handled. |
|
30 * @param aWindowContext |
|
31 * The parent window context to show this chooser. This can be null, |
|
32 * and some implementations may not care about it. Generally, you'll |
|
33 * want to pass an nsIDOMWindow in so the chooser can be properly |
|
34 * parented when opened. |
|
35 * @param aURI |
|
36 * The URI of the resource that we are asking about. |
|
37 * @param aReason |
|
38 * The reason why we are asking (see above). |
|
39 */ |
|
40 void ask(in nsIHandlerInfo aHandler, |
|
41 in nsIInterfaceRequestor aWindowContext, |
|
42 in nsIURI aURI, |
|
43 in unsigned long aReason); |
|
44 }; |
|
45 |