Re: [whatwg/dom] Add Imperative Slot API (#860)

@annevk commented on this pull request.



> @@ -2440,7 +2444,8 @@ before a <var>child</var>, with an optional <i>suppress observers flag</i>, run
    <li><p>Otherwise, <a for=set>insert</a> <var>node</var> into <var>parent</var>'s
    <a for=tree>children</a> before <var>child</var>'s <a for=tree>index</a>.
 
-   <li><p>If <var>parent</var> is a <a for=Element>shadow host</a> and <var>node</var> is a
+   <li><p>If <var>parent</var> is a <a for=Element>shadow host</a> with its <a for=tree>root</a>'s

Don't you mean parent's shadow root here? Parent's root might well be a document or something else.

> @@ -2657,8 +2662,16 @@ indicated in the <a for=/>remove</a> algorithm below.
 
  <li><p><a for=set>Remove</a> <var>node</var> from its <var>parent</var>'s <a for=tree>children</a>.
 
- <li><p>If <var>node</var> is <a for=slottable>assigned</a>, then run <a>assign slottables</a> for
- <var>node</var>'s <a>assigned slot</a>.
+ <li>
+  <p>If <var>node</var> is <a for=slottable>assigned</a>, then:
+
+  <ol>
+   <li><p>If <var>parent</var>'s <a for=tree>root</a> is a <a for=/>shadow root</a> with its
+   <a for=tree>root</a>'s <a for=ShadowRoot>slot assignment</a> set to "<code>manual</code>",

instead of "with its root" you want "whose" I think (and "is" rather than "set to").

> @@ -2668,6 +2681,11 @@ indicated in the <a for=/>remove</a> algorithm below.
   <p>If <var>node</var> has an <a>inclusive descendant</a> that is a <a>slot</a>, then:
 
   <ol>
+   <li><p>for each <a>slot</a> <var>slot</var> in <var>node</var>'s <a for=tree>inclusive descendants</a>,
+   if <var>slot</var>'s <a for=tree>root</a> is a <a for=/>shadow root</a> with its <a for=tree>root</a>'s
+   <a for=ShadowRoot>slot assignment</a> set to "<code>manual</code>", then set <var>slot</var>'s

Same comments as above, you want "whose" and "is".

> @@ -2668,6 +2681,11 @@ indicated in the <a for=/>remove</a> algorithm below.
   <p>If <var>node</var> has an <a>inclusive descendant</a> that is a <a>slot</a>, then:
 
   <ol>
+   <li><p>for each <a>slot</a> <var>slot</var> in <var>node</var>'s <a for=tree>inclusive descendants</a>,
+   if <var>slot</var>'s <a for=tree>root</a> is a <a for=/>shadow root</a> with its <a for=tree>root</a>'s
+   <a for=ShadowRoot>slot assignment</a> set to "<code>manual</code>", then set <var>slot</var>'s
+   <a>manually assigned nodes</a> to an empty list.

set, right?

> @@ -2667,8 +2672,16 @@ indicated in the <a for=/>remove</a> algorithm below.
 
  <li><p><a for=set>Remove</a> <var>node</var> from its <var>parent</var>'s <a for=tree>children</a>.
 
- <li><p>If <var>node</var> is <a for=slottable>assigned</a>, then run <a>assign slottables</a> for
- <var>node</var>'s <a>assigned slot</a>.
+ <li>
+  <p>If <var>node</var> is <a for=slottable>assigned</a>, then:
+
+  <ol>
+   <li><p><p>If <var>parent</var>'s <a for=tree>root</a> is a <a for=/>shadow root</a> with its
+   <a for=tree>root</a>'s <a for=ShadowRoot>slot assignment</a> set to "<code>auto</code>",
+   then <a for=set>remove</a> <var>node</var> from its <a>assigned slot</a>'s <a>manually assigned nodes</a>.
+
+   <li><p>Run <a>assign slottables</a> for <var>node</var>'s <a>assigned slot</a>.

I guess that's fair.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/dom/pull/860#pullrequestreview-520510646

Received on Friday, 30 October 2020 09:49:40 UTC