mirror of
https://github.com/servo/servo.git
synced 2025-08-11 08:25:32 +01:00
Selection interface working for synthetic operations
This commit is contained in:
parent
e697e6cca7
commit
5ef3358951
30 changed files with 812 additions and 8468 deletions
|
@ -214,6 +214,12 @@ partial interface Document {
|
|||
|
||||
Document includes DocumentOrShadowRoot;
|
||||
|
||||
// https://w3c.github.io/selection-api/#dom-document
|
||||
partial interface Document {
|
||||
Selection? getSelection();
|
||||
};
|
||||
|
||||
|
||||
// Servo internal API.
|
||||
partial interface Document {
|
||||
[Throws]
|
||||
|
|
|
@ -95,6 +95,12 @@ partial interface mixin GlobalEventHandlers {
|
|||
attribute EventHandler ontransitionend;
|
||||
};
|
||||
|
||||
// https://w3c.github.io/selection-api/#extensions-to-globaleventhandlers-interface
|
||||
partial interface mixin GlobalEventHandlers {
|
||||
attribute EventHandler onselectstart;
|
||||
attribute EventHandler onselectionchange;
|
||||
};
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#windoweventhandlers
|
||||
[Exposed=Window]
|
||||
interface mixin WindowEventHandlers {
|
||||
|
|
32
components/script/dom/webidls/Selection.webidl
Normal file
32
components/script/dom/webidls/Selection.webidl
Normal file
|
@ -0,0 +1,32 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://w3c.github.io/selection-api/#selection-interface
|
||||
[Exposed=Window]
|
||||
interface Selection {
|
||||
readonly attribute Node? anchorNode;
|
||||
readonly attribute unsigned long anchorOffset;
|
||||
readonly attribute Node? focusNode;
|
||||
readonly attribute unsigned long focusOffset;
|
||||
readonly attribute boolean isCollapsed;
|
||||
readonly attribute unsigned long rangeCount;
|
||||
readonly attribute DOMString type;
|
||||
[Throws] Range getRangeAt(unsigned long index);
|
||||
void addRange(Range range);
|
||||
[Throws] void removeRange(Range range);
|
||||
void removeAllRanges();
|
||||
void empty();
|
||||
[Throws] void collapse(Node? node, optional unsigned long offset = 0);
|
||||
[Throws] void setPosition(Node? node, optional unsigned long offset = 0);
|
||||
[Throws] void collapseToStart();
|
||||
[Throws] void collapseToEnd();
|
||||
[Throws] void extend(Node node, optional unsigned long offset = 0);
|
||||
[Throws]
|
||||
void setBaseAndExtent(Node anchorNode, unsigned long anchorOffset, Node focusNode, unsigned long focusOffset);
|
||||
[Throws] void selectAllChildren(Node node);
|
||||
[CEReactions, Throws]
|
||||
void deleteFromDocument();
|
||||
boolean containsNode(Node node, optional boolean allowPartialContainment = false);
|
||||
stringifier DOMString ();
|
||||
};
|
|
@ -175,6 +175,12 @@ partial interface Window {
|
|||
readonly attribute unsigned long runningAnimationCount;
|
||||
};
|
||||
|
||||
// https://w3c.github.io/selection-api/#dom-document
|
||||
partial interface Window {
|
||||
Selection? getSelection();
|
||||
};
|
||||
|
||||
|
||||
dictionary WindowPostMessageOptions : PostMessageOptions {
|
||||
USVString targetOrigin = "/";
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue