|
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- |
|
2 * |
|
3 * This Source Code Form is subject to the terms of the Mozilla Public |
|
4 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
6 |
|
7 /** |
|
8 * nsIWindowCreator is a callback interface used by Gecko to create |
|
9 * new browser windows. The application, either Mozilla or an embedding app, |
|
10 * must provide an implementation of the Window Watcher component and |
|
11 * notify the WindowWatcher during application initialization. |
|
12 * @see nsIWindowWatcher |
|
13 */ |
|
14 |
|
15 #include "nsISupports.idl" |
|
16 |
|
17 interface nsIWebBrowserChrome; |
|
18 |
|
19 [scriptable, uuid(30465632-A777-44cc-90F9-8145475EF999)] |
|
20 |
|
21 interface nsIWindowCreator : nsISupports { |
|
22 |
|
23 /** Create a new window. Gecko will/may call this method, if made |
|
24 available to it, to create new windows. |
|
25 @param parent parent window, if any. null if not. the newly created |
|
26 window should be made a child/dependent window of |
|
27 the parent, if any (and if the concept applies |
|
28 to the underlying OS). |
|
29 @param chromeFlags chrome features from nsIWebBrowserChrome |
|
30 @return the new window |
|
31 */ |
|
32 nsIWebBrowserChrome createChromeWindow(in nsIWebBrowserChrome parent, |
|
33 in uint32_t chromeFlags); |
|
34 }; |
|
35 |
|
36 %{C++ |
|
37 // {30465632-A777-44cc-90F9-8145475EF999} |
|
38 #define NS_WINDOWCREATOR_IID \ |
|
39 {0x30465632, 0xa777, 0x44cc, {0x90, 0xf9, 0x81, 0x45, 0x47, 0x5e, 0xf9, 0x99}} |
|
40 %} |
|
41 |