html5/spec content-models.html,1.315,1.316 dnd.html,1.284,1.285 dom.html,1.1287,1.1288 editing.html,1.1258,1.1259 history.html,1.1288,1.1289 index.html,1.1333,1.1334 introduction.html,1.1271,1.1272 media-elements.html,1.213,1.214 offline.html,1.1250,1.1251 references.html,1.1273,1.1274 rendering.html,1.265,1.266 single-page.html,1.184,1.185 system-state-and-capabilities.html,1.195,1.196 the-area-element.html,1.204,1.205 the-canvas-element.html,1.1132,1.1133 the-ruby-element.html,1.205,1.206 the-section-element.html,1.205,1.206 tokenization.html,1.205,1.206 urls.html,1.275,1.276 webappapis.html,1.403,1.404

Update of /sources/public/html5/spec
In directory hutz:/tmp/cvs-serv26400

Modified Files:
	content-models.html dnd.html dom.html editing.html 
	history.html index.html introduction.html media-elements.html 
	offline.html references.html rendering.html single-page.html 
	system-state-and-capabilities.html the-area-element.html 
	the-canvas-element.html the-ruby-element.html 
	the-section-element.html tokenization.html urls.html 
	webappapis.html 
Log Message:
commit 6fd0fdeb3105f602e5f78403327dbf0381a4fc41
Author: ianh <ianh@340c8d12-0b0e-0410-8428-c7bf67bfef74>
Date:   Thu Oct 11 23:03:52 2012 +0000

    [e] (0) add a non-normative line
    Affected topics: Offline Web Applications
    
    git-svn-id: http://svn.whatwg.org/webapps@7455 340c8d12-0b0e-0410-8428-c7bf67bfef74
    (cherry picked from commit e6c75884ae551647312cc37666419a5dbfa990e5)


Index: media-elements.html
===================================================================
RCS file: /sources/public/html5/spec/media-elements.html,v
retrieving revision 1.213
retrieving revision 1.214
diff -u -d -r1.213 -r1.214
--- media-elements.html	15 Oct 2012 16:15:46 -0000	1.213
+++ media-elements.html	21 Oct 2012 22:44:53 -0000	1.214
@@ -1777,7 +1777,7 @@
      <th> Brief description
    <tbody><tr><td><dfn id="attr-media-preload-none" title="attr-media-preload-none"><code>none</code></dfn>
      <td><dfn id="attr-media-preload-none-state" title="attr-media-preload-none-state">None</dfn>
-     <td>Hints to the user agent that either the author does not expect the user to need the media resource, or that the server wants to minimise unnecessary traffic.
+     <td>Hints to the user agent that either the author does not expect the user to need the media resource, or that the server wants to minimize unnecessary traffic.
          This state does not provide a hint regarding how aggressively to actually download the media resource if buffering starts anyway (e.g. once the user hits "play").
     <tr><td><dfn id="attr-media-preload-metadata" title="attr-media-preload-metadata"><code>metadata</code></dfn>
      <td><dfn id="attr-media-preload-metadata-state" title="attr-media-preload-metadata-state">Metadata</dfn>
@@ -6787,110 +6787,87 @@
 <!--TOPIC:Video and Audio-->
   <h5 id="user-interface"><span class="secno">4.8.10.13 </span>User interface</h5>
 
-  <p>The <dfn id="attr-media-controls" title="attr-media-controls"><code>controls</code></dfn>
-  attribute is a <a href="common-microsyntaxes.html#boolean-attribute">boolean attribute</a>. If present, it
-  indicates that the author has not provided a scripted controller and
-  would like the user agent to provide its own set of controls.</p>
+  <p>The <dfn id="attr-media-controls" title="attr-media-controls"><code>controls</code></dfn> attribute is a <a href="common-microsyntaxes.html#boolean-attribute">boolean
+  attribute</a>. If present, it indicates that the author has not provided a scripted controller
+  and would like the user agent to provide its own set of controls.</p>
 
   <div class="impl">
 
-  <p>If the attribute is present, or if <a href="webappapis.html#concept-n-noscript" title="concept-n-noscript">scripting is disabled</a> for the
-  <a href="#media-element">media element</a>, then the user agent should <dfn id="expose-a-user-interface-to-the-user">expose a
-  user interface to the user</dfn>. This user interface should include
-  features to begin playback, pause playback, seek to an arbitrary
-  position in the content (if the content supports arbitrary seeking),
-  change the volume, change the display of closed captions or embedded
-  sign-language tracks, select different audio tracks or turn on audio
-  descriptions, and show the media content in manners more suitable to
-  the user (e.g. full-screen video or in an independent resizable
-  window). Other controls may also be made available.</p>
+  <p>If the attribute is present, or if <a href="webappapis.html#concept-n-noscript" title="concept-n-noscript">scripting is
+  disabled</a> for the <a href="#media-element">media element</a>, then the user agent should <dfn id="expose-a-user-interface-to-the-user">expose a user
+  interface to the user</dfn>. This user interface should include features to begin playback, pause
+  playback, seek to an arbitrary position in the content (if the content supports arbitrary
+  seeking), change the volume, change the display of closed captions or embedded sign-language
+  tracks, select different audio tracks or turn on audio descriptions, and show the media content in
+  manners more suitable to the user (e.g. full-screen video or in an independent resizable window).
+  Other controls may also be made available.</p>
 
-  <p>If the <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, then the user agent should expose audio tracks
-  from all the <a href="#slaved-media-elements">slaved media elements</a> (although avoiding
-  duplicates if the same <a href="#media-resource">media resource</a> is being used
-  several times). If a <a href="#media-resource">media resource</a>'s audio track
-  exposed in this way has no known name, and it is the only audio
-  track for a particular <a href="#media-element">media element</a>, the user agent
-  should use the element's <code title="attr-title"><a href="global-attributes.html#attr-title">title</a></code>
-  attribute, if any, as the name (or as part of the name) of that
-  track.</p>
+  <p>If the <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, then the user
+  agent should expose audio tracks from all the <a href="#slaved-media-elements">slaved media elements</a> (although
+  avoiding duplicates if the same <a href="#media-resource">media resource</a> is being used several times). If a
+  <a href="#media-resource">media resource</a>'s audio track exposed in this way has no known name, and it is the
+  only audio track for a particular <a href="#media-element">media element</a>, the user agent should use the
+  element's <code title="attr-title"><a href="global-attributes.html#attr-title">title</a></code> attribute, if any, as the name (or as part of the
+  name) of that track.</p>
 
-  <p>Even when the attribute is absent, however, user agents may
-  provide controls to affect playback of the media resource
-  (e.g. play, pause, seeking, and volume controls), but such features
-  should not interfere with the page's normal rendering. For example,
-  such features could be exposed in the <a href="#media-element">media element</a>'s
-  context menu.</p>
+  <p>Even when the attribute is absent, however, user agents may provide controls to affect playback
+  of the media resource (e.g. play, pause, seeking, and volume controls), but such features should
+  not interfere with the page's normal rendering. For example, such features could be exposed in the
+  <a href="#media-element">media element</a>'s context menu. The user agent may implement this simply by <a href="#expose-a-user-interface-to-the-user" title="expose a user interface to the user">exposing a user interface to the user</a> as
+  described above (as if the <code title="attr-media-controls"><a href="#attr-media-controls">controls</a></code> attribute was
+  present).</p>
 
-  <p>Where possible (specifically, for starting, stopping, pausing,
-  and unpausing playback, for seeking, for changing the rate of
-  playback, for fast-forwarding or rewinding,
-  for listing, enabling, and disabling text tracks,
-  and for muting or changing the volume of the audio), user interface
-  features exposed by the user agent must be implemented in terms of
-  the DOM API described above, so that, e.g., all the same events
-  fire.</p>
+  <p>Where possible (specifically, for starting, stopping, pausing, and unpausing playback, for
+  seeking, for changing the rate of playback, for fast-forwarding or rewinding, for listing,
+  enabling, and disabling text tracks, and for muting or changing the volume of the audio), user
+  interface features exposed by the user agent must be implemented in terms of the DOM API described
+  above, so that, e.g., all the same events fire.</p>
 
-  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, the user agent's user interface for pausing and
-  unpausing playback, for seeking, for changing the rate of playback,
-  for fast-forwarding or rewinding, and for muting or changing the
-  volume of audio of the entire group must be implemented in terms of
-  the <code><a href="#mediacontroller">MediaController</a></code> API exposed on that <a href="#current-media-controller">current
-  media controller</a>. When a <a href="#media-element">media element</a> has a
-  <a href="#current-media-controller">current media controller</a>, and all the <a href="#slaved-media-elements">slaved
-  media elements</a> of that <code><a href="#mediacontroller">MediaController</a></code> are
-  paused, the user agent should also unpause all the <a href="#slaved-media-elements">slaved
-  media elements</a> when the user invokes a user agent interface
-  control for beginning playback.</p>
+  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, the user agent's
+  user interface for pausing and unpausing playback, for seeking, for changing the rate of playback,
+  for fast-forwarding or rewinding, and for muting or changing the volume of audio of the entire
+  group must be implemented in terms of the <code><a href="#mediacontroller">MediaController</a></code> API exposed on that
+  <a href="#current-media-controller">current media controller</a>. When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
+  controller</a>, and all the <a href="#slaved-media-elements">slaved media elements</a> of that
+  <code><a href="#mediacontroller">MediaController</a></code> are paused, the user agent should also unpause all the <a href="#slaved-media-elements">slaved
+  media elements</a> when the user invokes a user agent interface control for beginning
+  playback.</p>
 
-  <p>The "play" function in the user agent's interface must set the
-  <code title="">playbackRate</code> attribute to the value of the
-  <code title="">defaultPlaybackRate</code> attribute before invoking
-  the <code title="">play()</code> method.
-  When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, the attributes and method with those names on
-  that <code><a href="#mediacontroller">MediaController</a></code> object must be used. Otherwise,
-  the attributes and method with those names on the <a href="#media-element">media
-  element</a> itself must be used.
-  </p>
+  <p>The "play" function in the user agent's interface must set the <code title="">playbackRate</code> attribute to the value of the <code title="">defaultPlaybackRate</code> attribute before invoking the <code title="">play()</code>
+  method. When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, the
+  attributes and method with those names on that <code><a href="#mediacontroller">MediaController</a></code> object must be used.
+  Otherwise, the attributes and method with those names on the <a href="#media-element">media element</a> itself
+  must be used. </p>
 
-  <p>Features such as fast-forward or rewind must be implemented by
-  only changing the <code title="">playbackRate</code> attribute (and
-  not the <code title="">defaultPlaybackRate</code> attribute).
-  Again, when a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, the attributes with those names on that
-  <code><a href="#mediacontroller">MediaController</a></code> object must be used; otherwise, the
-  attributes with those names on the <a href="#media-element">media element</a> itself
-  must be used.
-  </p>
+  <p>Features such as fast-forward or rewind must be implemented by only changing the <code title="">playbackRate</code> attribute (and not the <code title="">defaultPlaybackRate</code>
+  attribute). Again, when a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>,
+  the attributes with those names on that <code><a href="#mediacontroller">MediaController</a></code> object must be used;
+  otherwise, the attributes with those names on the <a href="#media-element">media element</a> itself must be used.</p>
 
-  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, seeking must be implemented in terms of the <code title="dom-MediaController-currentTime"><a href="#dom-mediacontroller-currenttime">currentTime</a></code> attribute
-  on that <code><a href="#mediacontroller">MediaController</a></code> object. Otherwise, the user
-  agent must directly <a href="#dom-media-seek" title="dom-media-seek">seek</a> to the
-  requested position in the <a href="#media-element">media element</a>'s <a href="#media-timeline">media
-  timeline</a>.</p>
+  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, seeking must be
+  implemented in terms of the <code title="dom-MediaController-currentTime"><a href="#dom-mediacontroller-currenttime">currentTime</a></code>
+  attribute on that <code><a href="#mediacontroller">MediaController</a></code> object. Otherwise, the user agent must directly
+  <a href="#dom-media-seek" title="dom-media-seek">seek</a> to the requested position in the <a href="#media-element">media
+  element</a>'s <a href="#media-timeline">media timeline</a>. For media resources where seeking to an arbitrary
+  position would be slow, user agents are encouraged to use the <i>approximate-for-speed</i> flag
+  when seeking in response to the user manipulating an approximate position interface such as a seek
+  bar.</p>
 
-  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, user agents may additionally provide the user
-  with controls that directly manipulate an individual <a href="#media-element">media
-  element</a> without affecting the <code><a href="#mediacontroller">MediaController</a></code>,
-  but such features are considered relatively advanced and unlikely to
-  be useful to most users.
+  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, user agents may
+  additionally provide the user with controls that directly manipulate an individual <a href="#media-element">media
+  element</a> without affecting the <code><a href="#mediacontroller">MediaController</a></code>, but such features are
+  considered relatively advanced and unlikely to be useful to most users.</p>
 
-  <p>For the purposes of listing chapters in the <a href="#media-resource">media
-  resource</a>, only <a href="#text-track" title="text track">text tracks</a> in
-  the <a href="#media-element">media element</a>'s <a href="#list-of-text-tracks">list of text tracks</a>
-  that are <a href="#text-track-showing" title="text track showing">showing</a> and whose
-  <a href="#text-track-kind">text track kind</a> is <code title="dom-TextTrack-kind-chapters"><a href="#dom-texttrack-kind-chapters">chapters</a></code> should be used.
-  Such tracks must be interpreted according to the <a href="#rules-for-constructing-the-chapter-tree-from-a-text-track">rules for
-  constructing the chapter tree from a text track</a>.</p>
+  <p>For the purposes of listing chapters in the <a href="#media-resource">media resource</a>, only <a href="#text-track" title="text
+  track">text tracks</a> in the <a href="#media-element">media element</a>'s <a href="#list-of-text-tracks">list of text tracks</a>
+  that are <a href="#text-track-showing" title="text track showing">showing</a> and whose <a href="#text-track-kind">text track kind</a> is
+  <code title="dom-TextTrack-kind-chapters"><a href="#dom-texttrack-kind-chapters">chapters</a></code> should be used. Such tracks must be
+  interpreted according to the <a href="#rules-for-constructing-the-chapter-tree-from-a-text-track">rules for constructing the chapter tree from a text
+  track</a>. When seeking in response to a user maniplating a chapter selection interface, user
+  agents should not use the <i>approximate-for-speed</i> flag.</p>
 
-  <p>The <dfn id="dom-media-controls" title="dom-media-controls"><code>controls</code></dfn>
-  IDL attribute must <a href="common-dom-interfaces.html#reflect">reflect</a> the content attribute of the
-  same name.</p>
+  <p>The <dfn id="dom-media-controls" title="dom-media-controls"><code>controls</code></dfn> IDL attribute must
+  <a href="common-dom-interfaces.html#reflect">reflect</a> the content attribute of the same name.</p>
 
   <hr></div>
 

Index: dom.html
===================================================================
RCS file: /sources/public/html5/spec/dom.html,v
retrieving revision 1.1287
retrieving revision 1.1288
diff -u -d -r1.1287 -r1.1288
--- dom.html	15 Oct 2012 16:15:44 -0000	1.1287
+++ dom.html	21 Oct 2012 22:44:52 -0000	1.1288
@@ -400,7 +400,7 @@
   attempting to impersonate another.</p>
 
   <p>When a <code><a href="#document">Document</a></code> is created by a <a href="webappapis.html#concept-script" title="concept-script">script</a> using the <code title="dom-DOMImplementation-createDocument"><a href="infrastructure.html#dom-domimplementation-createdocument">createDocument()</a></code>
-  or <code title="dom-DOMHTMLImplementation-createHTMLDocument">createHTMLDocument()</code>
+  or <code title="dom-DOMImplementation-createHTMLDocument"><a href="infrastructure.html#dom-domimplementation-createhtmldocument">createHTMLDocument()</a></code>
   APIs, <a href="#the-document's-address">the document's address</a> is the same as <a href="#the-document's-address">the
   document's address</a> of the <a href="webappapis.html#script's-document">script's document</a>, and
   the <code><a href="#document">Document</a></code> is both <a href="the-end.html#ready-for-post-load-tasks">ready for post-load

Index: index.html
===================================================================
RCS file: /sources/public/html5/spec/index.html,v
retrieving revision 1.1333
retrieving revision 1.1334
diff -u -d -r1.1333 -r1.1334
--- index.html	15 Oct 2012 22:16:01 -0000	1.1333
+++ index.html	21 Oct 2012 22:44:52 -0000	1.1334
@@ -1030,7 +1030,8 @@
      <li><a href="history.html#aborting-a-document-load"><span class="secno">5.6.12 </span>Aborting a document load</a></ol></li>
    <li><a href="offline.html#offline"><span class="secno">5.7 </span>Offline Web applications</a>
     <ol class="toc"><li><a href="offline.html#introduction-4"><span class="secno">5.7.1 </span>Introduction</a>
-      <ol class="toc"><li><a href="offline.html#appcacheevents"><span class="secno">5.7.1.1 </span>Event summary</a></ol></li>
+      <ol class="toc"><li><a href="offline.html#supporting-offline-caching-for-legacy-applications"><span class="secno">5.7.1.1 </span>Supporting offline caching for legacy applications</a></li>
+       <li><a href="offline.html#appcacheevents"><span class="secno">5.7.1.2 </span>Event summary</a></ol></li>
      <li><a href="offline.html#appcache"><span class="secno">5.7.2 </span>Application caches</a></li>
      <li><a href="offline.html#manifests"><span class="secno">5.7.3 </span>The cache manifest syntax</a>
       <ol class="toc"><li><a href="offline.html#some-sample-manifests"><span class="secno">5.7.3.1 </span>Some sample manifests</a></li>

Index: history.html
===================================================================
RCS file: /sources/public/html5/spec/history.html,v
retrieving revision 1.1288
retrieving revision 1.1289
diff -u -d -r1.1288 -r1.1289
--- history.html	15 Oct 2012 16:15:45 -0000	1.1288
+++ history.html	21 Oct 2012 22:44:52 -0000	1.1289
@@ -2568,9 +2568,8 @@
    <li><p>Increase the <code><a href="dom.html#document">Document</a></code>'s
    <a href="dynamic-markup-insertion.html#ignore-opens-during-unload-counter">ignore-opens-during-unload counter</a> by one.</li>
 
-   <li><p>Let <var title="">event</var> be a new
-   <code><a href="#beforeunloadevent">BeforeUnloadEvent</a></code> event object with the name <code title="event-beforeunload">beforeunload</code>, which does not
-   bubble but is cancelable.</li>
+   <li><p>Let <var title="">event</var> be a new <a href="infrastructure.html#concept-events-trusted" title="concept-events-trusted">trusted</a>
+   <code><a href="#beforeunloadevent">BeforeUnloadEvent</a></code> event object with the name <code title="event-beforeunload">beforeunload</code>, which does not bubble but is cancelable.</li>
 
    <li><p><i>Dispatch</i>: Dispatch <var title="">event</var> at the
    <code><a href="dom.html#document">Document</a></code>'s <code><a href="browsers.html#window">Window</a></code> object.</li>

Index: the-ruby-element.html
===================================================================
RCS file: /sources/public/html5/spec/the-ruby-element.html,v
retrieving revision 1.205
retrieving revision 1.206
diff -u -d -r1.205 -r1.206
--- the-ruby-element.html	15 Oct 2012 16:15:53 -0000	1.205
+++ the-ruby-element.html	21 Oct 2012 22:44:54 -0000	1.206
@@ -399,7 +399,7 @@
 
   <ol class="brief"><li>One or the other of the following:
     <ul class="brief"><li><a href="content-models.html#phrasing-content-1">Phrasing content</a>, but with no <code><a href="#the-ruby-element">ruby</a></code> elements and with no <code><a href="#the-ruby-element">ruby</a></code> element descendants
-     <li>A single <code><a href="#the-ruby-element">ruby</a></code> element, but with no further <code><a href="#the-ruby-element">ruby</a></code> element descendants
+     <li>A single <code><a href="#the-ruby-element">ruby</a></code> element that itself has no <code><a href="#the-ruby-element">ruby</a></code> element descendants
     </ul><li>One or the other of the following:
     <ul class="brief"><li>One or more <code><a href="the-rt-element.html#the-rt-element">rt</a></code> elements
      <li>An <code><a href="the-rp-element.html#the-rp-element">rp</a></code> element followed by one or more <code><a href="the-rt-element.html#the-rt-element">rt</a></code> elements, each of which is itself followed by an <code><a href="the-rp-element.html#the-rp-element">rp</a></code> element

Index: the-canvas-element.html
===================================================================
RCS file: /sources/public/html5/spec/the-canvas-element.html,v
retrieving revision 1.1132
retrieving revision 1.1133
diff -u -d -r1.1132 -r1.1133
--- the-canvas-element.html	15 Oct 2012 17:14:28 -0000	1.1132
+++ the-canvas-element.html	21 Oct 2012 22:44:54 -0000	1.1133
@@ -528,6 +528,8 @@
     <p>The list of defined contexts is given on the <a href="http://wiki.whatwg.org/wiki/CanvasContexts">WHATWG Wiki
     CanvasContexts page</a>. <a href="references.html#refsWHATWGWIKI">[WHATWGWIKI]</a>
 
+    <p>Example contexts are the "<code title="canvas-context-2d">2d</code>" <a href="references.html#refsCANVAS2D">[CANVAS2D]</a> and the "<code title="canvas-context-webgl">webgl</code>" context <a href="references.html#refsWEBGL">[WEBGL]</a>.</p>
+
     <p>Returns null if the given context ID is not supported or if the
     canvas has already been initialized with some other (incompatible)
     context type (e.g. trying to get a "<code title="canvas-context-2d">2d</code>" context after getting a
@@ -542,6 +544,8 @@
   that element. When created, a <code><a href="#the-canvas-element">canvas</a></code> element must not
   have a <a href="#primary-context">primary context</a>.</p>
 
+  <p>The most commonly used primary context is the HTML <code title="canvas-context-2d">Canvas 2D</code> Context.   <a href="references.html#refsCANVAS2D">[CANVAS2D]</a>
+
   <p>The <dfn id="dom-canvas-getcontext" title="dom-canvas-getContext"><code>getContext(<var title="">contextId</var>, <var title="">arguments...</var>)</code></dfn> method of the
   <code><a href="#the-canvas-element">canvas</a></code> element, when invoked, must run the following
   steps:</p>

Index: rendering.html
===================================================================
RCS file: /sources/public/html5/spec/rendering.html,v
retrieving revision 1.265
retrieving revision 1.266
diff -u -d -r1.265 -r1.266
--- rendering.html	15 Oct 2012 16:15:47 -0000	1.265
+++ rendering.html	21 Oct 2012 22:44:53 -0000	1.266
@@ -497,7 +497,9 @@
 input[type=hidden i], link, menu[type=context i], meta, noembed, noframes,
 param, rp, script, source, style, track, title {
   display: none;
-}</pre>
+}
+
+embed[hidden] { display: inline; height: 0; width: 0; }</pre> <!-- because for legacy reasons it still needs to instantiate the plugin -->
 
   <p>The user agent is expected to force the 'display' property of
   <code><a href="the-noscript-element.html#the-noscript-element">noscript</a></code> elements for whom <a href="webappapis.html#concept-n-script" title="concept-n-script">scripting is enabled</a> to compute to
@@ -777,7 +779,7 @@
 
   <p>When a particular part of a ruby has more than one annotation,
   the annotations should be distributed on both sides of the base text
-  so as to minimise the stacking of ruby annotations on one side.</p>
+  so as to minimize the stacking of ruby annotations on one side.</p>
 
   <p class="note">When it becomes possible to do so, the preceding
   requirement will be updated to be expressed in terms of CSS ruby.

Index: offline.html
===================================================================
RCS file: /sources/public/html5/spec/offline.html,v
retrieving revision 1.1250
retrieving revision 1.1251
diff -u -d -r1.1250 -r1.1251
--- offline.html	15 Oct 2012 16:15:47 -0000	1.1250
+++ offline.html	21 Oct 2012 22:44:53 -0000	1.1251
@@ -373,7 +373,7 @@
    <a href="webappapis.html">6 Web application APIs &srarr;</a>
   <ol class="toc"><li><ol><li><a href="offline.html#offline"><span class="secno">5.7 </span>Offline Web applications</a>
     <ol><li><a href="offline.html#introduction-4"><span class="secno">5.7.1 </span>Introduction</a>
-      <ol><li><a href="offline.html#appcacheevents"><span class="secno">5.7.1.1 </span>Event summary</a></ol><li><a href="offline.html#appcache"><span class="secno">5.7.2 </span>Application caches</a><li><a href="offline.html#manifests"><span class="secno">5.7.3 </span>The cache manifest syntax</a>
+      <ol><li><a href="offline.html#supporting-offline-caching-for-legacy-applications"><span class="secno">5.7.1.1 </span>Supporting offline caching for legacy applications</a><li><a href="offline.html#appcacheevents"><span class="secno">5.7.1.2 </span>Event summary</a></ol><li><a href="offline.html#appcache"><span class="secno">5.7.2 </span>Application caches</a><li><a href="offline.html#manifests"><span class="secno">5.7.3 </span>The cache manifest syntax</a>
       <ol><li><a href="offline.html#some-sample-manifests"><span class="secno">5.7.3.1 </span>Some sample manifests</a><li><a href="offline.html#writing-cache-manifests"><span class="secno">5.7.3.2 </span>Writing cache manifests</a><li><a href="offline.html#parsing-cache-manifests"><span class="secno">5.7.3.3 </span>Parsing cache manifests</a></ol><li><a href="offline.html#downloading-or-updating-an-application-cache"><span class="secno">5.7.4 </span>Downloading or updating an application cache</a><li><a href="offline.html#the-application-cache-selection-algorithm"><span class="secno">5.7.5 </span>The application cache selection algorithm</a><li><a href="offline.html#changesToNetworkingModel"><span class="secno">5.7.6 </span>Changes to the networking model</a><li><a href="offline.html#expiring-application-caches"><span class="secno">5.7.7 </span>Expiring application caches</a><li><a href="offline.html#disk-space"><span class="secno">5.7.8 </span>Disk space</a><li><a href="offline.html#application-cache-api><span class="secno">5.7.9 </span>Application cache API</a><li><a href="offline.html#browser-state"><span class="secno">5.7.10 </span>Browser state</a></ol></ol></ol></nav>
 
   <h3 id="offline"><span class="secno">5.7 </span>Offline Web applications</h3>
@@ -475,13 +475,61 @@
   before the user agent has updated it, and even applications served
   over TLS can be made to work offline.</p>
 
-<!--(doesn't currently function)
-  <p><a href="http://www.whatwg.org/demos/offline/clock/clock2.html">View this example online</a>.</p>
--->
+  <p><a href="http://www.whatwg.org/demos/offline/clock/live-demo/clock.html">View this example online</a>.</p>
 
 
 
-  <h5 id="appcacheevents"><span class="secno">5.7.1.1 </span>Event summary</h5>
+  <h5 id="supporting-offline-caching-for-legacy-applications"><span class="secno">5.7.1.1 </span>Supporting offline caching for legacy applications</h5>
+
+  <p><i>This section is non-normative.</i></p>
+  <p>The application cache feature works best if the application logic is separate from the
+  application and user data, with the logic (markup, scripts, style sheets, images, etc) listed in
+  the manifest and stored in the application cache, with a finite number of static HTML pages for
+  the application, and with the application and user data stored in Web Storage or a client-side
+  Indexed Database, updated dynamically using Web Sockets, <code>XMLHttpRequest</code>, server-sent
+  events, or some other similar mechanism.</p>
+
+  <p>This model results in a fast experience for the user: the application immediately loads, and
+  fresh data is obtained as fast as the network will allow it (possibly while stale data shows).</p>
+
+  <p>Legacy applications, however, tend to be designed so that the user data and the logic are mixed
+  together in the HTML, with each operation resulting in a new HTML page from the server.</p>
+
+  <div class="example">
+
+   <p>For example, consider a news application. The typical architecture of such an application,
+   when not using the application cache feature, is that the user fetches the main page, and the
+   server returns a dynamically-generated page with the current headlines and the user interface
+   logic mixed together.</p>
+
+   <p>A news application designed for the application cache feature, however, would instead have the
+   main page just consist of the logic, and would then have the main page fetch the data separately
+   from the server, e.g. using <code>XMLHttpRequest</code>.</p>
+
+  </div>
+
+  <p>The mixed-content model does not work well with the application cache feature: since the
+  content is cached, it would result in the user always seeing the stale data from the previous time
+  the cache was updated.</p>
+
+  <p>While there is no way to make the legacy model work as fast as the separated model, it
+  <em>can</em> at least be retrofitted for offline use using the <span title="concept-appcache-mode-prefer-online">prefer-online</span> <a href="#concept-appcache-mode" title="concept-appcache-mode">application cache mode</a>. To do so, list all the static
+  resources used by the HTML page you want to have work offline in an <a href="#concept-appcache-manifest" title="concept-appcache-manifest">application cache manifest</a>, use the <code title="attr-html-manifest"><a href="the-html-element.html#attr-html-manifest">manifest</a></code> attribute to select that manifest from the HTML file,
+  and then add the following line at the bottom of the manifest:</p>
+
+  <pre>SETTINGS:
+prefer-online
+NETWORK:
+*</pre>
+
+  <p>This causes the <a href="#application-cache">application cache</a> to only be used for <a href="#concept-appcache-master" title="concept-appcache-master">master entries</a> when the user is offline, and causes the
+  application cache to be used as an atomic HTTP cache (essentially pinning resources listed in the
+  manifest), while allowing all resources not listed in the manifest to be accessed normally when
+  the user is online.</p>
+
+
+
+  <h5 id="appcacheevents"><span class="secno">5.7.1.2 </span>Event summary</h5>
 
   <p><i>This section is non-normative.</i></p>
   <p>When the user visits a page that declares a manifest, the browser
@@ -514,6 +562,8 @@
     <tr><td> <dfn id="event-appcache-progress" title="event-appcache-progress"><code>progress</code></dfn>
      <td> <code>ProgressEvent</code>
      <td> The user agent is downloading resources listed by the manifest.
+          The event object's <code title="dom-ProgressEvents-total">total</code> attribute returns the total number of files to be downloaded.
+          The event object's <code title="dom-ProgressEvents-loaded">loaded</code> attribute returns the number of files processed so far.
      <td> <code title="event-appcache-progress"><a href="#event-appcache-progress">progress</a></code>, <code title="event-appcache-error"><a href="#event-appcache-error">error</a></code>, <code title="event-appcache-cached"><a href="#event-appcache-cached">cached</a></code>, <code title="event-appcache-updateready"><a href="#event-appcache-updateready">updateready</a></code>
     <tr><td> <dfn id="event-appcache-cached" title="event-appcache-cached"><code>cached</code></dfn>
      <td> <code><a href="infrastructure.html#event">Event</a></code>
@@ -535,7 +585,13 @@
     <tr><td> A fatal error occurred while fetching the resources listed in the manifest.
     <tr><td> The manifest changed while the update was being run.
      <td> The user agent will try fetching the files again momentarily.
-  </table><div class="impl">
+  </table><p>These events are cancelable; their default action is for the user agent to show download
+  progress information. If the page shows its own update UI, canceling the events will prevent the
+  user agent from showing redundant progress information.</p>
+
+
+
+  <div class="impl">
 
   <h4 id="appcache"><span class="secno">5.7.2 </span>Application caches</h4> <!--APPCACHE-->
 

Index: system-state-and-capabilities.html
===================================================================
RCS file: /sources/public/html5/spec/system-state-and-capabilities.html,v
retrieving revision 1.195
retrieving revision 1.196
diff -u -d -r1.195 -r1.196
--- system-state-and-capabilities.html	15 Oct 2012 16:15:48 -0000	1.195
+++ system-state-and-capabilities.html	21 Oct 2012 22:44:54 -0000	1.196
@@ -604,6 +604,7 @@
     scheme">whitelisted schemes</dfn>:</p>
 
     <ul class="brief"><li><code title="">irc</code></li>
+     <li><code title="">geo</code></li>
      <li><code title="">mailto</code></li>
      <li><code title="">magnet</code></li>
      <li><code title="">mms</code></li>

Index: content-models.html
===================================================================
RCS file: /sources/public/html5/spec/content-models.html,v
retrieving revision 1.315
retrieving revision 1.316
diff -u -d -r1.315 -r1.316
--- content-models.html	15 Oct 2012 16:15:44 -0000	1.315
+++ content-models.html	21 Oct 2012 22:44:51 -0000	1.316
@@ -842,8 +842,8 @@
    <li><p><a href="#run-pre-click-activation-steps">Run pre-click activation steps</a> on the
    element.</li>
 
-   <li><p><a href="webappapis.html#fire-a-click-event">Fire a <code title="event-click">click</code>
-   event</a> at the element.</li>
+   <li><p><a href="webappapis.html#fire-a-click-event">Fire a <code title="event-click">click</code> event</a> at the element. If the
+   <a href="#run-synthetic-click-activation-steps">run synthetic click activation steps</a> algorithm was invoked because the <code title="dom-click"><a href="editing.html#dom-click">click()</a></code> method was invoked, then the <code title="dom-event-isTrusted"><a href="infrastructure.html#dom-event-istrusted">isTrusted</a></code> attribute must be initialized to false.</li>
 
    <li>
 

Index: single-page.html
===================================================================
RCS file: /sources/public/html5/spec/single-page.html,v
retrieving revision 1.184
retrieving revision 1.185
diff -u -d -r1.184 -r1.185
--- single-page.html	15 Oct 2012 22:16:01 -0000	1.184
+++ single-page.html	21 Oct 2012 22:44:53 -0000	1.185
@@ -1145,7 +1145,8 @@
     <ol class="toc">
      <li><a href="#introduction-4"><span class="secno">5.7.1 </span>Introduction</a>
       <ol class="toc">
-       <li><a href="#appcacheevents"><span class="secno">5.7.1.1 </span>Event summary</a></li></ol></li>
+       <li><a href="#supporting-offline-caching-for-legacy-applications"><span class="secno">5.7.1.1 </span>Supporting offline caching for legacy applications</a></li>
+       <li><a href="#appcacheevents"><span class="secno">5.7.1.2 </span>Event summary</a></li></ol></li>
      <li><a href="#appcache"><span class="secno">5.7.2 </span>Application caches</a></li>
      <li><a href="#manifests"><span class="secno">5.7.3 </span>The cache manifest syntax</a>
       <ol class="toc">
@@ -1978,7 +1979,7 @@
 
   <p>Since the malevolent purposes can be remarkably evil, user agent
   implementors are encouraged to consider how to provide their users
-  with tools to minimise leaking information that could be used to
+  with tools to minimize leaking information that could be used to
   fingerprint a user.</p>
 
   <p>Unfortunately, as the first paragraph in this section implies,
@@ -8760,6 +8761,15 @@
    <li><p>If the algorithm was not invoked with the <i>synchronous
    flag</i>, perform the remaining steps asynchronously.</p></li>
 
+   <li><p>If the <code><a href="#document">Document</a></code> with which any <a href="#concept-task" title="concept-task">tasks</a> <a href="#queue-a-task" title="queue a task">queued</a> by this algorithm would be associated doesn't have an
+   associated <a href="#browsing-context">browsing context</a>, then abort these steps.</p></li>
+
+<!--(redundant with 'at a time convenient...' below)
+   <li><p>Optionally, wait until the <code>Document</code> with which any <span
+   title="concept-task">tasks</span> <span title="queue a task">queued</span> by this algorithm
+   would be associated is <span title="active document">active</span>.</p></li>
+-->
+
    <li>
 
     <p>This is the <i>main step</i>.</p>
@@ -10428,7 +10438,7 @@
   attempting to impersonate another.</p>
 
   <p>When a <code><a href="#document">Document</a></code> is created by a <a href="#concept-script" title="concept-script">script</a> using the <code title="dom-DOMImplementation-createDocument"><a href="#dom-domimplementation-createdocument">createDocument()</a></code>
-  or <code title="dom-DOMHTMLImplementation-createHTMLDocument">createHTMLDocument()</code>
+  or <code title="dom-DOMImplementation-createHTMLDocument"><a href="#dom-domimplementation-createhtmldocument">createHTMLDocument()</a></code>
   APIs, <a href="#the-document's-address">the document's address</a> is the same as <a href="#the-document's-address">the
   document's address</a> of the <a href="#script's-document">script's document</a>, and
   the <code><a href="#document">Document</a></code> is both <a href="#ready-for-post-load-tasks">ready for post-load
@@ -13252,8 +13262,8 @@
    <li><p><a href="#run-pre-click-activation-steps">Run pre-click activation steps</a> on the
    element.</p></li>
 
-   <li><p><a href="#fire-a-click-event">Fire a <code title="event-click">click</code>
-   event</a> at the element.</p></li>
+   <li><p><a href="#fire-a-click-event">Fire a <code title="event-click">click</code> event</a> at the element. If the
+   <a href="#run-synthetic-click-activation-steps">run synthetic click activation steps</a> algorithm was invoked because the <code title="dom-click"><a href="#dom-click">click()</a></code> method was invoked, then the <code title="dom-event-isTrusted"><a href="#dom-event-istrusted">isTrusted</a></code> attribute must be initialized to false.</p></li>
 
    <li>
 
@@ -19023,7 +19033,7 @@
 
    <p>Here is a graduation programme with two sections, one for the list of people graduating, and
    one for the description of the ceremony. (The markup in this example features an uncommon style
-   sometimes used to minimise the amount of <a href="#inter-element-whitespace">inter-element whitespace</a>.)</p>
+   sometimes used to minimize the amount of <a href="#inter-element-whitespace">inter-element whitespace</a>.)</p>
 
    <pre>&lt;!DOCTYPE Html&gt;
 &lt;Html
@@ -23979,7 +23989,7 @@
    <li>One or the other of the following:
     <ul class="brief">
      <li><a href="#phrasing-content-1">Phrasing content</a>, but with no <code><a href="#the-ruby-element">ruby</a></code> elements and with no <code><a href="#the-ruby-element">ruby</a></code> element descendants
-     </li><li>A single <code><a href="#the-ruby-element">ruby</a></code> element, but with no further <code><a href="#the-ruby-element">ruby</a></code> element descendants
+     </li><li>A single <code><a href="#the-ruby-element">ruby</a></code> element that itself has no <code><a href="#the-ruby-element">ruby</a></code> element descendants
     </li></ul>
    </li><li>One or the other of the following:
     <ul class="brief">
@@ -31358,7 +31368,7 @@
     <tr>
      <td><dfn id="attr-media-preload-none" title="attr-media-preload-none"><code>none</code></dfn>
      </td><td><dfn id="attr-media-preload-none-state" title="attr-media-preload-none-state">None</dfn>
-     </td><td>Hints to the user agent that either the author does not expect the user to need the media resource, or that the server wants to minimise unnecessary traffic.
+     </td><td>Hints to the user agent that either the author does not expect the user to need the media resource, or that the server wants to minimize unnecessary traffic.
          This state does not provide a hint regarding how aggressively to actually download the media resource if buffering starts anyway (e.g. once the user hits "play").
     </td></tr><tr>
      <td><dfn id="attr-media-preload-metadata" title="attr-media-preload-metadata"><code>metadata</code></dfn>
@@ -36782,110 +36792,87 @@
 <!--TOPIC:Video and Audio-->
   <h5 id="user-interface"><span class="secno">4.8.10.13 </span>User interface</h5>
 
-  <p>The <dfn id="attr-media-controls" title="attr-media-controls"><code>controls</code></dfn>
-  attribute is a <a href="#boolean-attribute">boolean attribute</a>. If present, it
-  indicates that the author has not provided a scripted controller and
-  would like the user agent to provide its own set of controls.</p>
+  <p>The <dfn id="attr-media-controls" title="attr-media-controls"><code>controls</code></dfn> attribute is a <a href="#boolean-attribute">boolean
+  attribute</a>. If present, it indicates that the author has not provided a scripted controller
+  and would like the user agent to provide its own set of controls.</p>
 
   <div class="impl">
 
-  <p>If the attribute is present, or if <a href="#concept-n-noscript" title="concept-n-noscript">scripting is disabled</a> for the
-  <a href="#media-element">media element</a>, then the user agent should <dfn id="expose-a-user-interface-to-the-user">expose a
-  user interface to the user</dfn>. This user interface should include
-  features to begin playback, pause playback, seek to an arbitrary
-  position in the content (if the content supports arbitrary seeking),
-  change the volume, change the display of closed captions or embedded
-  sign-language tracks, select different audio tracks or turn on audio
-  descriptions, and show the media content in manners more suitable to
-  the user (e.g. full-screen video or in an independent resizable
-  window). Other controls may also be made available.</p>
+  <p>If the attribute is present, or if <a href="#concept-n-noscript" title="concept-n-noscript">scripting is
+  disabled</a> for the <a href="#media-element">media element</a>, then the user agent should <dfn id="expose-a-user-interface-to-the-user">expose a user
+  interface to the user</dfn>. This user interface should include features to begin playback, pause
+  playback, seek to an arbitrary position in the content (if the content supports arbitrary
+  seeking), change the volume, change the display of closed captions or embedded sign-language
+  tracks, select different audio tracks or turn on audio descriptions, and show the media content in
+  manners more suitable to the user (e.g. full-screen video or in an independent resizable window).
+  Other controls may also be made available.</p>
 
-  <p>If the <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, then the user agent should expose audio tracks
-  from all the <a href="#slaved-media-elements">slaved media elements</a> (although avoiding
-  duplicates if the same <a href="#media-resource">media resource</a> is being used
-  several times). If a <a href="#media-resource">media resource</a>'s audio track
-  exposed in this way has no known name, and it is the only audio
-  track for a particular <a href="#media-element">media element</a>, the user agent
-  should use the element's <code title="attr-title"><a href="#attr-title">title</a></code>
-  attribute, if any, as the name (or as part of the name) of that
-  track.</p>
+  <p>If the <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, then the user
+  agent should expose audio tracks from all the <a href="#slaved-media-elements">slaved media elements</a> (although
+  avoiding duplicates if the same <a href="#media-resource">media resource</a> is being used several times). If a
+  <a href="#media-resource">media resource</a>'s audio track exposed in this way has no known name, and it is the
+  only audio track for a particular <a href="#media-element">media element</a>, the user agent should use the
+  element's <code title="attr-title"><a href="#attr-title">title</a></code> attribute, if any, as the name (or as part of the
+  name) of that track.</p>
 
-  <p>Even when the attribute is absent, however, user agents may
-  provide controls to affect playback of the media resource
-  (e.g. play, pause, seeking, and volume controls), but such features
-  should not interfere with the page's normal rendering. For example,
-  such features could be exposed in the <a href="#media-element">media element</a>'s
-  context menu.</p>
+  <p>Even when the attribute is absent, however, user agents may provide controls to affect playback
+  of the media resource (e.g. play, pause, seeking, and volume controls), but such features should
+  not interfere with the page's normal rendering. For example, such features could be exposed in the
+  <a href="#media-element">media element</a>'s context menu. The user agent may implement this simply by <a href="#expose-a-user-interface-to-the-user" title="expose a user interface to the user">exposing a user interface to the user</a> as
+  described above (as if the <code title="attr-media-controls"><a href="#attr-media-controls">controls</a></code> attribute was
+  present).</p>
 
-  <p>Where possible (specifically, for starting, stopping, pausing,
-  and unpausing playback, for seeking, for changing the rate of
-  playback, for fast-forwarding or rewinding,
-  for listing, enabling, and disabling text tracks,
-  and for muting or changing the volume of the audio), user interface
-  features exposed by the user agent must be implemented in terms of
-  the DOM API described above, so that, e.g., all the same events
-  fire.</p>
+  <p>Where possible (specifically, for starting, stopping, pausing, and unpausing playback, for
+  seeking, for changing the rate of playback, for fast-forwarding or rewinding, for listing,
+  enabling, and disabling text tracks, and for muting or changing the volume of the audio), user
+  interface features exposed by the user agent must be implemented in terms of the DOM API described
+  above, so that, e.g., all the same events fire.</p>
 
-  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, the user agent's user interface for pausing and
-  unpausing playback, for seeking, for changing the rate of playback,
-  for fast-forwarding or rewinding, and for muting or changing the
-  volume of audio of the entire group must be implemented in terms of
-  the <code><a href="#mediacontroller">MediaController</a></code> API exposed on that <a href="#current-media-controller">current
-  media controller</a>. When a <a href="#media-element">media element</a> has a
-  <a href="#current-media-controller">current media controller</a>, and all the <a href="#slaved-media-elements">slaved
-  media elements</a> of that <code><a href="#mediacontroller">MediaController</a></code> are
-  paused, the user agent should also unpause all the <a href="#slaved-media-elements">slaved
-  media elements</a> when the user invokes a user agent interface
-  control for beginning playback.</p>
+  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, the user agent's
+  user interface for pausing and unpausing playback, for seeking, for changing the rate of playback,
+  for fast-forwarding or rewinding, and for muting or changing the volume of audio of the entire
+  group must be implemented in terms of the <code><a href="#mediacontroller">MediaController</a></code> API exposed on that
+  <a href="#current-media-controller">current media controller</a>. When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
+  controller</a>, and all the <a href="#slaved-media-elements">slaved media elements</a> of that
+  <code><a href="#mediacontroller">MediaController</a></code> are paused, the user agent should also unpause all the <a href="#slaved-media-elements">slaved
+  media elements</a> when the user invokes a user agent interface control for beginning
+  playback.</p>
 
-  <p>The "play" function in the user agent's interface must set the
-  <code title="">playbackRate</code> attribute to the value of the
-  <code title="">defaultPlaybackRate</code> attribute before invoking
-  the <code title="">play()</code> method.
-  When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, the attributes and method with those names on
-  that <code><a href="#mediacontroller">MediaController</a></code> object must be used. Otherwise,
-  the attributes and method with those names on the <a href="#media-element">media
-  element</a> itself must be used.
-  </p>
+  <p>The "play" function in the user agent's interface must set the <code title="">playbackRate</code> attribute to the value of the <code title="">defaultPlaybackRate</code> attribute before invoking the <code title="">play()</code>
+  method. When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, the
+  attributes and method with those names on that <code><a href="#mediacontroller">MediaController</a></code> object must be used.
+  Otherwise, the attributes and method with those names on the <a href="#media-element">media element</a> itself
+  must be used. </p>
 
-  <p>Features such as fast-forward or rewind must be implemented by
-  only changing the <code title="">playbackRate</code> attribute (and
-  not the <code title="">defaultPlaybackRate</code> attribute).
-  Again, when a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, the attributes with those names on that
-  <code><a href="#mediacontroller">MediaController</a></code> object must be used; otherwise, the
-  attributes with those names on the <a href="#media-element">media element</a> itself
-  must be used.
-  </p>
+  <p>Features such as fast-forward or rewind must be implemented by only changing the <code title="">playbackRate</code> attribute (and not the <code title="">defaultPlaybackRate</code>
+  attribute). Again, when a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>,
+  the attributes with those names on that <code><a href="#mediacontroller">MediaController</a></code> object must be used;
+  otherwise, the attributes with those names on the <a href="#media-element">media element</a> itself must be used.</p>
 
-  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, seeking must be implemented in terms of the <code title="dom-MediaController-currentTime"><a href="#dom-mediacontroller-currenttime">currentTime</a></code> attribute
-  on that <code><a href="#mediacontroller">MediaController</a></code> object. Otherwise, the user
-  agent must directly <a href="#dom-media-seek" title="dom-media-seek">seek</a> to the
-  requested position in the <a href="#media-element">media element</a>'s <a href="#media-timeline">media
-  timeline</a>.</p>
+  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, seeking must be
+  implemented in terms of the <code title="dom-MediaController-currentTime"><a href="#dom-mediacontroller-currenttime">currentTime</a></code>
+  attribute on that <code><a href="#mediacontroller">MediaController</a></code> object. Otherwise, the user agent must directly
+  <a href="#dom-media-seek" title="dom-media-seek">seek</a> to the requested position in the <a href="#media-element">media
+  element</a>'s <a href="#media-timeline">media timeline</a>. For media resources where seeking to an arbitrary
+  position would be slow, user agents are encouraged to use the <i>approximate-for-speed</i> flag
+  when seeking in response to the user manipulating an approximate position interface such as a seek
+  bar.</p>
 
-  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media
-  controller</a>, user agents may additionally provide the user
-  with controls that directly manipulate an individual <a href="#media-element">media
-  element</a> without affecting the <code><a href="#mediacontroller">MediaController</a></code>,
-  but such features are considered relatively advanced and unlikely to
-  be useful to most users.
+  <p>When a <a href="#media-element">media element</a> has a <a href="#current-media-controller">current media controller</a>, user agents may
+  additionally provide the user with controls that directly manipulate an individual <a href="#media-element">media
+  element</a> without affecting the <code><a href="#mediacontroller">MediaController</a></code>, but such features are
+  considered relatively advanced and unlikely to be useful to most users.</p>
 
-  </p><p>For the purposes of listing chapters in the <a href="#media-resource">media
-  resource</a>, only <a href="#text-track" title="text track">text tracks</a> in
-  the <a href="#media-element">media element</a>'s <a href="#list-of-text-tracks">list of text tracks</a>
-  that are <a href="#text-track-showing" title="text track showing">showing</a> and whose
-  <a href="#text-track-kind">text track kind</a> is <code title="dom-TextTrack-kind-chapters"><a href="#dom-texttrack-kind-chapters">chapters</a></code> should be used.
-  Such tracks must be interpreted according to the <a href="#rules-for-constructing-the-chapter-tree-from-a-text-track">rules for
-  constructing the chapter tree from a text track</a>.</p>
+  <p>For the purposes of listing chapters in the <a href="#media-resource">media resource</a>, only <a href="#text-track" title="text
+  track">text tracks</a> in the <a href="#media-element">media element</a>'s <a href="#list-of-text-tracks">list of text tracks</a>
+  that are <a href="#text-track-showing" title="text track showing">showing</a> and whose <a href="#text-track-kind">text track kind</a> is
+  <code title="dom-TextTrack-kind-chapters"><a href="#dom-texttrack-kind-chapters">chapters</a></code> should be used. Such tracks must be
+  interpreted according to the <a href="#rules-for-constructing-the-chapter-tree-from-a-text-track">rules for constructing the chapter tree from a text
+  track</a>. When seeking in response to a user maniplating a chapter selection interface, user
+  agents should not use the <i>approximate-for-speed</i> flag.</p>
 
-  <p>The <dfn id="dom-media-controls" title="dom-media-controls"><code>controls</code></dfn>
-  IDL attribute must <a href="#reflect">reflect</a> the content attribute of the
-  same name.</p>
+  <p>The <dfn id="dom-media-controls" title="dom-media-controls"><code>controls</code></dfn> IDL attribute must
+  <a href="#reflect">reflect</a> the content attribute of the same name.</p>
 
   <hr>
 
@@ -37669,7 +37656,9 @@
     <p>The list of defined contexts is given on the <a href="http://wiki.whatwg.org/wiki/CanvasContexts">WHATWG Wiki
     CanvasContexts page</a>. <a href="#refsWHATWGWIKI">[WHATWGWIKI]</a>
 
-    </p><p>Returns null if the given context ID is not supported or if the
+    </p><p>Example contexts are the "<code title="canvas-context-2d">2d</code>" <a href="#refsCANVAS2D">[CANVAS2D]</a> and the "<code title="canvas-context-webgl">webgl</code>" context <a href="#refsWEBGL">[WEBGL]</a>.</p>
+
+    <p>Returns null if the given context ID is not supported or if the
     canvas has already been initialized with some other (incompatible)
     context type (e.g. trying to get a "<code title="canvas-context-2d">2d</code>" context after getting a
     "<code title="canvas-context-webgl">webgl</code>" context).</p>
@@ -37685,7 +37674,9 @@
   that element. When created, a <code><a href="#the-canvas-element">canvas</a></code> element must not
   have a <a href="#primary-context">primary context</a>.</p>
 
-  <p>The <dfn id="dom-canvas-getcontext" title="dom-canvas-getContext"><code>getContext(<var title="">contextId</var>, <var title="">arguments...</var>)</code></dfn> method of the
+  <p>The most commonly used primary context is the HTML <code title="canvas-context-2d">Canvas 2D</code> Context.   <a href="#refsCANVAS2D">[CANVAS2D]</a>
+
+  </p><p>The <dfn id="dom-canvas-getcontext" title="dom-canvas-getContext"><code>getContext(<var title="">contextId</var>, <var title="">arguments...</var>)</code></dfn> method of the
   <code><a href="#the-canvas-element">canvas</a></code> element, when invoked, must run the following
   steps:</p>
 
@@ -38386,19 +38377,13 @@
 
   <ol>
 
-   <li><p>If the <code title="event-click"><a href="#event-click">click</a></code> event in
-   question is not <a href="#concept-events-trusted" title="concept-events-trusted">trusted</a>
-   (i.e. a <code title="dom-click"><a href="#dom-click">click()</a></code> method call was the
-   reason for the event being dispatched), and the <code><a href="#the-area-element">area</a></code>
+   <li><p>If the <code title="event-click"><a href="#event-click">click</a></code> event in question is not <a href="#concept-events-trusted" title="concept-events-trusted">trusted</a> (i.e. a <code title="dom-click"><a href="#dom-click">click()</a></code>
+   method call was the reason for the event being dispatched), and the <code><a href="#the-area-element">area</a></code>
 <!--DOWNLOAD-->
-   element's <code title="attr-hyperlink-target"><a href="#attr-hyperlink-target">target</a></code>
-   attribute is present and applying <a href="#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name">the rules for choosing a
-   browsing context given a browsing context name</a>, using the
-   value of the <code title="attr-hyperlink-target"><a href="#attr-hyperlink-target">target</a></code>
-   attribute as the browsing context name, would result in there not
-   being a chosen browsing context, then throw an
-   <code><a href="#invalidaccesserror">InvalidAccessError</a></code> exception and abort these
-   steps.</p></li>
+   element's <code title="attr-hyperlink-target"><a href="#attr-hyperlink-target">target</a></code> attribute is present and applying <a href="#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name">the rules for
+   choosing a browsing context given a browsing context name</a>, using the value of the <code title="attr-hyperlink-target"><a href="#attr-hyperlink-target">target</a></code> attribute as the browsing context name, would result
+   in there not being a chosen browsing context, then throw an <code><a href="#invalidaccesserror">InvalidAccessError</a></code>
+   exception and abort these steps.</p></li>
 
    <li><p>Otherwise, the user agent must <a href="#following-hyperlinks-0" title="following
    hyperlinks">follow the hyperlink</a>
@@ -63827,9 +63812,8 @@
    <li><p>Increase the <code><a href="#document">Document</a></code>'s
    <a href="#ignore-opens-during-unload-counter">ignore-opens-during-unload counter</a> by one.</p></li>
 
-   <li><p>Let <var title="">event</var> be a new
-   <code><a href="#beforeunloadevent">BeforeUnloadEvent</a></code> event object with the name <code title="event-beforeunload">beforeunload</code>, which does not
-   bubble but is cancelable.</p></li>
+   <li><p>Let <var title="">event</var> be a new <a href="#concept-events-trusted" title="concept-events-trusted">trusted</a>
+   <code><a href="#beforeunloadevent">BeforeUnloadEvent</a></code> event object with the name <code title="event-beforeunload">beforeunload</code>, which does not bubble but is cancelable.</p></li>
 
    <li><p><i>Dispatch</i>: Dispatch <var title="">event</var> at the
    <code><a href="#document">Document</a></code>'s <code><a href="#window">Window</a></code> object.</p></li>
@@ -64219,13 +64203,61 @@
   before the user agent has updated it, and even applications served
   over TLS can be made to work offline.</p>
 
-<!--(doesn't currently function)
-  <p><a href="http://www.whatwg.org/demos/offline/clock/clock2.html">View this example online</a>.</p>
--->
+  <p><a href="http://www.whatwg.org/demos/offline/clock/live-demo/clock.html">View this example online</a>.</p>
 
 
 
-  <h5 id="appcacheevents"><span class="secno">5.7.1.1 </span>Event summary</h5>
+  <h5 id="supporting-offline-caching-for-legacy-applications"><span class="secno">5.7.1.1 </span>Supporting offline caching for legacy applications</h5>
+
+  <p><i>This section is non-normative.</i></p>
+  <p>The application cache feature works best if the application logic is separate from the
+  application and user data, with the logic (markup, scripts, style sheets, images, etc) listed in
+  the manifest and stored in the application cache, with a finite number of static HTML pages for
+  the application, and with the application and user data stored in Web Storage or a client-side
+  Indexed Database, updated dynamically using Web Sockets, <code>XMLHttpRequest</code>, server-sent
+  events, or some other similar mechanism.</p>
+
+  <p>This model results in a fast experience for the user: the application immediately loads, and
+  fresh data is obtained as fast as the network will allow it (possibly while stale data shows).</p>
+
+  <p>Legacy applications, however, tend to be designed so that the user data and the logic are mixed
+  together in the HTML, with each operation resulting in a new HTML page from the server.</p>
+
+  <div class="example">
+
+   <p>For example, consider a news application. The typical architecture of such an application,
+   when not using the application cache feature, is that the user fetches the main page, and the
+   server returns a dynamically-generated page with the current headlines and the user interface
+   logic mixed together.</p>
+
+   <p>A news application designed for the application cache feature, however, would instead have the
+   main page just consist of the logic, and would then have the main page fetch the data separately
+   from the server, e.g. using <code>XMLHttpRequest</code>.</p>
+
+  </div>
+
+  <p>The mixed-content model does not work well with the application cache feature: since the
+  content is cached, it would result in the user always seeing the stale data from the previous time
+  the cache was updated.</p>
+
+  <p>While there is no way to make the legacy model work as fast as the separated model, it
+  <em>can</em> at least be retrofitted for offline use using the <span title="concept-appcache-mode-prefer-online">prefer-online</span> <a href="#concept-appcache-mode" title="concept-appcache-mode">application cache mode</a>. To do so, list all the static
+  resources used by the HTML page you want to have work offline in an <a href="#concept-appcache-manifest" title="concept-appcache-manifest">application cache manifest</a>, use the <code title="attr-html-manifest"><a href="#attr-html-manifest">manifest</a></code> attribute to select that manifest from the HTML file,
+  and then add the following line at the bottom of the manifest:</p>
+
+  <pre>SETTINGS:
+prefer-online
+NETWORK:
+*</pre>
+
+  <p>This causes the <a href="#application-cache">application cache</a> to only be used for <a href="#concept-appcache-master" title="concept-appcache-master">master entries</a> when the user is offline, and causes the
+  application cache to be used as an atomic HTTP cache (essentially pinning resources listed in the
+  manifest), while allowing all resources not listed in the manifest to be accessed normally when
+  the user is online.</p>
+
+
+
+  <h5 id="appcacheevents"><span class="secno">5.7.1.2 </span>Event summary</h5>
 
   <p><i>This section is non-normative.</i></p>
   <p>When the user visits a page that declares a manifest, the browser
@@ -64266,6 +64298,8 @@
      <td> <dfn id="event-appcache-progress" title="event-appcache-progress"><code>progress</code></dfn>
      </td><td> <code>ProgressEvent</code>
      </td><td> The user agent is downloading resources listed by the manifest.
+          The event object's <code title="dom-ProgressEvents-total">total</code> attribute returns the total number of files to be downloaded.
+          The event object's <code title="dom-ProgressEvents-loaded">loaded</code> attribute returns the number of files processed so far.
      </td><td> <code title="event-appcache-progress"><a href="#event-appcache-progress">progress</a></code>, <code title="event-appcache-error"><a href="#event-appcache-error">error</a></code>, <code title="event-appcache-cached"><a href="#event-appcache-cached">cached</a></code>, <code title="event-appcache-updateready"><a href="#event-appcache-updateready">updateready</a></code>
     </td></tr><tr>
      <td> <dfn id="event-appcache-cached" title="event-appcache-cached"><code>cached</code></dfn>
@@ -64296,6 +64330,10 @@
      </td><td> The user agent will try fetching the files again momentarily.
   </td></tr></tbody></table>
 
+  <p>These events are cancelable; their default action is for the user agent to show download
+  progress information. If the page shows its own update UI, canceling the events will prevent the
+  user agent from showing redundant progress information.</p>
+
 
 
   <div class="impl">
@@ -68074,29 +68112,23 @@
   firing a <code title="event-click"><a href="#event-click">click</a></code> event on the
   element. <a href="#refsDOMEVENTS">[DOMEVENTS]</a></p>
 
-  <p><dfn id="fire-a-simple-event" title="fire a simple event">Firing a simple event named <var title="">e</var></dfn> means that an event with the name <var title="">e</var>, which does not bubble (except where otherwise
-  stated) and is not cancelable (except where otherwise stated), and
-  which uses the <code><a href="#event">Event</a></code> interface, must be created and
-  dispatched at the given target.</p>
+  <p><dfn id="fire-a-simple-event" title="fire a simple event">Firing a simple event named <var title="">e</var></dfn> means
+  that a <a href="#concept-events-trusted" title="concept-events-trusted">trusted</a> event with the name <var title="">e</var>, which does not bubble (except where otherwise stated) and is not cancelable
+  (except where otherwise stated), and which uses the <code><a href="#event">Event</a></code> interface, must be created
+  and dispatched at the given target.</p>
 
-  <p><dfn id="fire-a-synthetic-mouse-event" title="fire a synthetic mouse event">Firing a synthetic
-  mouse event named <var title="">e</var></dfn> means that an event
-  with the name <var title="">e</var>, which does not bubble (except
-  where otherwise stated) and is not cancelable (except where
-  otherwise stated), and which uses the <code><a href="#mouseevent-10">MouseEvent</a></code>
-  interface, must be created and dispatched at the given target. The
-  event object must have its <code title="">screenX</code>, <code title="">screenY</code>, <code title="">clientX</code>, <code title="">clientY</code>, and <code title="">button</code> attributes
-  initialized to 0, its <code title="">ctrlKey</code>, <code title="">shiftKey</code>, <code title="">altKey</code>, and <code title="">metaKey</code> attributes initialized according to the
-  current state of the key input device, if any (false for any keys
-  that are not available), its <code title="">detail</code> attribute
-  initialized to 1, and its <code title="">relatedTarget</code>
-  attribute initialized to null. The <code title="">getModifierState()</code> method on the object must return
-  values appropriately describing the state of the key input device at
-  the time the event is created.</p>
+  <p><dfn id="fire-a-synthetic-mouse-event" title="fire a synthetic mouse event">Firing a synthetic mouse event named <var title="">e</var></dfn> means that an event with the name <var title="">e</var>, which is <a href="#concept-events-trusted" title="concept-events-trusted">trusted</a> (except where otherwise stated), does not bubble
+  (except where otherwise stated), is not cancelable (except where otherwise stated), and which uses
+  the <code><a href="#mouseevent-10">MouseEvent</a></code> interface, must be created and dispatched at the given target. The
+  event object must have its <code title="">screenX</code>, <code title="">screenY</code>, <code title="">clientX</code>, <code title="">clientY</code>, and <code title="">button</code>
+  attributes initialized to 0, its <code title="">ctrlKey</code>, <code title="">shiftKey</code>,
+  <code title="">altKey</code>, and <code title="">metaKey</code> attributes initialized according
+  to the current state of the key input device, if any (false for any keys that are not available),
+  its <code title="">detail</code> attribute initialized to 1, and its <code title="">relatedTarget</code> attribute initialized to null. The <code title="">getModifierState()</code> method on the object must return values appropriately
+  describing the state of the key input device at the time the event is created.</p>
 
-  <p><dfn id="fire-a-click-event" title="fire a click event">Firing a <code title="event-click">click</code> event</dfn> means <a href="#fire-a-synthetic-mouse-event" title="fire
-  a synthetic mouse event">firing a synthetic mouse event named <code title="event-click">click</code></a>, which bubbles and is
-  cancelable.</p>
+  <p><dfn id="fire-a-click-event" title="fire a click event">Firing a <code title="event-click">click</code> event</dfn>
+  means <a href="#fire-a-synthetic-mouse-event" title="fire a synthetic mouse event">firing a synthetic mouse event named <code title="event-click">click</code></a>, which bubbles and is cancelable.</p>
 
   <p>The default action of these events is to do nothing except where
   otherwise stated.</p>
@@ -69540,6 +69572,7 @@
 
     <ul class="brief">
      <li><code title="">irc</code></li>
+     <li><code title="">geo</code></li>
      <li><code title="">mailto</code></li>
      <li><code title="">magnet</code></li>
      <li><code title="">mms</code></li>
@@ -70736,11 +70769,13 @@
 
   </ul>
 
-  <p>In addition, each shape that is generated for an
-  <code><a href="#the-area-element">area</a></code> element should be <a href="#focusable">focusable</a>, unless
-  platform conventions dictate otherwise. (A single <code><a href="#the-area-element">area</a></code>
-  element can correspond to multiple shapes, since image maps can be
-  reused with multiple images on a page.)</p>
+  <p>In addition, each shape that is generated for an <code><a href="#the-area-element">area</a></code> element, any
+  user-agent-provided interface components of <span title="media elements">media elements</span>
+  (e.g. a play button), and distinct user interface components of form controls (e.g. "up" and
+  "down" buttons on an <code title="attr-input-type-number"><a href="#number-state-(type=number)">&lt;input type=number&gt;</a></code> spin
+  control), should be <a href="#focusable">focusable</a>, unless platform conventions dictate otherwise. (A
+  single <code><a href="#the-area-element">area</a></code> element can correspond to multiple shapes, since image maps can be reused
+  with multiple images on a page.)</p>
 
   <p>The user agent may also make part of a <code><a href="#the-details-element">details</a></code>
   element's rendering <a href="#focusable">focusable</a>, to enable the element to
@@ -70748,6 +70783,9 @@
   from the <code><a href="#the-details-element">details</a></code> or <code><a href="#the-summary-element">summary</a></code> element being
   focusable.</p>
 
+  <p>Notwithstanding the above, user agents may make <em>any</em> element or part of an element
+  focusable, especially to aid with accessibility or to better match platform conventions.</p>
+
   <hr>
 
   <p>The <dfn id="focusing-steps">focusing steps</dfn> for an element are as follows:</p>
@@ -72995,15 +73033,12 @@
 
    <li>
 
-    <p>Create a <code><a href="#dragevent">DragEvent</a></code> object and initialize it to
-    have the given name <var title="">e</var>, to bubble, to be
-    cancelable unless <var title="">e</var> is <code title="event-dragleave"><a href="#event-dragleave">dragleave</a></code> or <code title="event-dragend"><a href="#event-dragend">dragend</a></code>, and to have the <code title="dom-UIEvent-detail"><a href="#dom-uievent-detail">detail</a></code> attribute initialized to
-    zero, the mouse and key attributes initialized according to the
-    state of the input devices as they would be for user interaction
-    events, the <code title="">relatedTarget</code> attribute
-    initialized to null, and the <code title="dom-DragEvent-dataTransfer"><a href="#dom-dragevent-datatransfer">dataTransfer</a></code> attribute
-    initialized to <var title="">dataTransfer</var>, the
-    <code><a href="#datatransfer">DataTransfer</a></code> object created above.</p>
+    <p>Create a <a href="#concept-events-trusted" title="concept-events-trusted">trusted</a> <code><a href="#dragevent">DragEvent</a></code> object
+    and initialize it to have the given name <var title="">e</var>, to bubble, to be cancelable
+    unless <var title="">e</var> is <code title="event-dragleave"><a href="#event-dragleave">dragleave</a></code> or <code title="event-dragend"><a href="#event-dragend">dragend</a></code>, and to have the <code title="dom-UIEvent-detail"><a href="#dom-uievent-detail">detail</a></code> attribute initialized to zero, the mouse and key
+    attributes initialized according to the state of the input devices as they would be for user
+    interaction events, the <code title="">relatedTarget</code> attribute initialized to null, and
+    the <code title="dom-DragEvent-dataTransfer"><a href="#dom-dragevent-datatransfer">dataTransfer</a></code> attribute initialized to <var title="">dataTransfer</var>, the <code><a href="#datatransfer">DataTransfer</a></code> object created above.</p>
 
     <!-- interaction event spec point -->
 
@@ -79525,6 +79560,10 @@
 
   <hr>
 
+  <!-- The names of these algorithms are kinda confusing; e.g. see the confusion in
+         https://www.w3.org/Bugs/Public/show_bug.cgi?id=18367
+       Not sure what we could call them instead, though... -->
+
   <p>When the steps below require the UA to <dfn id="insert-an-html-element">insert an HTML
   element</dfn> for a token, the UA must first <a href="#create-an-element-for-the-token">create an element
   for the token</a> in the <a href="#html-namespace-0">HTML namespace</a>, and then
@@ -79722,6 +79761,10 @@
   parent">foster parented</dfn>, the node <var title="">node</var>
   must be inserted into the <i><a href="#foster-parent-element">foster parent element</a></i>.</p>
 
+  <p class="note">This typically happens as part of the <a href="#insert-an-html-element">insert an HTML element</a>
+  algorithm above: when that algorithm would normally insert the newly created node into the
+  <a href="#current-node">current node</a>, it gets inserted into the <i><a href="#foster-parent-element">foster parent element</a></i> instead.</p>
+
   <p>The <dfn id="foster-parent-element">foster parent element</dfn> is the parent element of the
   last <code><a href="#the-table-element">table</a></code> element in the <a href="#stack-of-open-elements">stack of open
   elements</a>, if there is a <code><a href="#the-table-element">table</a></code> element and it has
@@ -87197,7 +87240,9 @@
 input[type=hidden i], link, menu[type=context i], meta, noembed, noframes,
 param, rp, script, source, style, track, title {
   display: none;
-}</pre>
+}
+
+embed[hidden] { display: inline; height: 0; width: 0; }</pre> <!-- because for legacy reasons it still needs to instantiate the plugin -->
 
   <p>The user agent is expected to force the 'display' property of
   <code><a href="#the-noscript-element">noscript</a></code> elements for whom <a href="#concept-n-script" title="concept-n-script">scripting is enabled</a> to compute to
@@ -87519,7 +87564,7 @@
 
   <p>When a particular part of a ruby has more than one annotation,
   the annotations should be distributed on both sides of the base text
-  so as to minimise the stacking of ruby annotations on one side.</p>
+  so as to minimize the stacking of ruby annotations on one side.</p>
 
   <p class="note">When it becomes possible to do so, the preceding
   requirement will be updated to be expressed in terms of CSS ruby.
@@ -96112,6 +96157,9 @@
    <dt id="refsBOCU1">[BOCU1]</dt>
    <dd>(Non-normative) <cite><a href="http://www.unicode.org/notes/tn6/">UTN #6: BOCU-1: MIME-Compatible Unicode Compression</a></cite>, M. Scherer, M. Davis. Unicode Consortium.</dd>
 
+   <dt id="refsCANVAS2D">[CANVAS2D]</dt>
+   <dd>(Non-normative) <cite><a href="http://www.w3.org/TR/2dcontext/">HTML Canvas 2D Context</a></cite>, R. Cabanier, E. Graff, J. Munro, T. Wiltzius. W3C.</dd>
+
    <dt id="refsCESU8">[CESU8]</dt>
    <dd>(Non-normative) <cite><a href="http://www.unicode.org/reports/tr26/">UTR #26: Compatibility Encoding Scheme For UTF-16: 8-BIT (CESU-8)</a></cite>, T. Phipps. Unicode Consortium.</dd>
 

Index: urls.html
===================================================================
RCS file: /sources/public/html5/spec/urls.html,v
retrieving revision 1.275
retrieving revision 1.276
diff -u -d -r1.275 -r1.276
--- urls.html	15 Oct 2012 16:15:55 -0000	1.275
+++ urls.html	21 Oct 2012 22:44:54 -0000	1.276
@@ -1298,6 +1298,15 @@
    <li><p>If the algorithm was not invoked with the <i>synchronous
    flag</i>, perform the remaining steps asynchronously.</li>
 
+   <li><p>If the <code><a href="dom.html#document">Document</a></code> with which any <a href="webappapis.html#concept-task" title="concept-task">tasks</a> <a href="webappapis.html#queue-a-task" title="queue a task">queued</a> by this algorithm would be associated doesn't have an
+   associated <a href="browsers.html#browsing-context">browsing context</a>, then abort these steps.</li>
+
+<!--(redundant with 'at a time convenient...' below)
+   <li><p>Optionally, wait until the <code>Document</code> with which any <span
+   title="concept-task">tasks</span> <span title="queue a task">queued</span> by this algorithm
+   would be associated is <span title="active document">active</span>.</p></li>
+-->
+
    <li>
 
     <p>This is the <i>main step</i>.</p>

Index: tokenization.html
===================================================================
RCS file: /sources/public/html5/spec/tokenization.html,v
retrieving revision 1.205
retrieving revision 1.206
diff -u -d -r1.205 -r1.206
--- tokenization.html	15 Oct 2012 16:15:55 -0000	1.205
+++ tokenization.html	21 Oct 2012 22:44:54 -0000	1.206
@@ -2681,7 +2681,9 @@
   <a href="attributes-common-to-form-controls.html#concept-fe-value" title="concept-fe-value">value</a> and <a href="attributes-common-to-form-controls.html#concept-fe-checked" title="concept-fe-checked">checkedness</a> based on the element's
   attributes.)</p>
 
-  <hr><p>When the steps below require the UA to <dfn id="insert-an-html-element">insert an HTML
+  <hr><!-- The names of these algorithms are kinda confusing; e.g. see the confusion in
+         https://www.w3.org/Bugs/Public/show_bug.cgi?id=18367
+       Not sure what we could call them instead, though... --><p>When the steps below require the UA to <dfn id="insert-an-html-element">insert an HTML
   element</dfn> for a token, the UA must first <a href="#create-an-element-for-the-token">create an element
   for the token</a> in the <a href="namespaces.html#html-namespace-0">HTML namespace</a>, and then
   append this node to the <a href="parsing.html#current-node">current node</a>, and push it onto
@@ -2858,6 +2860,10 @@
   parent">foster parented</dfn>, the node <var title="">node</var>
   must be inserted into the <i><a href="#foster-parent-element">foster parent element</a></i>.</p>
 
+  <p class="note">This typically happens as part of the <a href="#insert-an-html-element">insert an HTML element</a>
+  algorithm above: when that algorithm would normally insert the newly created node into the
+  <a href="parsing.html#current-node">current node</a>, it gets inserted into the <i><a href="#foster-parent-element">foster parent element</a></i> instead.</p>
+
   <p>The <dfn id="foster-parent-element">foster parent element</dfn> is the parent element of the
   last <code><a href="the-table-element.html#the-table-element">table</a></code> element in the <a href="parsing.html#stack-of-open-elements">stack of open
   elements</a>, if there is a <code><a href="the-table-element.html#the-table-element">table</a></code> element and it has

Index: introduction.html
===================================================================
RCS file: /sources/public/html5/spec/introduction.html,v
retrieving revision 1.1271
retrieving revision 1.1272
diff -u -d -r1.1271 -r1.1272
--- introduction.html	15 Oct 2012 16:15:46 -0000	1.1271
+++ introduction.html	21 Oct 2012 22:44:53 -0000	1.1272
@@ -864,7 +864,7 @@
 
   <p>Since the malevolent purposes can be remarkably evil, user agent
   implementors are encouraged to consider how to provide their users
-  with tools to minimise leaking information that could be used to
+  with tools to minimize leaking information that could be used to
   fingerprint a user.</p>
 
   <p>Unfortunately, as the first paragraph in this section implies,

Index: editing.html
===================================================================
RCS file: /sources/public/html5/spec/editing.html,v
retrieving revision 1.1258
retrieving revision 1.1259
diff -u -d -r1.1258 -r1.1259
--- editing.html	15 Oct 2012 16:15:44 -0000	1.1258
+++ editing.html	21 Oct 2012 22:44:52 -0000	1.1259
@@ -807,11 +807,13 @@
    <li><a href="browsers.html#browsing-context-container" title="browsing context container">Browsing context
    containers</a></li> <!-- like <iframe>s -->
 
-  </ul><p>In addition, each shape that is generated for an
-  <code><a href="the-area-element.html#the-area-element">area</a></code> element should be <a href="#focusable">focusable</a>, unless
-  platform conventions dictate otherwise. (A single <code><a href="the-area-element.html#the-area-element">area</a></code>
-  element can correspond to multiple shapes, since image maps can be
-  reused with multiple images on a page.)</p>
+  </ul><p>In addition, each shape that is generated for an <code><a href="the-area-element.html#the-area-element">area</a></code> element, any
+  user-agent-provided interface components of <span title="media elements">media elements</span>
+  (e.g. a play button), and distinct user interface components of form controls (e.g. "up" and
+  "down" buttons on an <code title="attr-input-type-number"><a href="states-of-the-type-attribute.html#number-state-(type=number)">&lt;input type=number&gt;</a></code> spin
+  control), should be <a href="#focusable">focusable</a>, unless platform conventions dictate otherwise. (A
+  single <code><a href="the-area-element.html#the-area-element">area</a></code> element can correspond to multiple shapes, since image maps can be reused
+  with multiple images on a page.)</p>
 
   <p>The user agent may also make part of a <code><a href="the-details-element.html#the-details-element">details</a></code>
   element's rendering <a href="#focusable">focusable</a>, to enable the element to
@@ -819,6 +821,9 @@
   from the <code><a href="the-details-element.html#the-details-element">details</a></code> or <code><a href="the-summary-element.html#the-summary-element">summary</a></code> element being
   focusable.</p>
 
+  <p>Notwithstanding the above, user agents may make <em>any</em> element or part of an element
+  focusable, especially to aid with accessibility or to better match platform conventions.</p>
+
   <hr><p>The <dfn id="focusing-steps">focusing steps</dfn> for an element are as follows:</p>
 
   <ol><li><p>If the element is not <a href="infrastructure.html#in-a-document" title="in a Document">in a

Index: the-area-element.html
===================================================================
RCS file: /sources/public/html5/spec/the-area-element.html,v
retrieving revision 1.204
retrieving revision 1.205
diff -u -d -r1.204 -r1.205
--- the-area-element.html	15 Oct 2012 16:15:49 -0000	1.204
+++ the-area-element.html	21 Oct 2012 22:44:54 -0000	1.205
@@ -550,19 +550,13 @@
   <p>The <a href="content-models.html#activation-behavior">activation behavior</a> of <code><a href="#the-area-element">area</a></code>
   elements is to run the following steps:</p>
 
-  <ol><li><p>If the <code title="event-click"><a href="infrastructure.html#event-click">click</a></code> event in
-   question is not <a href="infrastructure.html#concept-events-trusted" title="concept-events-trusted">trusted</a>
-   (i.e. a <code title="dom-click"><a href="editing.html#dom-click">click()</a></code> method call was the
-   reason for the event being dispatched), and the <code><a href="#the-area-element">area</a></code>
+  <ol><li><p>If the <code title="event-click"><a href="infrastructure.html#event-click">click</a></code> event in question is not <a href="infrastructure.html#concept-events-trusted" title="concept-events-trusted">trusted</a> (i.e. a <code title="dom-click"><a href="editing.html#dom-click">click()</a></code>
+   method call was the reason for the event being dispatched), and the <code><a href="#the-area-element">area</a></code>
 <!--DOWNLOAD-->
-   element's <code title="attr-hyperlink-target"><a href="links.html#attr-hyperlink-target">target</a></code>
-   attribute is present and applying <a href="browsers.html#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name">the rules for choosing a
-   browsing context given a browsing context name</a>, using the
-   value of the <code title="attr-hyperlink-target"><a href="links.html#attr-hyperlink-target">target</a></code>
-   attribute as the browsing context name, would result in there not
-   being a chosen browsing context, then throw an
-   <code><a href="infrastructure.html#invalidaccesserror">InvalidAccessError</a></code> exception and abort these
-   steps.</li>
+   element's <code title="attr-hyperlink-target"><a href="links.html#attr-hyperlink-target">target</a></code> attribute is present and applying <a href="browsers.html#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name">the rules for
+   choosing a browsing context given a browsing context name</a>, using the value of the <code title="attr-hyperlink-target"><a href="links.html#attr-hyperlink-target">target</a></code> attribute as the browsing context name, would result
+   in there not being a chosen browsing context, then throw an <code><a href="infrastructure.html#invalidaccesserror">InvalidAccessError</a></code>
+   exception and abort these steps.</li>
 
    <li><p>Otherwise, the user agent must <a href="links.html#following-hyperlinks-0" title="following
    hyperlinks">follow the hyperlink</a>

Index: references.html
===================================================================
RCS file: /sources/public/html5/spec/references.html,v
retrieving revision 1.1273
retrieving revision 1.1274
diff -u -d -r1.1273 -r1.1274
--- references.html	15 Oct 2012 16:15:47 -0000	1.1273
+++ references.html	21 Oct 2012 22:44:53 -0000	1.1274
@@ -426,6 +426,9 @@
    <dt id="refsBOCU1">[BOCU1]</dt>
    <dd>(Non-normative) <cite><a href="http://www.unicode.org/notes/tn6/">UTN #6: BOCU-1: MIME-Compatible Unicode Compression</a></cite>, M. Scherer, M. Davis. Unicode Consortium.</dd>
 
+   <dt id="refsCANVAS2D">[CANVAS2D]</dt>
+   <dd>(Non-normative) <cite><a href="http://www.w3.org/TR/2dcontext/">HTML Canvas 2D Context</a></cite>, R. Cabanier, E. Graff, J. Munro, T. Wiltzius. W3C.</dd>
+
    <dt id="refsCESU8">[CESU8]</dt>
    <dd>(Non-normative) <cite><a href="http://www.unicode.org/reports/tr26/">UTR #26: Compatibility Encoding Scheme For UTF-16: 8-BIT (CESU-8)</a></cite>, T. Phipps. Unicode Consortium.</dd>
 

Index: the-section-element.html
===================================================================
RCS file: /sources/public/html5/spec/the-section-element.html,v
retrieving revision 1.205
retrieving revision 1.206
diff -u -d -r1.205 -r1.206
--- the-section-element.html	15 Oct 2012 16:15:53 -0000	1.205
+++ the-section-element.html	21 Oct 2012 22:44:54 -0000	1.206
@@ -445,7 +445,7 @@
 
    <p>Here is a graduation programme with two sections, one for the list of people graduating, and
    one for the description of the ceremony. (The markup in this example features an uncommon style
-   sometimes used to minimise the amount of <a href="content-models.html#inter-element-whitespace">inter-element whitespace</a>.)</p>
+   sometimes used to minimize the amount of <a href="content-models.html#inter-element-whitespace">inter-element whitespace</a>.)</p>
 
    <pre>&lt;!DOCTYPE Html&gt;
 &lt;Html

Index: webappapis.html
===================================================================
RCS file: /sources/public/html5/spec/webappapis.html,v
retrieving revision 1.403
retrieving revision 1.404
diff -u -d -r1.403 -r1.404
--- webappapis.html	15 Oct 2012 16:15:55 -0000	1.403
+++ webappapis.html	21 Oct 2012 22:44:54 -0000	1.404
@@ -1815,29 +1815,23 @@
   firing a <code title="event-click"><a href="infrastructure.html#event-click">click</a></code> event on the
   element. <a href="references.html#refsDOMEVENTS">[DOMEVENTS]</a></p>
 
-  <p><dfn id="fire-a-simple-event" title="fire a simple event">Firing a simple event named <var title="">e</var></dfn> means that an event with the name <var title="">e</var>, which does not bubble (except where otherwise
-  stated) and is not cancelable (except where otherwise stated), and
-  which uses the <code><a href="infrastructure.html#event">Event</a></code> interface, must be created and
-  dispatched at the given target.</p>
+  <p><dfn id="fire-a-simple-event" title="fire a simple event">Firing a simple event named <var title="">e</var></dfn> means
+  that a <a href="infrastructure.html#concept-events-trusted" title="concept-events-trusted">trusted</a> event with the name <var title="">e</var>, which does not bubble (except where otherwise stated) and is not cancelable
+  (except where otherwise stated), and which uses the <code><a href="infrastructure.html#event">Event</a></code> interface, must be created
+  and dispatched at the given target.</p>
 
-  <p><dfn id="fire-a-synthetic-mouse-event" title="fire a synthetic mouse event">Firing a synthetic
-  mouse event named <var title="">e</var></dfn> means that an event
-  with the name <var title="">e</var>, which does not bubble (except
-  where otherwise stated) and is not cancelable (except where
-  otherwise stated), and which uses the <code><a href="infrastructure.html#mouseevent-10">MouseEvent</a></code>
-  interface, must be created and dispatched at the given target. The
-  event object must have its <code title="">screenX</code>, <code title="">screenY</code>, <code title="">clientX</code>, <code title="">clientY</code>, and <code title="">button</code> attributes
-  initialized to 0, its <code title="">ctrlKey</code>, <code title="">shiftKey</code>, <code title="">altKey</code>, and <code title="">metaKey</code> attributes initialized according to the
-  current state of the key input device, if any (false for any keys
-  that are not available), its <code title="">detail</code> attribute
-  initialized to 1, and its <code title="">relatedTarget</code>
-  attribute initialized to null. The <code title="">getModifierState()</code> method on the object must return
-  values appropriately describing the state of the key input device at
-  the time the event is created.</p>
+  <p><dfn id="fire-a-synthetic-mouse-event" title="fire a synthetic mouse event">Firing a synthetic mouse event named <var title="">e</var></dfn> means that an event with the name <var title="">e</var>, which is <a href="infrastructure.html#concept-events-trusted" title="concept-events-trusted">trusted</a> (except where otherwise stated), does not bubble
+  (except where otherwise stated), is not cancelable (except where otherwise stated), and which uses
+  the <code><a href="infrastructure.html#mouseevent-10">MouseEvent</a></code> interface, must be created and dispatched at the given target. The
+  event object must have its <code title="">screenX</code>, <code title="">screenY</code>, <code title="">clientX</code>, <code title="">clientY</code>, and <code title="">button</code>
+  attributes initialized to 0, its <code title="">ctrlKey</code>, <code title="">shiftKey</code>,
+  <code title="">altKey</code>, and <code title="">metaKey</code> attributes initialized according
+  to the current state of the key input device, if any (false for any keys that are not available),
+  its <code title="">detail</code> attribute initialized to 1, and its <code title="">relatedTarget</code> attribute initialized to null. The <code title="">getModifierState()</code> method on the object must return values appropriately
+  describing the state of the key input device at the time the event is created.</p>
 
-  <p><dfn id="fire-a-click-event" title="fire a click event">Firing a <code title="event-click">click</code> event</dfn> means <a href="#fire-a-synthetic-mouse-event" title="fire
-  a synthetic mouse event">firing a synthetic mouse event named <code title="event-click">click</code></a>, which bubbles and is
-  cancelable.</p>
+  <p><dfn id="fire-a-click-event" title="fire a click event">Firing a <code title="event-click">click</code> event</dfn>
+  means <a href="#fire-a-synthetic-mouse-event" title="fire a synthetic mouse event">firing a synthetic mouse event named <code title="event-click">click</code></a>, which bubbles and is cancelable.</p>
 
   <p>The default action of these events is to do nothing except where
   otherwise stated.</p>

Index: dnd.html
===================================================================
RCS file: /sources/public/html5/spec/dnd.html,v
retrieving revision 1.284
retrieving revision 1.285
diff -u -d -r1.284 -r1.285
--- dnd.html	15 Oct 2012 16:15:44 -0000	1.284
+++ dnd.html	21 Oct 2012 22:44:52 -0000	1.285
@@ -1631,15 +1631,12 @@
 
    <li>
 
-    <p>Create a <code><a href="#dragevent">DragEvent</a></code> object and initialize it to
-    have the given name <var title="">e</var>, to bubble, to be
-    cancelable unless <var title="">e</var> is <code title="event-dragleave"><a href="#event-dragleave">dragleave</a></code> or <code title="event-dragend"><a href="#event-dragend">dragend</a></code>, and to have the <code title="dom-UIEvent-detail"><a href="infrastructure.html#dom-uievent-detail">detail</a></code> attribute initialized to
-    zero, the mouse and key attributes initialized according to the
-    state of the input devices as they would be for user interaction
-    events, the <code title="">relatedTarget</code> attribute
-    initialized to null, and the <code title="dom-DragEvent-dataTransfer"><a href="#dom-dragevent-datatransfer">dataTransfer</a></code> attribute
-    initialized to <var title="">dataTransfer</var>, the
-    <code><a href="#datatransfer">DataTransfer</a></code> object created above.</p>
+    <p>Create a <a href="infrastructure.html#concept-events-trusted" title="concept-events-trusted">trusted</a> <code><a href="#dragevent">DragEvent</a></code> object
+    and initialize it to have the given name <var title="">e</var>, to bubble, to be cancelable
+    unless <var title="">e</var> is <code title="event-dragleave"><a href="#event-dragleave">dragleave</a></code> or <code title="event-dragend"><a href="#event-dragend">dragend</a></code>, and to have the <code title="dom-UIEvent-detail"><a href="infrastructure.html#dom-uievent-detail">detail</a></code> attribute initialized to zero, the mouse and key
+    attributes initialized according to the state of the input devices as they would be for user
+    interaction events, the <code title="">relatedTarget</code> attribute initialized to null, and
+    the <code title="dom-DragEvent-dataTransfer"><a href="#dom-dragevent-datatransfer">dataTransfer</a></code> attribute initialized to <var title="">dataTransfer</var>, the <code><a href="#datatransfer">DataTransfer</a></code> object created above.</p>
 
     <!-- interaction event spec point -->
 

Received on Sunday, 21 October 2012 22:45:03 UTC