- From: poot <cvsmail@w3.org>
- Date: Wed, 27 Jan 2010 17:32:19 +0900 (JST)
- To: public-html-diffs@w3.org
hixie: Make about:blank loading async, but make <iframe> and <object> not navigate to it if that's their starting point. (whatwg r4628) http://dev.w3.org/cvsweb/html5/spec/Overview.html?r1=1.3688&r2=1.3689&f=h http://html5.org/tools/web-apps-tracker?from=4627&to=4628 =================================================================== RCS file: /sources/public/html5/spec/Overview.html,v retrieving revision 1.3688 retrieving revision 1.3689 diff -u -d -r1.3688 -r1.3689 --- Overview.html 27 Jan 2010 01:49:19 -0000 1.3688 +++ Overview.html 27 Jan 2010 08:32:03 -0000 1.3689 @@ -4449,11 +4449,7 @@ the following steps must be run. (When a <em>URL</em> is to be fetched, the URL identifies a resource to be obtained.)</p> - <ol><li><p>If the resource is identified by the <a href="#url">URL</a> - <dfn id="about:blank"><code>about:blank</code></dfn>, then return the empty string - and abort these steps.</li> - - <li> + <ol><li> <p>Generate the <i>address of the resource from which Request-URIs are obtained</i> as required by HTTP for the <code title="http-referer">Referer</code> (sic) header from <a href="#the-document-s-current-address">the @@ -4512,6 +4508,11 @@ explicitly initiated from an <i title="">origin</i>, then <i title="">the origin that initiated the HTTP request</i> is <i title="">origin</i>. Otherwise, this is <i title="">a request from a "privacy-sensitive" context</i>. <a href="#refsORIGIN">[ORIGIN]</a></p> + <p>If the resource is identified by the <a href="#url">URL</a> + <dfn id="about:blank"><code>about:blank</code></dfn>, then the resource is + immediately available and consists of the empty string, with no + metadata.</p> + </li> <li> @@ -16806,7 +16807,8 @@ <p>When an <code><a href="#the-iframe-element">iframe</a></code> element is first <a href="#insert-an-element-into-a-document" title="insert an element into a document">inserted into a document</a>, the user agent must create a <a href="#nested-browsing-context">nested browsing context</a>, and - then <a href="#process-the-iframe-attributes">process the <code>iframe</code> attributes</a>.</p> + then <a href="#process-the-iframe-attributes">process the <code>iframe</code> attributes</a> for the + first time.</p> <p>Whenever an <code><a href="#the-iframe-element">iframe</a></code> element with a <a href="#nested-browsing-context">nested browsing context</a> has its <code title="attr-iframe-srcdoc"><a href="#attr-iframe-srcdoc">srcdoc</a></code> attribute set or changed, @@ -16838,12 +16840,25 @@ <dd> - <ol><li><p><a href="#resolve-a-url" title="resolve a url">Resolve</a> the value of + <ol><!-- + <li><p>If the value of the <code + title="attr-iframe-src">src</code> attribute is the empty string, + and the user agent is processing this <code>iframe</code>'s + attributes for the first time, then abort these steps.</p></li> +--><li><p><a href="#resolve-a-url" title="resolve a url">Resolve</a> the value of the <code title="attr-iframe-src"><a href="#attr-iframe-src">src</a></code> attribute, relative to the <code><a href="#the-iframe-element">iframe</a></code> element.</li> - <li><p>If that is successful, <a href="#navigate">navigate</a> the element's - <a href="#browsing-context">browsing context</a> to the resulting <a href="#absolute-url">absolute + <li><p>If that is not successful, abort these steps.</li> + + <li><p>If the resulting <a href="#absolute-url">absolute URL</a> is an + <a href="#ascii-case-insensitive">ASCII case-insensitive</a> match for the string + "<code><a href="#about:blank">about:blank</a></code>", and the user agent is processing this + <code><a href="#the-iframe-element">iframe</a></code>'s attributes for the first time, then abort + these steps.</li> + + <li><p><a href="#navigate">Navigate</a> the element's <a href="#browsing-context">browsing + context</a> to the resulting <a href="#absolute-url">absolute URL</a>.</li> </ol></dd> @@ -16855,11 +16870,12 @@ browsing context</a>.</p> <p>Furthermore, if the <a href="#process-the-iframe-attributes">process the <code>iframe</code> - attributes</a> algorithm was invoked as a result of the element - being <a href="#insert-an-element-into-a-document" title="insert an element into a document">inserted into - a document</a>, then any <a href="#navigate" title="navigate">navigation</a> - required of the user agent in that algorithm must be completed with - <a href="#replacement-enabled">replacement enabled</a>.</p> + attributes</a> algorithm was invoked for the first time for this + element (i.e. as a result of the element being <a href="#insert-an-element-into-a-document" title="insert + an element into a document">inserted into a document</a>), then + any <a href="#navigate" title="navigate">navigation</a> required of the user + agent in that algorithm must be completed with <a href="#replacement-enabled">replacement + enabled</a>.</p> </div><p class="note">If, when the element is created, the <code title="attr-iframe-srcdoc"><a href="#attr-iframe-srcdoc">srcdoc</a></code> attribute is not set, and the <code title="attr-iframe-src"><a href="#attr-iframe-src">src</a></code> attribute is either @@ -17710,6 +17726,9 @@ <li> + <!-- what if it's not in the document? if that should prevent + plugin instantiation, then here just skip to the last step --> + <p>If the <code title="attr-object-classid"><a href="#attr-object-classid">classid</a></code> attribute is present, and has a value that isn't the empty string, then: if the user agent can find a <a href="#plugin">plugin</a> suitable @@ -17750,7 +17769,7 @@ --> <li><p>If the <code title="attr-object-data"><a href="#attr-object-data">data</a></code> attribute - is present, then:</p> + is present and its value is not the empty string, then:</p> <ol><li><p>If the <code title="attr-object-type"><a href="#attr-object-type">type</a></code> attribute is present and its value is not a type that the user @@ -17759,23 +17778,25 @@ step in the overall set of steps (fallback) without fetching the content to examine its real type.</li> - <li> + <li><p><a href="#resolve-a-url" title="resolve a url">Resolve</a> the + <a href="#url">URL</a> specified by the <code title="attr-object-data"><a href="#attr-object-data">data</a></code> attribute, relative to the + element.</li> - <p><a href="#resolve-a-url" title="resolve a url">Resolve</a> the - <a href="#url">URL</a> specified by the <code title="attr-object-data"><a href="#attr-object-data">data</a></code> attribute, relative to the - element.</p> + <li><p>If that failed, <a href="#fire-a-simple-event">fire a simple event</a> named + <code title="event-error">error</code> at the element, then jump + to the last step in the overall set of steps (fallback).</li> - <p>If that is successful, <a href="#fetch">fetch</a> the resulting - <a href="#absolute-url">absolute URL</a>, from the element's <a href="#browsing-context-scope-origin">browsing - context scope origin</a> if it has one<!-- potentially - http-origin privacy sensitive -->.</p> + <li> - <!-- similar text in various places --> - <p>Fetching the resource must <a href="#delay-the-load-event">delay the load event</a> - of the element's document until the <a href="#concept-task" title="concept-task">task</a> that is <a href="#queue-a-task" title="queue a - task">queued</a> by the <a href="#networking-task-source">networking task source</a> - once the resource has been <a href="#fetch" title="fetch">fetched</a> - (defined next) has been run.</p> + <p><a href="#fetch">Fetch</a> the resulting <a href="#absolute-url">absolute URL</a>, + from the element's <a href="#browsing-context-scope-origin">browsing context scope origin</a> if + it has one<!-- potentially http-origin privacy sensitive + -->.</p> + + <!-- similar text in various places --> <p>Fetching the resource + must <a href="#delay-the-load-event">delay the load event</a> of the element's document + until the <a href="#concept-task" title="concept-task">task</a> that is <a href="#queue-a-task" title="queue a task">queued</a> by the <a href="#networking-task-source">networking task + source</a> once the resource has been <a href="#fetch" title="fetch">fetched</a> (defined next) has been run.</p> </li> @@ -17790,12 +17811,10 @@ to consider a resource "available" whenever enough data has been obtained to begin processing the resource.</li> - <li><p>If the load failed (e.g. the <a href="#url">URL</a> could not be - <a href="#resolve-a-url" title="resolve a url">resolved</a>, there was an HTTP - 404 error, there was a DNS error), <a href="#fire-a-simple-event">fire a simple - event</a> named <code title="event-error">error</code> at the - element, then jump to the last step in the overall set of steps - (fallback).</li> + <li><p>If the load failed (e.g. there was an HTTP 404 error, + there was a DNS error), <a href="#fire-a-simple-event">fire a simple event</a> named + <code title="event-error">error</code> at the element, then jump + to the last step in the overall set of steps (fallback).</li> <li><p>Determine the <var title="">resource type</var>, as follows:</p> @@ -17935,11 +17954,12 @@ <p>The <code><a href="#the-object-element">object</a></code> element must be associated with a <a href="#nested-browsing-context">nested browsing context</a>, if it does not already - have one. The element's <a href="#nested-browsing-context">nested browsing context</a> - must then be <a href="#navigate" title="navigate">navigated</a> to the - given resource, with <a href="#replacement-enabled">replacement enabled</a>, and - with the <code><a href="#the-object-element">object</a></code> element's document's - <a href="#browsing-context">browsing context</a> as the <a href="#source-browsing-context">source browsing + have one. If the <a href="#url">URL</a> of the given resource is not + <code><a href="#about:blank">about:blank</a></code>, the element's <a href="#nested-browsing-context">nested browsing + context</a> must then be <a href="#navigate" title="navigate">navigated</a> to that resource, with + <a href="#replacement-enabled">replacement enabled</a>, and with the + <code><a href="#the-object-element">object</a></code> element's document's <a href="#browsing-context">browsing + context</a> as the <a href="#source-browsing-context">source browsing context</a>. (The <code title="attr-object-data"><a href="#attr-object-data">data</a></code> attribute of the <code><a href="#the-object-element">object</a></code> element doesn't get updated if the browsing context gets further navigated to other @@ -44076,11 +44096,7 @@ <li> - <p>If fetching the resource is synchronous (i.e. for - <code><a href="#about:blank">about:blank</a></code>), then this must be synchronous, but if - fetching the resource depends on external resources, as it usually - does for URLs that use HTTP or other networking protocols, then at - this point the user agents must return to whatever algorithm + <p>At this point the user agents must return to whatever algorithm invoked the navigation steps and must continue these steps asynchronously.</p>
Received on Wednesday, 27 January 2010 08:32:50 UTC