diff options
Diffstat (limited to 'embedding/browser/nsIWebBrowserChrome3.idl')
-rw-r--r-- | embedding/browser/nsIWebBrowserChrome3.idl | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/embedding/browser/nsIWebBrowserChrome3.idl b/embedding/browser/nsIWebBrowserChrome3.idl new file mode 100644 index 000000000..a95cab911 --- /dev/null +++ b/embedding/browser/nsIWebBrowserChrome3.idl @@ -0,0 +1,61 @@ +/* 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 "nsIWebBrowserChrome2.idl" +#include "nsIURI.idl" +#include "nsIDOMNode.idl" + +interface nsIDocShell; +interface nsIInputStream; + +/** + * nsIWebBrowserChrome3 is an extension to nsIWebBrowserChrome2. + */ +[scriptable, uuid(542b6625-35a9-426a-8257-c12a345383b0)] +interface nsIWebBrowserChrome3 : nsIWebBrowserChrome2 +{ + /** + * Determines the appropriate target for a link. + * + * @param originalTarget + * The original link target. + * @param linkURI + * Link destination URI. + * @param aDOMNode + * Link DOM node. + * @param isAppTab + * Whether or not the link is in an app tab. + * @returns A new link target, if appropriate. + * Otherwise returns originalTarget. + */ + AString onBeforeLinkTraversal(in AString originalTarget, + in nsIURI linkURI, + in nsIDOMNode linkNode, + in boolean isAppTab); + + /** + * Determines whether a load should continue. + * + * @param aDocShell + * The docshell performing the load. + * @param aURI + * The URI being loaded. + * @param aReferrer + * The referrer of the load. + */ + bool shouldLoadURI(in nsIDocShell aDocShell, + in nsIURI aURI, + in nsIURI aReferrer); + + /** + * Attempts to load the currently loaded page into a fresh process to increase + * available memory. + * + * @param aDocShell + * The docshell performing the load. + */ + bool reloadInFreshProcess(in nsIDocShell aDocShell, + in nsIURI aURI, + in nsIURI aReferrer); +}; |