diff --git a/source b/source index dfe695001ea..b8efb98695b 100644 --- a/source +++ b/source @@ -20973,6 +20973,11 @@ interface HTMLHyperlinkElementUtils { +
  • If subject's link types include the noreferrer or noopener keyword, + and replace is true, then disown + target's opener.

  • +
  • Resolve the URL given by subject's href attribute, relative to subject.

  • @@ -21472,6 +21477,13 @@ interface HTMLHyperlinkElementUtils { Requires that the user agent not send an HTTP `Referer` (sic) header if the user follows the hyperlink. + + noopener + not allowed + Annotation + Requires that any browsing context created by following the hyperlink must not have an opener browsing context. + + pingback External Resource @@ -21985,14 +21997,29 @@ interface HTMLHyperlinkElementUtils { request's referrer to "no-referrer".

    -

    This keyword also causes the opener - attribute to remain null if the hyperlink creates a new browsing context.

    +

    For historical reasons, the noreferrer + keyword implies the behavior associated with the noopener + keyword when present on a hyperlink that creates a new browsing context. That is, <a + href="..." rel="noreferrer" target="_blank"> has the same behavior as <a href="..." rel="noreferrer noopener" target="_blank">.

    +
    Link type "noopener"
    + +

    The noopener keyword may be used with a and + area elements. This keyword does not create a hyperlink, but annotates any other hyperlinks created by the element (the + implied hyperlink, if no other keywords create one).

    + +

    The keyword indicates that any newly created browsing context which results from + following the hyperlink will not have an opener browsing context, which + means that its window.opener property will be null.

    Link type "pingback"
    @@ -78394,33 +78421,19 @@ dictionary DragEventInit : MouseEventInit {
    If the user agent has been configured such that in this instance it will - create a new browsing context, and the browsing context is being requested as part of following a hyperlink whose link - types include the noreferrer keyword
    - -

    A new top-level browsing context must be created. If the given browsing - context name is not _blank, then the new top-level browsing context's - name must be the given browsing context name (otherwise, it has no name). The chosen browsing - context must be this new browsing context. The creation of such a browsing context - is a new start for session storage.

    - -

    If it is immediately navigated, then the - navigation will be done with replacement enabled.

    - - -
    If the user agent has been configured such that in this instance it will create a new - browsing context, and the noreferrer keyword doesn't - apply
    - -

    A new auxiliary browsing context must be created, with the opener - browsing context being the current one. If the given browsing context name is not _blank, then the new auxiliary browsing context's name must be the given - browsing context name (otherwise, it has no name). The chosen browsing context must be this new - browsing context.

    - -

    If it is immediately navigated, then the - navigation will be done with replacement enabled.

    + create a new browsing context: +
    +

    A new auxiliary browsing context must be created, with the opener + browsing context being the current one. If the given browsing context name is not + _blank, then the new auxiliary browsing context's name must be the + given browsing context name (otherwise, it has no name). The chosen browsing context must be + this new browsing context.

    + +

    If the newly created browsing context is immediately navigated, then the navigation will be done with replacement + enabled.

    +
    If the user agent has been configured such that in this instance it will reuse the current browsing context
    @@ -78826,8 +78839,23 @@ callback FrameRequestCallback = void (DOMHighResTimeStamp -
  • End: Return the WindowProxy object of target browsing - context.

  • + +
  • +

    End:

    + +
      + +
    1. If the result of splitting features + on commas contains the token "noopener", disown target browsing context's opener, and return null.

    2. + +
    3. Otherwise, return the WindowProxy object of target browsing + context.

    4. + +
    + +
  • @@ -118105,6 +118133,7 @@ INSERT INTERFACES HERE Charlene Wright, Charles Iliya Krempeaux, Charles McCathieNevile, + Charlie Reis, Chris Apers, Chris Cressman, Chris Evans, @@ -118594,6 +118623,7 @@ INSERT INTERFACES HERE Sander van Lambalgen, Sanjoy Pal, Sarven Capadisli, + Scott Beardsley, Scott González, Scott Hess, Sean Fraser,