From 754bb8d533f1db664c6c00ddbe565b64cff18811 Mon Sep 17 00:00:00 2001 From: Domenic Denicola Date: Fri, 3 Jun 2016 02:12:10 -0400 Subject: [PATCH] Save the is="" value an element was created with Part of fixing https://github.com/whatwg/html/issues/1298 and https://github.com/whatwg/html/issues/1360. --- dom.bs | 23 ++++++++++++++--------- dom.html | 19 +++++++++++-------- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/dom.bs b/dom.bs index c9566aa06..578d32959 100644 --- a/dom.bs +++ b/dom.bs @@ -5041,7 +5041,7 @@ a document, run these steps:
  • For each inclusiveDescendant in node's - shadow-including inclusive descendants that is an element with + shadow-including inclusive descendants that is an element with custom element state of "custom", set inclusiveDescendant's custom element state to "undefined".

    @@ -5591,8 +5591,9 @@ dictionary ShadowRootInit {

    Elements have an associated namespace, namespace prefix, -local name, and -custom element state. When an +local name, +custom element state, and +is value. When an element is created, all of these values are initialized. @@ -5682,8 +5683,9 @@ given a document, localName, namespace, and opt

  • Set result to a new element that implements interface, with no attributes, namespace set to the HTML namespace, namespace prefix set to prefix, local name set - to localName, custom element state set to "undefined", and - node document set to document. + to localName, custom element state set to "undefined", + is value set to is, and node document set to + document.

  • If the synchronous custom elements flag is set, upgrade element using definition. @@ -5735,6 +5737,8 @@ given a document, localName, namespace, and opt localName, then throw a {{NotSupportedError}}.

  • Set result's namespace prefix to prefix. + +

  • Set result's is value to null.

  • @@ -5745,8 +5749,8 @@ given a document, localName, namespace, and opt
  • Set result to a new element that implements the {{HTMLElement}} interface, with no attributes, namespace set to the HTML namespace, namespace prefix set to prefix, local name set - to localName, custom element state set to "undefined", and - node document set to document. + to localName, custom element state set to "undefined", + is value set to null, and node document set to document.

  • Enqueue a custom element upgrade reaction given result and definition. @@ -5765,8 +5769,9 @@ given a document, localName, namespace, and opt

  • Set result to a new element that implements interface, with no attributes, namespace set to namespace, namespace prefix set to prefix, local name set - to localName, custom element state set to "uncustomized", and - node document set to document. + to localName, custom element state set to "uncustomized", + is value set to is, and node document set to + document.

  • If document has a browsing context, and namespace is the HTML namespace, and either localName is a diff --git a/dom.html b/dom.html index 54b15d3f5..3a8a365a7 100644 --- a/dom.html +++ b/dom.html @@ -219,7 +219,7 @@

    DOM

    -

    Living Standard — Last Updated

    +

    Living Standard — Last Updated

    @@ -2730,7 +2730,7 @@

    node document’s type has not changed, the same HTMLCollection object may be returned as returned by an earlier call.

    -

    The list of elements with namespace namespace and local name localName for a node root is the HTMLCollection returned by the following algorithm:

    +

    The list of elements with namespace namespace and local name localName for a node root is the HTMLCollection returned by the following algorithm:

    1. If namespace is the empty string, set it to null.
    2. If both namespace and localName are "*" (U+002A), return a HTMLCollection rooted at root, whose filter matches descendant elements. @@ -3463,7 +3463,7 @@

      Element nodes are simply known as elements.

      -

      Elements have an associated namespace, namespace prefix, local name, and custom element state. When an element is created, all of these values are +

      Elements have an associated namespace, namespace prefix, local name, custom element state, and is value. When an element is created, all of these values are initialized.

      An element’s custom element state is one of "undefined", "uncustomized", or "custom". An element whose custom element state is "uncustomized" or "custom" is said to be defined. An element whose custom element state is "custom", is said to be custom.

      @@ -3521,7 +3521,7 @@

      Set result to a new element that implements interface, with no attributes, namespace set to the HTML namespace, namespace prefix set to prefix, local name set - to localName, custom element state set to "undefined", and node document set to document.

      + to localName, custom element state set to "undefined", is value set to is, and node document set to document.

    3. If the synchronous custom elements flag is set, upgrade element using definition.

    4. @@ -3557,13 +3557,15 @@

      If result’s local name is not equal to localName, then throw a NotSupportedError.

    5. Set result’s namespace prefix to prefix.

      +
    6. +

      Set result’s is value to null.

  • Otherwise:

    1. Set result to a new element that implements the HTMLElement interface, with no attributes, namespace set to the HTML namespace, namespace prefix set to prefix, local name set - to localName, custom element state set to "undefined", and node document set to document.

      + to localName, custom element state set to "undefined", is value set to null, and node document set to document.

    2. Enqueue a custom element upgrade reaction given result and definition.

    @@ -3576,7 +3578,7 @@

    Set result to a new element that implements interface, with no attributes, namespace set to namespace, namespace prefix set to prefix, local name set - to localName, custom element state set to "uncustomized", and node document set to document.

    + to localName, custom element state set to "uncustomized", is value set to is, and node document set to document.

  • If document has a browsing context, and namespace is the HTML namespace, and either localName is a valid custom element name or is is is non-null, set result’s custom element state to "undefined".

    @@ -5598,7 +5600,6 @@

    attribute for Node, in §8.2
  • baseURI, in §4.4 -
  • base URL, in §4.5
  • before, in §5.2
  • before(nodes), in §4.2.8
  • before(nodes...), in §4.2.8 @@ -5957,6 +5958,7 @@

    isSameNode(otherNode), in §4.4
  • isSupported, in §8.2
  • isTrusted, in §3.2 +
  • is value, in §4.9
  • item(index)