@@ -14290,20 +14290,25 @@ people expect to have work and what is necessary.
14290
14290
<div w-nodev>
14291
14291
14292
14292
<ol>
14293
- <!-- TESTS: https://www.hixie.ch/tests/adhoc/html/meta/refresh/ -->
14294
- <!-- https://software.hixie.ch/utilities/js/live-dom-viewer/?saved=734 -->
14295
- <li><p>Let <var>document</var> be the <code>meta</code> element's <span>node
14296
- document</span>.</p></li>
14297
-
14298
- <li><p>If <var>document</var>'s <span>will declaratively refresh</span> is true, then
14299
- return.</p></li>
14300
-
14301
14293
<li><p>If the <code>meta</code> element has no <code data-x="attr-meta-content">content</code>
14302
14294
attribute, or if that attribute's value is the empty string, then return.</p></li>
14303
14295
14304
14296
<li><p>Let <var>input</var> be the value of the element's <code
14305
14297
data-x="attr-meta-content">content</code> attribute.</p></li>
14306
14298
14299
+ <li><p>Run the <span>shared declarative refresh steps</span> with the <code>meta</code>
14300
+ element's <span>node document</span>, <var>input</var>, and the <code>meta</code>
14301
+ element.</p></li>
14302
+ </ol>
14303
+
14304
+ <p>The <dfn>shared declarative refresh steps</dfn>, given a <code>Document</code> object
14305
+ <var>document</var>, string <var>input</var>, and optionally a <code>meta</code> element
14306
+ <var>meta</var>, are as follows:</p>
14307
+
14308
+ <ol>
14309
+ <li><p>If <var>document</var>'s <span>will declaratively refresh</span> is true, then
14310
+ return.</p></li>
14311
+
14307
14312
<li><p>Let <var>position</var> point at the first <span>code point</span> of
14308
14313
<var>input</var>.</p></li>
14309
14314
@@ -14410,12 +14415,12 @@ people expect to have work and what is necessary.
14410
14415
<ul>
14411
14416
<li>
14412
14417
<p>After the refresh has come due (as defined below), if the user has not canceled the
14413
- redirect and <var>document</var>'s <span>active sandboxing flag set</span> does not have the
14414
- < span>sandboxed automatic features browsing context flag</ span> set, <span
14415
- data-x="navigate">navigate</span><!--DONAV meta refresh--> <var>document</var>'s <span
14416
- data-x="concept-document-bc">browsing context</span> to <var>urlRecord</var>, with
14417
- <span>replacement enabled</span>, and with <var>document</var>'s <span
14418
- data-x="concept-document-bc">browsing context</span> as the <span>source browsing
14418
+ redirect and, if <var>meta</var> is given, <var> document</var>'s <span>active sandboxing
14419
+ flag set</ span> does not have the < span>sandboxed automatic features browsing context
14420
+ flag</span> set, then <span data-x="navigate">navigate</span><!--DONAV meta refresh-->
14421
+ <var>document</var>'s <span data-x="concept-document-bc">browsing context</span> to
14422
+ <var>urlRecord</var>, with < span>replacement enabled</span>, and with <var>document</var>'s
14423
+ <span data-x="concept-document-bc">browsing context</span> as the <span>source browsing
14419
14424
context</span>.</p>
14420
14425
14421
14426
<p>For the purposes of the previous paragraph, a refresh is said to have come due as soon as
@@ -14427,20 +14432,22 @@ people expect to have work and what is necessary.
14427
14432
preferences.</li>
14428
14433
<!-- https://software.hixie.ch/utilities/js/live-dom-viewer/?saved=774 -->
14429
14434
14430
- <li>At least <var>time</var> seconds have elapsed since the <code>meta</code> element was
14431
- <span data-x="node is inserted into a document">inserted into the document</span>
14432
- <var>document</var>, adjusted to take into account user or user agent preferences.</li>
14435
+ <li>If <var>meta</var> is given, at least <var>time</var> seconds have elapsed since
14436
+ <var>meta</var> was <span data-x="node is inserted into a document">inserted into the
14437
+ document</span> <var>document</var>, adjusted to take into account user or user agent
14438
+ preferences.</li>
14433
14439
<!-- https://software.hixie.ch/utilities/js/live-dom-viewer/?saved=772 -->
14434
14440
</ul>
14435
14441
14436
- <p class="note">It is important to use <var>document</var> here, and not the
14437
- <code>meta</code> element's <span>node document</span>, as that might have changed between
14438
- the initial set of steps and the refresh coming due.</p>
14442
+ <p class="note">It is important to use <var>document</var> here, and not <var>meta</var>'s
14443
+ <span>node document</span>, as that might have changed between the initial set of steps and
14444
+ the refresh coming due and <var>meta</var> is not always given (in case of the HTTP
14445
+ `<code data-x="http-refresh">Refresh</code>` header).</p>
14439
14446
</li>
14440
14447
14441
14448
<li><p>Provide the user with an interface that, when selected, <span
14442
14449
data-x="navigate">navigates</span><!--DONAV meta refresh--> a <span>browsing context</span>
14443
- to <var>urlRecord</var>, with the <code>Document</code >'s <span
14450
+ to <var>urlRecord</var>, with <var>document</var >'s <span
14444
14451
data-x="concept-document-bc">browsing context</span> as the <span>source browsing
14445
14452
context</span>.</p></li>
14446
14453
@@ -82324,6 +82331,22 @@ State: <OUTPUT NAME=I>1</OUTPUT> <INPUT VALUE="Increment" TYPE=BUTTON O
82324
82331
<li><p><span>Implement the sandboxing</span> for the <code>Document</code>.</p></li>
82325
82332
82326
82333
<li><p><span>Set the allow* flags</span> for the <code>Document</code>.</p></li>
82334
+
82335
+ <li>
82336
+ <p>If <var>response</var> has a `<code data-x="http-refresh">Refresh</code>` header, then:</p>
82337
+
82338
+ <ol>
82339
+ <li><p class="XXX"><a
82340
+ href="https://github.com/whatwg/html/issues/2900">Multiple `<code
82341
+ data-x="http-refresh">Refresh</code>` headers</a>.</p></li>
82342
+
82343
+ <li><p>Let <var>value</var> be the value of the header with each byte mapped to a code point
82344
+ of equal value.</p></li>
82345
+
82346
+ <li><p>Run the <span>shared declarative refresh steps</span> with the <code>Document</code>
82347
+ and <var>value</var>.</p></li>
82348
+ </ol>
82349
+ </li>
82327
82350
</ol>
82328
82351
</li>
82329
82352
@@ -115353,6 +115376,29 @@ interface <dfn>External</dfn> {
115353
115376
</dl>
115354
115377
115355
115378
115379
+ <h3>`<dfn><code data-x="http-refresh">Refresh</code></dfn>`</h3>
115380
+
115381
+ <p>This section describes a header for registration in the Permanent Message Header Field
115382
+ Registry. <ref spec=RFC3864></p>
115383
+
115384
+ <dl>
115385
+ <dt>Header field name:</dt>
115386
+ <dd>Refresh</dd>
115387
+ <dt>Applicable protocol:</dt>
115388
+ <dd>http</dd>
115389
+ <dt>Status:</dt>
115390
+ <dd>standard</dd>
115391
+ <dt>Author/Change controller:</dt>
115392
+ <dd>WHATWG</dd>
115393
+ <dt>Specification document(s):</dt>
115394
+ <dd>
115395
+ This document is the relevant specification.
115396
+ </dd>
115397
+ <dt>Related information:</dt>
115398
+ <dd>None.</dd>
115399
+ </dl>
115400
+
115401
+
115356
115402
<h3>`<dfn><code data-x="http-last-event-id">Last-Event-ID</code></dfn>`</h3>
115357
115403
115358
115404
<p>This section describes a header for registration in the Permanent Message Header Field
0 commit comments