Skip to content

Commit 065b8c9

Browse files
committed
Addressed comments
1 parent c78a80d commit 065b8c9

File tree

1 file changed

+73
-44
lines changed

1 file changed

+73
-44
lines changed

source

+73-44
Original file line numberDiff line numberDiff line change
@@ -2750,6 +2750,9 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
27502750
<li><dfn data-x="concept-request-history-navigation-flag" data-x-href="https://fetch.spec.whatwg.org/#concept-request-history-navigation-flag">history-navigation flag</dfn></li>
27512751
</ul>
27522752
</li>
2753+
<li><dfn data-x="concept-header-list-get"
2754+
data-x-href="https://fetch.spec.whatwg.org/#concept-header-list-get">Getting a header</dfn>
2755+
from a header list.</li>
27532756
</ul>
27542757

27552758
<p>The following terms are defined in <cite>Referrer Policy</cite>: <ref
@@ -4143,6 +4146,19 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
41434146
</ul>
41444147
</dd>
41454148

4149+
<dt>Cross-Origin Embedder Policy</dt>
4150+
4151+
<dd>
4152+
<p>The following feature is defined in <cite>Cross-Origin Embedder Policy</cite>: <ref
4153+
spec=COEP></p>
4154+
4155+
<ul class="brief">
4156+
<li><dfn data-x="cross-origin-embedder-policy"
4157+
data-x-href="https://mikewest.github.io/corpp/#embedder-policy"><code>Cross-Origin Embedder
4158+
Policy</code></dfn></li>
4159+
</ul>
4160+
</dd>
4161+
41464162
</dl>
41474163

41484164
<hr>
@@ -79283,19 +79299,15 @@ dictionary <dfn>DragEventInit</dfn> : <span>MouseEventInit</span> {
7928379299
<li><p><span>Set up a window environment settings object</span> with <var>realm execution
7928479300
context</var>, and let <var>settingsObject</var> be the result.</p></li>
7928579301

79286-
<li>
79287-
<p>Let <var>COOP</var> be a <span
79288-
data-x="cross-origin-opener-policy">cross-origin-opener-policy</span> with value "<code
79289-
data-x="">unsafe-none</code>". Then:</p>
79302+
<li><p>Let <var>COOP</var> be a <span
79303+
data-x="cross-origin-opener-policy">cross-origin-opener-policy</span> with value "<code
79304+
data-x="">unsafe-none</code>".</p></li>
7929079305

79291-
<ul>
79292-
<li><p>If <var>creator</var> is non-null and <var>creator</var> is <span>same origin</span>
79293-
with its <span>top-level browsing context</span>'s <code>Document</code>, then set
79294-
<var>COOP</var> to <var>creator</var>'s <span>top-level browsing context</span>'s
79295-
<code>Document</code>'s <span data-x="concept-document-coop">cross-origin opener
79296-
policy</span>.</p></li>
79297-
</ul>
79298-
</li>
79306+
<li><p>If <var>creator</var> is non-null and <var>creator</var> is
79307+
<span>same origin</span> with its <span>top-level browsing context</span>'s
79308+
<code>Document</code>, then set <var>COOP</var> to <var>creator</var>'s
79309+
<span>top-level browsing context</span>'s <code>Document</code>'s <span
79310+
data-x="concept-document-coop">cross-origin opener policy</span>.</p></li>
7929979311

7930079312
<li><p>Let <var>document</var> be a new <code>Document</code>, marked as an <span data-x="HTML
7930179313
documents">HTML document</span> in <span>quirks mode</span>, whose <span
@@ -79849,6 +79861,10 @@ console.assert(iframeWindow.frameElement === null);
7984979861
keys</span> to <span data-x="agent cluster">agent clusters</span>). User agents are responsible
7985079862
for collecting agent clusters when it is deemed that nothing can access them anymore.</p>
7985179863

79864+
<p>A <span>browsing context group</span> has a <dfn data-x="cross-origin-isolated">cross-origin
79865+
isolated</dfn> boolean. It is initially false. When it is true, the <span>agent cluster map</span>
79866+
will be keyed using <span data-x="origin">origins</span>.</p>
79867+
7985279868
<p>To <dfn data-x="creating a new browsing context group">create a new browsing context
7985379869
group</dfn>, run these steps:</p>
7985479870

@@ -80148,11 +80164,10 @@ console.assert(iframeWindow.frameElement === null);
8014880164
<dd>
8014980165
<ol>
8015080166
<li>
80151-
<p>If <var>current</var>'s <span>top-level browsing context</span>'s
80152-
<span>active document</span>'s <span
80153-
data-x="cross-origin-opener-policy">cross-origin opener policy</span>
80154-
is "<code data-x="">same-origin</code>" or "<code
80155-
data-x="">same-origin-plus-COEP</code>", then:</p>
80167+
<p>If <var>current</var>'s <span>top-level browsing context</span>'s <span>active
80168+
document</span>'s <span data-x="cross-origin-opener-policy">cross-origin opener
80169+
policy</span> is "<code data-x="">same-origin</code>" or "<code
80170+
data-x="">same-origin-plus-COEP</code>", then:</p>
8015680171

8015780172
<ol>
8015880173
<li><p>Let <var>currentDocument</var> be <var>current</var>'s
@@ -82687,9 +82702,9 @@ interface <dfn>BarProp</dfn> {
8268782702

8268882703
<h3>Cross-origin opener policy</h3>
8268982704

82690-
<p>A <dfn data-x="cross-origin-opener-policy">cross-origin opener policy</dfn> restricts the set of
82691-
<span>browsing context</span>s which can live together in a single <span>browsing context
82692-
group</span>. It has one of the following values, defaulting to "<code
82705+
<p>A <dfn data-x="cross-origin-opener-policy">cross-origin opener policy</dfn> restricts the set
82706+
of <span data-x="browsing context">browsing contexts</span> which can live together in a single
82707+
<span>browsing context group</span>. It has one of the following values, defaulting to "<code
8269382708
data-x="">unsafe-none</code>" unless otherwise specified:</p>
8269482709

8269582710
<ul>
@@ -82708,18 +82723,19 @@ interface <dfn>BarProp</dfn> {
8270882723
</ul>
8270982724

8271082725
<p>To <dfn data-x="obtain-coop">obtain a cross-origin opener policy</dfn> from a <span
82711-
data-x="concept-response">response</span> <var>response</var>:</p>
82726+
data-x="concept-response">response</span> <var>response</var> and an <span>environment</span>
82727+
<var>environment</var>:</p>
8271282728

8271382729
<ol>
82714-
<li><p>Let <var>HTTPSState</var> be the <span data-x="concept-response-https-state">HTTPS
82715-
state</span> of <var>response</var>.</p></li>
82730+
<li><p>Let <var>securityState</var> be the result of executing <span>Is environment
82731+
settings object a secure context?</span> on <var>environment</var>.</p></li>
8271682732

82717-
<li><p>If <var>HTTPSState</var> is "<code data-x="">none</code>", then return "<code
82733+
<li><p>If <var>securityState</var> is "<code data-x="">Not Secure</code>", then return "<code
8271882734
data-x="">unsafe-none</code>".</p> </li>
8271982735

82720-
<li><p>Let <var>value</var> be the result of getting `<code
82721-
data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code>` from <var>response</var>'s <span
82722-
data-x="concept-response-header-list">header list</span>.</p></li>
82736+
<li><p>Let <var>value</var> be the result of <span data-x="concept-header-list-get">getting
82737+
</span> `<code data-x="http-cross-origin-opener-policy">Cross-Origin-Opener-Policy</code>` from
82738+
<var>response</var>'s <span data-x="concept-response-header-list">header list</span>.</p></li>
8272382739

8272482740
<li><p>If <var>value</var> is null, then return "<code data-x="">unsafe-none</code>".</p></li>
8272582741

@@ -82733,7 +82749,8 @@ interface <dfn>BarProp</dfn> {
8273382749
<li><p>If <var>decodedValue</var> is "<code data-x="">same-origin</code>", then:</p>
8273482750

8273582751
<ol>
82736-
<li><p>Let <var>coep</var> be the result of obtaining a cross-origin embedder policy from
82752+
<li><p>Let <var>coep</var> be the result of obtaining a <span
82753+
data-x="cross-origin-embedder-policy">cross-origin embedder policy</span> from
8273782754
<var>response</var>.</p></li>
8273882755

8273982756
<li><p>If <var>coep</var> is "<code data-x="">require-corp</code>", then return "<code
@@ -82770,7 +82787,7 @@ interface <dfn>BarProp</dfn> {
8277082787
data-x="origin">origins</span> <var>incumbentNavigationOrigin</var>,
8277182788
<var>activeDocumentNavigationOrigin</var>,and a <span
8277282789
data-x="cross-origin-opener-policy">cross-origin opener policy</span>
82773-
<var>incumbentCOOP</var>:</p>
82790+
<var>responseCOOP</var>:</p>
8277482791

8277582792
<ol>
8277682793
<li><p>Let <var>activeDocumentCOOP</var> be the <span data-x="concept-document-coop">
@@ -82779,7 +82796,7 @@ interface <dfn>BarProp</dfn> {
8277982796

8278082797
<li><p>If the result of <span data-x="matching-coop">matching</span>
8278182798
<var>activeDocumentCOOP</var>, <var>activeDocumentNavigationOrigin</var>,
82782-
<var>incumbentCOOP</var> and <var>incumbentNavigationOrigin</var> is true, return
82799+
<var>responseCOOP</var> and <var>incumbentNavigationOrigin</var> is true, return
8278382800
<var>browsingContext</var>.</p></li>
8278482801

8278582802
<li>
@@ -82794,27 +82811,28 @@ interface <dfn>BarProp</dfn> {
8279482811
<li><p><var>activeDocumentCOOP</var> is "<code
8279582812
data-x="">same-origin-allow-popups</code>".</p></li>
8279682813

82797-
<li><p><var>incumbentCOOP</var> is "<code data-x="">unsafe-none</code>".</p></li>
82814+
<li><p><var>responseCOOP</var> is "<code data-x="">unsafe-none</code>".</p></li>
8279882815
</ul>
8279982816

8280082817
<p>then return <var>browsingContext</var>.</p>
8280182818
</li>
8280282819

82803-
<li><p>Let <var>incumbentBrowsingContextGroup</var> be the result of <span>creating a new
82820+
<li><p>Let <var>newBrowsingContextGroup</var> be the result of <span>creating a new
8280482821
browsing context group</span>.</p></li>
8280582822

82806-
<li><p>If <var>incumbentCOOP</var> is "<code data-x="">same-origin-plus-COEP</code>", then set
82807-
<var>incumbentBrowsingContextGroup</var> cross-origin isolated to true.</p></li>
82823+
<li><p>If <var>responseCOOP</var> is "<code data-x="">same-origin-plus-COEP</code>", then set
82824+
<var>newBrowsingContextGroup</var> <span data-x="cross-origin-isolated">cross-origin
82825+
isolated</span> to true.</p></li>
8280882826

82809-
<li><p>Let <var>incumbentBrowsingContext</var> be a new top-level browsingContext in
82810-
<var>incumbentBrowsingContextGroup</var>.</p></li>
82827+
<li><p>Let <var>newBrowsingContext</var> be the result of <span data-x="creating a new browsing
82828+
context">creating a new browsingContext</span> in <var>newBrowsingContextGroup</var>.</p></li>
8281182829

8281282830
<li>
8281382831
<p>If <var>sandboxFlags</var> is not empty, then:</p>
8281482832
<ol>
82815-
<li><p>Assert <var>incumbentCOOP</var> is "<code data-x="">unsafe-none</code>".</p></li>
82833+
<li><p>Assert <var>responseCOOP</var> is "<code data-x="">unsafe-none</code>".</p></li>
8281682834

82817-
<li><p>Set <var>incumbentBrowsingContext</var>'s <span>sandboxing flag set</span> to
82835+
<li><p>Set <var>newBrowsingContext</var>'s <span>sandboxing flag set</span> to
8281882836
<var>sandboxFlags</var>.</p></li>
8281982837
</ol>
8282082838
</li>
@@ -82828,7 +82846,7 @@ interface <dfn>BarProp</dfn> {
8282882846
collected</p>
8282982847
</li>
8283082848

82831-
<li><p>Return <var>incumbentBrowsingContext</var>.</p></li>
82849+
<li><p>Return <var>newBrowsingContext</var>.</p></li>
8283282850
</ol>
8283382851

8283482852
<h3 split-filename="history" id="history">Session history and navigation</h3>
@@ -85234,7 +85252,8 @@ interface <dfn>Location</dfn> { // but see also <a href="#the-location-interface
8523485252
<ol>
8523585253
<li><p>Set <var>incumbentCOOP</var> be the <span
8523685254
data-x="cross-origin-opener-policy">cross-origin opener policy</span> <span
85237-
data-x="obtain-coop">obtained</span> given <var>response</var>.</p></li>
85255+
data-x="obtain-coop">obtained</span> given <var>response</var> and
85256+
<var>reservedEnvironment</var>.</p></li>
8523885257

8523985258
<li>
8524085259
<p>If <var>sandboxFlags</var> is not empty and <var>incumbentCOOP</var> is not "<code
@@ -85250,20 +85269,26 @@ interface <dfn>Location</dfn> { // but see also <a href="#the-location-interface
8525085269
that response.</p>
8525185270
</li>
8525285271

85253-
<li><p>Set <var>browsingContext</var> to the value of <span
85272+
<li><p>Let <var>newBrowsingContext</var> be the value of <span
8525485273
data-x="obtain-browsing-context-navigation">obtaining a browsing context for the navigation
8525585274
response</span> given <var>response</var>, <var>browsingContext</var>, <var>sandboxFlags</var>,
8525685275
<var>incumbentNavigationOrigin</var>, <var>activeDocumentNavigationOrigin</var>, and
85257-
<var>incumbentCOOP</var>.</p>
85258-
</li>
85276+
<var>incumbentCOOP</var>.</p></li>
85277+
85278+
<li><p>Let <var>browsingContextSwitch</var> be false.</p></li>
85279+
85280+
<li><p>If <var>newBrowsingContext</var> is not equal to <var>browsingContext</var>, then set
85281+
<var>browsingContextSwitch</var> to true.</p></li>
85282+
85283+
<li><p>Set <var>browsingContext</var> to the value of <var>newBrowsingContext</var>.</p></li>
8525985284
</ol>
8526085285
</li>
8526185286

8526285287
<li><p>If <var>browsingContext</var>'s only entry in its <span>session history</span> is the
8526385288
<code>about:blank</code> <code>Document</code> that was added when <var>browsingContext</var> was
8526485289
<span data-x="creating a new browsing context">created</span>, and navigation is occurring with
8526585290
<span>replacement enabled</span>, and that <code>Document</code> has the <span>same origin</span>
85266-
as <var>origin</var>, then do nothing.</p></li>
85291+
as <var>origin</var>, and <var>browsingContextSwitch</var> is false, then do nothing.</p></li>
8526785292

8526885293
<li>
8526985294
<p>Otherwise:</p>
@@ -124862,6 +124887,10 @@ INSERT INTERFACES HERE
124862124887
<dt id="refsCOMPUTABLE">[COMPUTABLE]</dt>
124863124888
<dd>(Non-normative) <cite><a href="http://www.turingarchive.org/browse.php/B/12">On computable numbers, with an application to the Entscheidungsproblem</a></cite>, A. Turing. In <cite>Proceedings of the London Mathematical Society</cite>, series 2, volume 42, pages 230-265. London Mathematical Society, 1937.</dd>
124864124889

124890+
<dt id="refsCOEP">[COEP]</dt>
124891+
<dd><cite><a href="https://mikewest.github.io/corpp/">Cross-Origin Embedder Policy</a></cite>, M.
124892+
West.</dd>
124893+
124865124894
<dt id="refsCOOKIES">[COOKIES]</dt>
124866124895
<dd><cite><a href="https://tools.ietf.org/html/rfc6265">HTTP State Management Mechanism</a></cite>, A. Barth. IETF.</dd>
124867124896

0 commit comments

Comments
 (0)