Skip to content

Commit ebd7cad

Browse files
committed
move cloning steps so clone a single node doesn't need subtree
1 parent bce5226 commit ebd7cad

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

dom.bs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4536,7 +4536,7 @@ each <a for=tree>descendant</a> <a>exclusive <code>Text</code> node</a> <var>nod
45364536
<a lt="Other applicable specifications">Specifications</a> may define
45374537
<dfn export id=concept-node-clone-ext>cloning steps</dfn> for all or some <a for=/>nodes</a>. The
45384538
algorithm is passed <var ignore>node</var>, <var ignore>copy</var>, and <var ignore>subtree</var> as
4539-
indicated in the <a>clone a single node</a> algorithm.
4539+
indicated in the <a>clone a node and append</a> algorithm.
45404540

45414541
<p class=note>HTML defines <a>cloning steps</a> for several elements, such as <{input}>, <{script}>,
45424542
and <{template}>. SVG ought to do the same for its <{script}> elements, but does not.
@@ -4562,12 +4562,16 @@ and <{template}>. SVG ought to do the same for its <{script}> elements, but does
45624562
boolean <var>subtree</var>:
45634563

45644564
<ol>
4565-
<li><p>Let <var>copy</var> be the result of <a>cloning a single node</a> given <var>node</var>,
4566-
<var>document</var>, and <var>subtree</var>.
4565+
<li><p>Let <var>copy</var> be the result of <a>cloning a single node</a> given <var>node</var> and
4566+
<var>document</var>.
45674567

45684568
<li><p>If <var>parent</var> is non-null, then <a for=/>append</a> <var>childCopy</var> to
45694569
<var>parentCopy</var>.
45704570

4571+
<li><p>Run any <a>cloning steps</a> defined for <var>node</var> in
4572+
<a>other applicable specifications</a> and pass <var>node</var>, <var>copy</var>, and
4573+
<var>subtree</var> as parameters.
4574+
45714575
<li>
45724576
<p>If <var>node</var> is an <a for=/>element</a>, <a for=Element>shadow host</a>, and its
45734577
<a for=Element>shadow root</a>'s <a for=ShadowRoot>clonable</a> is true:
@@ -4585,7 +4589,7 @@ boolean <var>subtree</var>:
45854589
to <var>node</var>'s <a for=Element>shadow root</a>'s <a for=ShadowRoot>declarative</a>.
45864590

45874591
<li><p>For each <var>child</var> of <var>node</var>'s <a for=Element>shadow root</a>'s
4588-
<a for=tree>children</a>, in <a>tree order</a>, <a>clone a node and append</a> given
4592+
<a for=tree>children</a>, in <a>tree order</a>: <a>clone a node and append</a> given
45894593
<var>child</var>, <var>copy</var>'s <a for=Element>shadow root</a>, <var>document</var>, and
45904594
<var>subtree</var>.
45914595
</ol>
@@ -4597,8 +4601,8 @@ boolean <var>subtree</var>:
45974601
</div>
45984602

45994603
<div algorithm>
4600-
<p>To <dfn>clone a single node</dfn> given a <a for=/>node</a> <var>node</var>,
4601-
<a for=/>document</a> <var>document</var>, and boolean <var>subtree</var>:
4604+
<p>To <dfn>clone a single node</dfn> given a <a for=/>node</a> <var>node</var> and
4605+
<a for=/>document</a> <var>document</var>:
46024606

46034607
<ol>
46044608
<li><p>Let <var>copy</var> be null.
@@ -4661,10 +4665,6 @@ boolean <var>subtree</var>:
46614665

46624666
<li><p>Set <var>copy</var>'s <a for=Node>node document</a> to <var>document</var>.
46634667

4664-
<li><p>Run any <a>cloning steps</a> defined for <var>node</var> in
4665-
<a>other applicable specifications</a> and pass <var>node</var>, <var>copy</var>, and
4666-
<var>subtree</var> as parameters.
4667-
46684668
<li><p>Return <var>copy</var>.
46694669
</ol>
46704670
</div>

0 commit comments

Comments
 (0)