diff options
Diffstat (limited to 'embedding/nsIWindowCreator.idl')
-rw-r--r-- | embedding/nsIWindowCreator.idl | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/embedding/nsIWindowCreator.idl b/embedding/nsIWindowCreator.idl new file mode 100644 index 000000000..ade2dc467 --- /dev/null +++ b/embedding/nsIWindowCreator.idl @@ -0,0 +1,41 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * 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/. */ + +/** + * nsIWindowCreator is a callback interface used by Gecko to create + * new browser windows. The application, either Mozilla or an embedding app, + * must provide an implementation of the Window Watcher component and + * notify the WindowWatcher during application initialization. + * @see nsIWindowWatcher + */ + +#include "nsISupports.idl" + +interface nsIWebBrowserChrome; + +[scriptable, uuid(30465632-A777-44cc-90F9-8145475EF999)] + +interface nsIWindowCreator : nsISupports { + + /** Create a new window. Gecko will/may call this method, if made + available to it, to create new windows. + @param parent parent window, if any. null if not. the newly created + window should be made a child/dependent window of + the parent, if any (and if the concept applies + to the underlying OS). + @param chromeFlags chrome features from nsIWebBrowserChrome + @return the new window + */ + nsIWebBrowserChrome createChromeWindow(in nsIWebBrowserChrome parent, + in uint32_t chromeFlags); +}; + +%{C++ +// {30465632-A777-44cc-90F9-8145475EF999} +#define NS_WINDOWCREATOR_IID \ + {0x30465632, 0xa777, 0x44cc, {0x90, 0xf9, 0x81, 0x45, 0x47, 0x5e, 0xf9, 0x99}} +%} + |