/* 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 https://mozilla.org/MPL/2.0/. */ // This is a Servo-specific interface, used to represent windows // that are not similar-origin, so live in another script thread. // It is based on the interface for Window, but only contains the // accessors that do not throw security exceptions when called // cross-origin. // // Note that similar-origin windows are kept in the same script // thread, so this mechanism cannot be relied upon as the only // way to enforce security policy. // https://html.spec.whatwg.org/multipage/#window [Global=DissimilarOriginWindow, Exposed=(Window,DissimilarOriginWindow), LegacyNoInterfaceObject] interface DissimilarOriginWindow : GlobalScope { [LegacyUnforgeable] readonly attribute WindowProxy window; [BinaryName="Self_", Replaceable] readonly attribute WindowProxy self; [LegacyUnforgeable] readonly attribute WindowProxy? parent; [LegacyUnforgeable] readonly attribute WindowProxy? top; [Replaceable] readonly attribute WindowProxy frames; [Replaceable] readonly attribute unsigned long length; [LegacyUnforgeable] readonly attribute DissimilarOriginLocation location; undefined close(); readonly attribute boolean closed; [Throws] undefined postMessage(any message, USVString targetOrigin, optional sequence transfer = []); [Throws] undefined postMessage(any message, optional WindowPostMessageOptions options = {}); attribute any opener; undefined blur(); undefined focus(); };