HTML Standard Tracker

Filter

File a bug

SVNBugCommentTime (UTC)
2076Tasks for the media element new resource task source.2008-08-18 04:24
@@ -16156,24 +16156,25 @@ interface <dfn>HTMLAudioElement</dfn> : <span>HTMLMediaElement</span> {
   agent doesn't adjust the <span
   title="concept-video-intrinsic-width">intrinsic width</span> of the
   video at all; the intrinsic dimensions and the <span
   title="concept-video-pixel-ratio">pixel ratio</span> of the video
   are honoured.</p>
 
   <p>If a <code>source</code> element is inserted into a <span>media
   element</span> that is already in a document and whose <code
   title="dom-media-networkState">networkState</code> is in the <code
   title="dom-media-EMPTY">EMPTY</code> state, the user agent must
-  implicitly invoke the <code title="dom-media-load">load()</code>
-  method on the <span>media element</span> as soon as all other
-  scripts have finished executing. Any exceptions raised must be
-  ignored.</p><!-- XXX queue -->
+  <span>queue a task</span> that implicitly invokes the <code
+  title="dom-media-load">load()</code> method on the <span>media
+  element</span>, and ignores any resulting exceptions. The <span>task
+  source</span> for this task is the <span>media element</span>'s own
+  <span>new resource task source</span>.</p>
 
   <p>The DOM attributes <dfn
   title="dom-source-src"><code>src</code></dfn>, <dfn
   title="dom-source-type"><code>type</code></dfn>, and <dfn
   title="dom-source-media"><code>media</code></dfn> must
   <span>reflect</span> the respective content attributes of the same
   name.</p>
 
   <p>The DOM attribute <dfn
   title="dom-source-pixelRatio"><code>pixelRatio</code></dfn> must
@@ -16348,25 +16349,26 @@ interface <dfn>HTMLAudioElement</dfn> : <span>HTMLMediaElement</span> {
 
   <p>The <dfn title="attr-media-src"><code>src</code></dfn> content
   attribute on <span title="media element">media elements</span> gives
   the address of the media resource (video, audio) to show. The
   attribute, if present, must contain a <span>valid URL</span>.</p>
 
   <p>If the <code title="attr-media-src">src</code> attribute of a
   <span>media element</span> that is already in a document and whose
   <code title="dom-media-networkState">networkState</code> is in the
   <code title="dom-media-EMPTY">EMPTY</code> state is added, changed,
-  or removed, the user agent must implicitly invoke the <code
-  title="dom-media-load">load()</code> method on the <span>media
-  element</span> as soon as all other scripts have finished
-  executing. Any exceptions raised must be ignored.</p> <!-- XXX queue
-  -->
+  or removed, the user agent must <span>queue a task</span> that
+  implicitly invokes the <code title="dom-media-load">load()</code>
+  method on the <span>media element</span>, and ignores any resulting
+  exceptions. The <span>task source</span> for this task is the
+  <span>media element</span>'s own <span>new resource task
+  source</span>.</p>
 
   <p class="note">If a <code title="attr-media-src">src</code>
   attribute is specified, the resource it specifies is the <span>media
   resource</span> that will be used. Otherwise, the resource specified
   by the first suitable <code>source</code> element child of the
   <span>media element</span> is the one used.</p>
 
   <p>The <dfn title="dom-media-src"><code>src</code></dfn> DOM
   attribute on <span title="media element">media elements</span> must
   <span>reflect</span> the content attribute of the same name.</p>
@@ -16916,25 +16918,26 @@ interface <dfn>HTMLAudioElement</dfn> : <span>HTMLMediaElement</span> {
    title="dom-media-networkState">networkState</code> attribute must
    be set to <code title="dom-media-LOADED">LOADED</code>, and the
    user agent must <span>fire a progress event</span> called <code
    title="event-load">load</code> at the element.</p></li>
 
   </ol>
 
   <p>If a <span>media element</span> whose <code
   title="dom-media-networkState">networkState</code> has the value
   <code title="dom-media-EMPTY">EMPTY</code> is inserted into a
-  document, user agents must implicitly invoke the <code
-  title="dom-media-load">load()</code> method on the <span>media
-  element</span> as soon as all other scripts have finished
-  executing<!-- XXX queue; phrase that better? -->. Any exceptions
-  raised must be ignored.</p>
+  document, the user agent must <span>queue a task</span> that
+  implicitly invokes the <code title="dom-media-load">load()</code>
+  method on the <span>media element</span>, and ignores any resulting
+  exceptions. The <span>task source</span> for this task is the
+  <span>media element</span>'s own <span>new resource task
+  source</span>.</p>
 
   <p>The <dfn
   title="dom-media-bufferingRate"><code>bufferingRate</code></dfn>
   attribute must return the average number of bits received per second
   for the current download over the past few seconds. If there is no
   download in progress, the attribute must return 0.</p>
 
   <p>The <dfn
   title="dom-media-bufferingThrottled"><code>bufferingThrottled</code></dfn>
   attribute must return true if the user agent is intentionally
@@ -30041,20 +30044,27 @@ never reset. This is nice and consistent.)
    <dd><p>Calling a callback asynchronously is a task.</p></dd>
 
 
    <dt>Using a resource</dt>
 
    <dd><p>When an algorithm <span title="fetch">fetches</span> a
    resource, if the fetching occurs asynchronously then the processing
    of the resource once some or all of the resource is available is a
    task.</p></dd>
 
+
+   <dt>Reacting to DOM manipulation</dt>
+
+   <dd><p>Some elements have tasks that trigger in response to DOM
+   manipulation, e.g. when that element is inserted into the
+   document.</p>
+
   </dl>
 
   <p>When a user agent is to <dfn>queue a task</dfn>, it must add the
   given task to one of the <span title="task queue">task queues</span>
   of the relevant <span>event loop</span>. All the tasks from one
   particular <dfn>task source</dfn> (e.g. the callbacks generated by
   timers, the events dispatched for mouse movements, the tasks queued
   for the parser) must always be added to the same <span>task
   queue</span>, but tasks from different <span title="task
   source">task sources</span> may be placed in different <span

|