Skip to content
This repository has been archived by the owner on Nov 11, 2019. It is now read-only.

M4 rebase #141

Merged
merged 23 commits into from
May 17, 2017
Merged

M4 rebase #141

merged 23 commits into from
May 17, 2017

Conversation

yongsheng
Copy link
Collaborator

No description provided.

kkdomono and others added 23 commits May 17, 2017 08:55
…thm.

Changes in Node.
Only some editorial changes to "locate a namespace",
"lookupPrefix method", etc.
Changed in node
In particular, require that the root’s node document's type hasn’t changed.
Moreover, Fix HTMLCollection refer.
Changed in node
When queue a mutation record in replacing a child with node, the
child has been removed. So we should use var previousSibling
rather than using child's previous sibling.
Changes in 'Mutation Algorithms'.
Apply insertion/removing steps for all descendents.
Some events are not supported by two or above user agents according
to the implementation testing. Here we only add events which are
supported by at least two user agents, and link the event interfaces
to correct targets.
…ctor.

Changes in Element.
Bring these 3 methods for interface Element.
Changed in node.Element.
Define get/setAttributeNode[NS] and removeAttributeNode in Element.
Changes in Terminology.
Add a definition to "ordered set" and clarify the replace
operation to make sure the behavior is clear.
Changes in Node/Traversal.
The node type of 'CDataSection' was removed in DOM4.0.
It's used widely so re-add it into DOM4.1. The 'normalize'
method is not applied for CDataSection as for Text.
Changes in Node/Element.
Bring the method 'hasAttributes()' for Element. It's
previously in Node.
Changes in NonElementParentNode and NonDocumentTypeChildNode.
Use the declaration of web compability to prevent some apis exposed.
Changes in Node and CharacterData.
Currently the method to calculate the length of a node can be
for all kinds of node's child interfaces except for CharacterData.
It's redundant for references. Do it in Node's method.
Changes in ChildNode.
Add 3 methods of replaceWith, after and before.
Changes in 'mutation algorithms' and NodeIterator.
Before doing really 'removing a node' operation, apply
'pre-removing steps' for all its inclusive descendants.
Changes in DocumentFragment.
1, Add the link reference for 'template' element;
2, Remove shadowroot since it's not involved now.
Changes in Document.
These 2 methods have been implemented in several UAs. Need
to include them in 4.1.
Changes in Ranges.
For 'insert a node into a range', if the node to be inserted is
the start node of the range, throw a error.
Changes in Node.Document.
In some UAs, kinds of events are not exposed since a device doesn't
support them. Throw an Error instead.
Changes in ParentNode.
1, Add append/prepend methods for ParentNode.
2, Add 'convert nodes into a node' instead of 'mutation method
macro'.
3, description changes by introducing getter.
1. Define token set using ordered set for DOMTokenList.

2. Refine DOMTokenList's length and indexing.

3. Make DOMTokenList's contains() not throw because it doesn't modify token set.

4. Combine DOMSettableTokenList into DOMTokenList, because DOMTokenList.value

   could be a stringifier attribute, therefore it is OK to make 'value' a

   stringifier.

5. Use less loops for DOMTokenList's add() and remove().

6. Always update a DOMTokenList when invoking toggle(). This shall normalize

   duplicates and whitespaces even if they're no-ops like add()/remove().

   This fixes w3c#118 too.

7. Introduce DOMTokenList's replace(). This shall fix w3c#117 together.

8. Introduce DOMTokenList's supports().
Several of changes in the section of Events.
1. Add EventListernerOptions/AddEventListenerOptions, used for
optimizations, including 3 fields - capture, passive and once.
Impact on dispatching events.
2. Add the chapter of 'Observing event listeners'.
3. EventListener definition's changes and explictly declaration of
its fields, type, callback, capture, passive, once and removed.
4. Add realm from ES standard to ensure security.
5. 'legacyOutputDidListenersThrowFlag' is added to IndexDB throwing
exceptions.
6. Add 'cancelBubble' field for Event.
7. Add the 'activation behavior' algorithm for event target, which
has already in HTML5.1 for elements like 'area'.

Don't include below changes:
1. Event's path/composedPath/retargeting.
2. Changes to 'animationend' to 'webkitAnimationEnd' event.
Also for animationstart, animationiteration, transitionend.
3. The part of 'firing an event' since it's facility but not used
now.
4. The 'get the parent' alrogithm for eventTarget since no shadow
dom yet.
@yongsheng yongsheng merged commit 271987a into w3c:dom4.1 May 17, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants