mirror of
https://github.com/servo/servo.git
synced 2025-06-28 11:03:39 +01:00
200 lines
6.6 KiB
Text
200 lines
6.6 KiB
Text
// GENERATED CONTENT - DO NOT EDIT
|
|
// Content was automatically extracted by Reffy into webref
|
|
// (https://github.com/w3c/webref)
|
|
// Source: CSSOM View Module (https://drafts.csswg.org/cssom-view-1/)
|
|
|
|
enum ScrollBehavior { "auto", "instant", "smooth" };
|
|
|
|
dictionary ScrollOptions {
|
|
ScrollBehavior behavior = "auto";
|
|
};
|
|
dictionary ScrollToOptions : ScrollOptions {
|
|
unrestricted double left;
|
|
unrestricted double top;
|
|
};
|
|
|
|
partial interface Window {
|
|
[NewObject] MediaQueryList matchMedia(CSSOMString query);
|
|
[SameObject, Replaceable] readonly attribute Screen screen;
|
|
[SameObject, Replaceable] readonly attribute VisualViewport? visualViewport;
|
|
|
|
// browsing context
|
|
undefined moveTo(long x, long y);
|
|
undefined moveBy(long x, long y);
|
|
undefined resizeTo(long width, long height);
|
|
undefined resizeBy(long x, long y);
|
|
|
|
// viewport
|
|
[Replaceable] readonly attribute long innerWidth;
|
|
[Replaceable] readonly attribute long innerHeight;
|
|
|
|
// viewport scrolling
|
|
[Replaceable] readonly attribute double scrollX;
|
|
[Replaceable] readonly attribute double pageXOffset;
|
|
[Replaceable] readonly attribute double scrollY;
|
|
[Replaceable] readonly attribute double pageYOffset;
|
|
undefined scroll(optional ScrollToOptions options = {});
|
|
undefined scroll(unrestricted double x, unrestricted double y);
|
|
undefined scrollTo(optional ScrollToOptions options = {});
|
|
undefined scrollTo(unrestricted double x, unrestricted double y);
|
|
undefined scrollBy(optional ScrollToOptions options = {});
|
|
undefined scrollBy(unrestricted double x, unrestricted double y);
|
|
|
|
// client
|
|
[Replaceable] readonly attribute long screenX;
|
|
[Replaceable] readonly attribute long screenLeft;
|
|
[Replaceable] readonly attribute long screenY;
|
|
[Replaceable] readonly attribute long screenTop;
|
|
[Replaceable] readonly attribute long outerWidth;
|
|
[Replaceable] readonly attribute long outerHeight;
|
|
[Replaceable] readonly attribute double devicePixelRatio;
|
|
};
|
|
|
|
[Exposed=Window]
|
|
interface MediaQueryList : EventTarget {
|
|
readonly attribute CSSOMString media;
|
|
readonly attribute boolean matches;
|
|
undefined addListener(EventListener? callback);
|
|
undefined removeListener(EventListener? callback);
|
|
attribute EventHandler onchange;
|
|
};
|
|
|
|
[Exposed=Window]
|
|
interface MediaQueryListEvent : Event {
|
|
constructor(CSSOMString type, optional MediaQueryListEventInit eventInitDict = {});
|
|
readonly attribute CSSOMString media;
|
|
readonly attribute boolean matches;
|
|
};
|
|
|
|
dictionary MediaQueryListEventInit : EventInit {
|
|
CSSOMString media = "";
|
|
boolean matches = false;
|
|
};
|
|
|
|
[Exposed=Window]
|
|
interface Screen {
|
|
readonly attribute long availWidth;
|
|
readonly attribute long availHeight;
|
|
readonly attribute long width;
|
|
readonly attribute long height;
|
|
readonly attribute unsigned long colorDepth;
|
|
readonly attribute unsigned long pixelDepth;
|
|
};
|
|
|
|
partial interface Document {
|
|
Element? elementFromPoint(double x, double y);
|
|
sequence<Element> elementsFromPoint(double x, double y);
|
|
CaretPosition? caretPositionFromPoint(double x, double y);
|
|
readonly attribute Element? scrollingElement;
|
|
};
|
|
|
|
[Exposed=Window]
|
|
interface CaretPosition {
|
|
readonly attribute Node offsetNode;
|
|
readonly attribute unsigned long offset;
|
|
[NewObject] DOMRect? getClientRect();
|
|
};
|
|
|
|
enum ScrollLogicalPosition { "start", "center", "end", "nearest" };
|
|
dictionary ScrollIntoViewOptions : ScrollOptions {
|
|
ScrollLogicalPosition block = "start";
|
|
ScrollLogicalPosition inline = "nearest";
|
|
};
|
|
|
|
dictionary CheckVisibilityOptions {
|
|
boolean checkOpacity = false;
|
|
boolean checkVisibilityCSS = false;
|
|
};
|
|
|
|
partial interface Element {
|
|
DOMRectList getClientRects();
|
|
[NewObject] DOMRect getBoundingClientRect();
|
|
|
|
boolean checkVisibility(optional CheckVisibilityOptions options = {});
|
|
|
|
undefined scrollIntoView(optional (boolean or ScrollIntoViewOptions) arg = {});
|
|
undefined scroll(optional ScrollToOptions options = {});
|
|
undefined scroll(unrestricted double x, unrestricted double y);
|
|
undefined scrollTo(optional ScrollToOptions options = {});
|
|
undefined scrollTo(unrestricted double x, unrestricted double y);
|
|
undefined scrollBy(optional ScrollToOptions options = {});
|
|
undefined scrollBy(unrestricted double x, unrestricted double y);
|
|
attribute unrestricted double scrollTop;
|
|
attribute unrestricted double scrollLeft;
|
|
readonly attribute long scrollWidth;
|
|
readonly attribute long scrollHeight;
|
|
readonly attribute long clientTop;
|
|
readonly attribute long clientLeft;
|
|
readonly attribute long clientWidth;
|
|
readonly attribute long clientHeight;
|
|
};
|
|
|
|
partial interface HTMLElement {
|
|
readonly attribute Element? offsetParent;
|
|
readonly attribute long offsetTop;
|
|
readonly attribute long offsetLeft;
|
|
readonly attribute long offsetWidth;
|
|
readonly attribute long offsetHeight;
|
|
};
|
|
|
|
partial interface HTMLImageElement {
|
|
readonly attribute long x;
|
|
readonly attribute long y;
|
|
};
|
|
|
|
partial interface Range {
|
|
DOMRectList getClientRects();
|
|
[NewObject] DOMRect getBoundingClientRect();
|
|
};
|
|
|
|
partial interface MouseEvent {
|
|
readonly attribute double pageX;
|
|
readonly attribute double pageY;
|
|
readonly attribute double x;
|
|
readonly attribute double y;
|
|
readonly attribute double offsetX;
|
|
readonly attribute double offsetY;
|
|
};
|
|
|
|
enum CSSBoxType { "margin", "border", "padding", "content" };
|
|
dictionary BoxQuadOptions {
|
|
CSSBoxType box = "border";
|
|
GeometryNode relativeTo; // XXX default document (i.e. viewport)
|
|
};
|
|
|
|
dictionary ConvertCoordinateOptions {
|
|
CSSBoxType fromBox = "border";
|
|
CSSBoxType toBox = "border";
|
|
};
|
|
|
|
interface mixin GeometryUtils {
|
|
sequence<DOMQuad> getBoxQuads(optional BoxQuadOptions options = {});
|
|
DOMQuad convertQuadFromNode(DOMQuadInit quad, GeometryNode from, optional ConvertCoordinateOptions options = {});
|
|
DOMQuad convertRectFromNode(DOMRectReadOnly rect, GeometryNode from, optional ConvertCoordinateOptions options = {});
|
|
DOMPoint convertPointFromNode(DOMPointInit point, GeometryNode from, optional ConvertCoordinateOptions options = {}); // XXX z,w turns into 0
|
|
};
|
|
|
|
Text includes GeometryUtils; // like Range
|
|
Element includes GeometryUtils;
|
|
CSSPseudoElement includes GeometryUtils;
|
|
Document includes GeometryUtils;
|
|
|
|
typedef (Text or Element or CSSPseudoElement or Document) GeometryNode;
|
|
|
|
[Exposed=Window]
|
|
interface VisualViewport : EventTarget {
|
|
readonly attribute double offsetLeft;
|
|
readonly attribute double offsetTop;
|
|
|
|
readonly attribute double pageLeft;
|
|
readonly attribute double pageTop;
|
|
|
|
readonly attribute double width;
|
|
readonly attribute double height;
|
|
|
|
readonly attribute double scale;
|
|
|
|
attribute EventHandler onresize;
|
|
attribute EventHandler onscroll;
|
|
attribute EventHandler onscrollend;
|
|
};
|