diff --git a/source b/source index 6912026b81c..f7cbf7cee35 100644 --- a/source +++ b/source @@ -2986,7 +2986,7 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
  • The slot assignment concept
  • The slottable concept
  • The assign slottables for a tree algorithm
  • -
  • The inclusive descendants concept
  • +
  • The inclusive descendant concept
  • The find flattened slottables algorithm
  • The manual slot assignment concept
  • The assign a slot algorithm
  • @@ -75175,14 +75175,11 @@ END:VCARD
      -
    1. Let root be focus target's shadow root.

    2. - -
    3. If root is a shadow-including inclusive ancestor of the +

    4. If focus target is a shadow-including inclusive ancestor of the currently focused area of a top-level browsing context's DOM anchor, then return null.

    5. -
    6. Return the focus delegate for root given focus +

    7. Return the focus delegate for focus target given focus trigger.

    @@ -75203,29 +75200,48 @@ END:VCARD steps:

      -
    1. Let autofocus delegate be the autofocus delegate for - focus target given focus trigger.

    2. +
    3. Let autofocus delegate be the autofocus delegate for focus + target given focus trigger.

    4. If autofocus delegate is not null, then return autofocus delegate.

    5. -
    6. If focus trigger is "click", then let possible - focus delegates be the list of all click focusable focusable areas whose DOM anchor is a shadow-including - descendant of focus target.

    7. +
    8. If focus target is a shadow host and its shadow root's delegates focus is false, + then return null.

    9. -
    10. Otherwise, let possible focus delegates be the list of all focusable areas whose DOM anchor is a - shadow-including descendant of focus target.

    11. +
    12. Let parent be focus target.

    13. -
    14. If possible focus delegates is empty, then return null.

    15. +
    16. If parent is a shadow host, then set parent to + parent's shadow root.

    17. -
    18. Sort possible focus delegates by shadow-including tree order of - their DOM anchors.

    19. +
    20. +

      For each child of parent's children:

      -
    21. Return possible focus delegates[0].

    22. +
        +
      1. +

        Let focusable area be child, if child is a + focusable area; otherwise let focusable area be the result of getting the focusable area for child given + focus trigger.

        + +

        This step can end up recursing, i.e., the get the focusable area + steps might return the focus delegate of child.

        +
      2. + +
      3. If focusable area is not null, then return focusable + area.

      4. +
      + + +
    23. Return null.

    +

    The above algorithm essentially returns the first suitable focusable + area where the path between its DOM anchor and focus target + delegates focus at any shadow tree boundaries.

    +

    The autofocus delegate for a focus target given a focus trigger is given by the following steps: