| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // https://dom.spec.whatwg.org/#mixin-documentorshadowroot |
| // https://w3c.github.io/webcomponents/spec/shadow/#extensions-to-the-documentorshadowroot-mixin |
| [ |
| LegacyTreatAsPartialInterface, |
| NoInterfaceObject |
| ] interface DocumentOrShadowRoot { |
| // Selection API |
| // https://w3c.github.io/selection-api/#extensions-to-document-interface |
| [Affects=Nothing] Selection? getSelection(); |
| // CSSOM View Module |
| // https://drafts.csswg.org/cssom-view/#extensions-to-the-document-interface |
| Element? elementFromPoint(double x, double y); |
| sequence<Element> elementsFromPoint(double x, double y); |
| [Affects=Nothing] readonly attribute Element? activeElement; |
| [SameObject] readonly attribute StyleSheetList styleSheets; |
| // PointerLock API |
| // https://w3c.github.io/pointerlock/ |
| readonly attribute Element? pointerLockElement; |
| // Fullscreen API |
| // https://fullscreen.spec.whatwg.org/ |
| [LenientSetter, RuntimeEnabled=FullscreenUnprefixed] readonly attribute Element? fullscreenElement; |
| [RuntimeEnabled=ConstructableStylesheets, RaisesException=Setter] attribute StyleSheetList adoptedStyleSheets; |
| }; |