mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
94 lines
4.2 KiB
Plaintext
94 lines
4.2 KiB
Plaintext
/* -*- 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/. */
|
|
|
|
/* Private "control" methods on the Window Watcher. These are annoying
|
|
bookkeeping methods, not part of the public (embedding) interface.
|
|
*/
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
interface nsIDOMWindow;
|
|
interface nsISimpleEnumerator;
|
|
interface nsIWebBrowserChrome;
|
|
interface nsIDocShellTreeItem;
|
|
interface nsIArray;
|
|
|
|
[uuid(00788A84-152F-4BD8-A814-FD8EB545DB29)]
|
|
|
|
interface nsPIWindowWatcher : nsISupports
|
|
{
|
|
/** A window has been created. Add it to our list.
|
|
@param aWindow the window to add
|
|
@param aChrome the corresponding chrome window. The DOM window
|
|
and chrome will be mapped together, and the corresponding
|
|
chrome can be retrieved using the (not private)
|
|
method getChromeForWindow. If null, any extant mapping
|
|
will be cleared.
|
|
*/
|
|
void addWindow(in nsIDOMWindow aWindow, in nsIWebBrowserChrome aChrome);
|
|
|
|
/** A window has been closed. Remove it from our list.
|
|
@param aWindow the window to remove
|
|
*/
|
|
void removeWindow(in nsIDOMWindow aWindow);
|
|
|
|
/** Like the public interface's open(), but can handle openDialog-style
|
|
arguments and calls which shouldn't result in us navigating the window.
|
|
|
|
@param aParent parent window, if any. Null if no parent. If it is
|
|
impossible to get to an nsIWebBrowserChrome from aParent, this
|
|
method will effectively act as if aParent were null.
|
|
@param aURL url to which to open the new window. Must already be
|
|
escaped, if applicable. can be null.
|
|
@param aName window name from JS window.open. can be null. If a window
|
|
with this name already exists, the openWindow call may just load
|
|
aUrl in it (if aUrl is not null) and return it.
|
|
@param aFeatures window features from JS window.open. can be null.
|
|
@param aCalledFromScript true if we were called from script.
|
|
@param aDialog use dialog defaults (see nsIDOMWindow::openDialog)
|
|
@param aNavigate true if we should navigate the new window to the
|
|
specified URL.
|
|
@param aArgs Window argument
|
|
@return the new window
|
|
|
|
@note This method may examine the JS context stack for purposes of
|
|
determining the security context to use for the search for a given
|
|
window named aName.
|
|
@note This method should try to set the default charset for the new
|
|
window to the default charset of the document in the calling window
|
|
(which is determined based on the JS stack and the value of
|
|
aParent). This is not guaranteed, however.
|
|
*/
|
|
nsIDOMWindow openWindow2(in nsIDOMWindow aParent, in string aUrl,
|
|
in string aName, in string aFeatures,
|
|
in boolean aCalledFromScript, in boolean aDialog,
|
|
in boolean aNavigate, in nsISupports aArgs);
|
|
|
|
/**
|
|
* Find a named docshell tree item amongst all windows registered
|
|
* with the window watcher. This may be a subframe in some window,
|
|
* for example.
|
|
*
|
|
* @param aName the name of the window. Must not be null.
|
|
* @param aRequestor the tree item immediately making the request.
|
|
* We should make sure to not recurse down into its findItemWithName
|
|
* method.
|
|
* @param aOriginalRequestor the original treeitem that made the request.
|
|
* Used for security checks.
|
|
* @return the tree item with aName as the name, or null if there
|
|
* isn't one. "Special" names, like _self, _top, etc, will be
|
|
* treated specially only if aRequestor is null; in that case they
|
|
* will be resolved relative to the first window the windowwatcher
|
|
* knows about.
|
|
* @see findItemWithName methods on nsIDocShellTreeItem and
|
|
* nsIDocShellTreeOwner
|
|
*/
|
|
nsIDocShellTreeItem findItemWithName(in wstring aName,
|
|
in nsIDocShellTreeItem aRequestor,
|
|
in nsIDocShellTreeItem aOriginalRequestor);
|
|
};
|
|
|