2019-02-16 01:20:53 +03:00
|
|
|
/* -*- Mode: IDL; 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/.
|
|
|
|
*/
|
|
|
|
|
2019-03-14 04:25:07 +03:00
|
|
|
dictionary RemotenessOptions {
|
|
|
|
DOMString? remoteType;
|
|
|
|
FrameLoader? sameProcessAsFrameLoader;
|
|
|
|
WindowProxy? opener;
|
2019-04-17 03:53:28 +03:00
|
|
|
|
|
|
|
// Used to resume a given channel load within the target process. If present,
|
|
|
|
// it will be used rather than the `src` & `srcdoc` attributes on the
|
|
|
|
// frameloader to control the load behaviour.
|
|
|
|
unsigned long long pendingSwitchID;
|
2019-04-06 03:18:08 +03:00
|
|
|
boolean replaceBrowsingContext = false;
|
2019-03-14 04:25:07 +03:00
|
|
|
};
|
|
|
|
|
2019-05-08 14:47:19 +03:00
|
|
|
/**
|
|
|
|
* An interface implemented by elements that are 'browsing context containers'
|
|
|
|
* in HTML5 terms (that is, elements such as iframe that creates a new
|
|
|
|
* browsing context):
|
|
|
|
*
|
|
|
|
* https://html.spec.whatwg.org/#browsing-context-container
|
|
|
|
*
|
|
|
|
* Object implementing this interface must implement nsFrameLoaderOwner in
|
|
|
|
* native C++ code.
|
|
|
|
*/
|
2018-07-06 03:14:29 +03:00
|
|
|
[NoInterfaceObject]
|
|
|
|
interface MozFrameLoaderOwner {
|
|
|
|
[ChromeOnly]
|
|
|
|
readonly attribute FrameLoader? frameLoader;
|
|
|
|
|
2019-04-08 19:27:28 +03:00
|
|
|
[ChromeOnly]
|
|
|
|
readonly attribute BrowsingContext? browsingContext;
|
|
|
|
|
2018-07-06 03:14:29 +03:00
|
|
|
[ChromeOnly, Throws]
|
|
|
|
void presetOpenerWindow(WindowProxy? window);
|
|
|
|
|
|
|
|
[ChromeOnly, Throws]
|
|
|
|
void swapFrameLoaders(XULFrameElement aOtherLoaderOwner);
|
|
|
|
|
|
|
|
[ChromeOnly, Throws]
|
|
|
|
void swapFrameLoaders(HTMLIFrameElement aOtherLoaderOwner);
|
2019-03-14 04:25:07 +03:00
|
|
|
|
|
|
|
[ChromeOnly, Throws]
|
2019-07-03 10:52:35 +03:00
|
|
|
void changeRemoteness(optional RemotenessOptions aOptions = {});
|
2018-07-06 03:14:29 +03:00
|
|
|
};
|