[html5] r2073 - [e] (0) Setting up the spec for defining the event loop mechanism.

whatwg at whatwg.org whatwg at whatwg.org
Thu Aug 14 15:09:59 PDT 2008


Author: ianh
Date: 2008-08-14 15:09:57 -0700 (Thu, 14 Aug 2008)
New Revision: 2073

Modified:
   index
   source
Log:
[e] (0) Setting up the spec for defining the event loop mechanism.

/home/ianh/svn/webapps/hooks/commit-email.pl: `/usr/bin/svnlook diff /home/ianh/svn/webapps -r 2073' failed with this output:
Modified: index
===================================================================
--- index	2008-08-14 20:32:41 UTC (rev 2072)
+++ index	2008-08-14 22:09:57 UTC (rev 2073)
@@ -232,8 +232,7 @@
    this. There are many other issues that have been raised as well; the
    issues given in this document are not the only known issues! Also, firing
    of events needs to be unified (right now some bubble, some don't, they all
-   use different text to fire events, we don't have an official queueing
-   mechanism, etc).
+   use different text to fire events, etc).
 
   <h2 class="no-num no-toc" id=contents>Table of contents</h2>
   <!--begin-toc-->
@@ -1224,16 +1223,25 @@
       <ul class=toc>
        <li><a href="#nested"><span class=secno>5.1.1 </span>Nested browsing
         contexts</a>
+        <ul class=toc>
+         <li><a href="#navigating"><span class=secno>5.1.1.1.
+          </span>Navigating nested browsing contexts in the DOM</a>
+        </ul>
 
        <li><a href="#auxiliary"><span class=secno>5.1.2 </span>Auxiliary
         browsing contexts</a>
+        <ul class=toc>
+         <li><a href="#navigating0"><span class=secno>5.1.2.1.
+          </span>Navigating auxiliary browsing contexts in the DOM</a>
+        </ul>
 
        <li><a href="#secondary"><span class=secno>5.1.3 </span>Secondary
         browsing contexts</a>
 
        <li><a href="#security2"><span class=secno>5.1.4 </span>Security</a>
 
-       <li><a href="#threads"><span class=secno>5.1.5 </span>Threads</a>
+       <li><a href="#groupings"><span class=secno>5.1.5 </span>Groupings of
+        browsing contexts</a>
 
        <li><a href="#browsing"><span class=secno>5.1.6 </span>Browsing
         context names</a>
@@ -1262,24 +1270,26 @@
        <li><a href="#script0"><span class=secno>5.4.1 </span>Script execution
         contexts</a>
 
-       <li><a href="#security4"><span class=secno>5.4.2 </span>Security
+       <li><a href="#event"><span class=secno>5.4.2 </span>Event loops</a>
+
+       <li><a href="#security4"><span class=secno>5.4.3 </span>Security
         exceptions</a>
 
-       <li><a href="#javascript-protocol"><span class=secno>5.4.3 </span>The
+       <li><a href="#javascript-protocol"><span class=secno>5.4.4 </span>The
         <code title="">javascript:</code> protocol</a>
 
-       <li><a href="#events"><span class=secno>5.4.4 </span>Events</a>
+       <li><a href="#events"><span class=secno>5.4.5 </span>Events</a>
         <ul class=toc>
-         <li><a href="#event-handler-attributes"><span class=secno>5.4.4.1.
+         <li><a href="#event-handler-attributes"><span class=secno>5.4.5.1.
           </span>Event handler attributes</a>
 
-         <li><a href="#event"><span class=secno>5.4.4.2. </span>Event
+         <li><a href="#event0"><span class=secno>5.4.5.2. </span>Event
           firing</a>
 
-         <li><a href="#events0"><span class=secno>5.4.4.3. </span>Events and
+         <li><a href="#events0"><span class=secno>5.4.5.3. </span>Events and
           the <code>Window</code> object</a>
 
-         <li><a href="#runtime-script-errors"><span class=secno>5.4.4.4.
+         <li><a href="#runtime-script-errors"><span class=secno>5.4.5.4.
           </span>Runtime script errors</a>
         </ul>
       </ul>
@@ -1381,7 +1391,7 @@
      <li><a href="#browsing0"><span class=secno>5.9 </span>Browsing the
       Web</a>
       <ul class=toc>
-       <li><a href="#navigating"><span class=secno>5.9.1 </span>Navigating
+       <li><a href="#navigating1"><span class=secno>5.9.1 </span>Navigating
         across documents</a>
 
        <li><a href="#read-html"><span class=secno>5.9.2 </span>Page load
@@ -1435,11 +1445,11 @@
          <li><a href="#the-storage0"><span class=secno>5.10.1.5. </span>The
           <code title=event-storage>storage</code> event</a>
           <ul class=toc>
-           <li><a href="#event0"><span class=secno>5.10.1.5.1. </span>Event
+           <li><a href="#event1"><span class=secno>5.10.1.5.1. </span>Event
             definition</a>
           </ul>
 
-         <li><a href="#threads0"><span class=secno>5.10.1.6.
+         <li><a href="#threads"><span class=secno>5.10.1.6.
           </span>Threads</a>
         </ul>
 
@@ -1704,7 +1714,7 @@
 
    <li><a href="#comms"><span class=secno>7. </span>Communication</a>
     <ul class=toc>
-     <li><a href="#event1"><span class=secno>7.1 </span>Event definitions</a>
+     <li><a href="#event2"><span class=secno>7.1 </span>Event definitions</a>
       
 
      <li><a href="#server-sent-events"><span class=secno>7.2
@@ -7677,7 +7687,7 @@
            attribute DOMString <a href="#registrationmark0" title=dom-registrationMark>registrationMark</a>;
   readonly attribute DocumentFragment <a href="#originalcontent" title=dom-originalContent>originalContent</a>;
 
-  // <a href="#event4">event handler DOM attributes</a>
+  // <a href="#event5">event handler DOM attributes</a>
            attribute <span>EventListener</span> <a href="#onabort" title=handler-onabort>onabort</a>;
            attribute <span>EventListener</span> <a href="#onbeforeunload" title=handler-onbeforeunload>onbeforeunload</a>;
            attribute <span>EventListener</span> <a href="#onblur" title=handler-onblur>onblur</a>;
@@ -7761,7 +7771,7 @@
    <dd><code title=attr-title><a href="#title">title</a></code>
   </dl>
 
-  <p>In addition, the following <a href="#event3">event handler content
+  <p>In addition, the following <a href="#event4">event handler content
    attributes</a> may be specified on any <span>HTML element</span>:
 
   <dl class=element>
@@ -31639,6 +31649,9 @@
    a <code title=attr-iframe-seamless><a href="#seamless">seamless</a></code>
    attribute.
 
+  <h5 id=navigating><span class=secno>5.1.1.1. </span>Navigating nested
+   browsing contexts in the DOM</h5>
+
   <p>The <dfn id=top0 title=dom-top><code>top</code></dfn> DOM attribute on
    the <code><a href="#window">Window</a></code> object of a <a
    href="#browsing1">browsing context</a> <var title="">b</var> must return
@@ -31647,8 +31660,6 @@
    <code><a href="#window">Window</a></code> object if it was a <a
    href="#top-level">top-level browsing context</a> itself).
 
-  <hr>
-
   <p>The <dfn id=parent0 title=dom-parent><code>parent</code></dfn> DOM
    attribute on the <code><a href="#window">Window</a></code> object of a <a
    href="#browsing1">browsing context</a> <var title="">b</var> must return
@@ -31701,6 +31712,9 @@
    href="#opener">opener browsing context</a> when the <a
    href="#auxiliary0">auxiliary browsing context</a> was created.
 
+  <h5 id=navigating0><span class=secno>5.1.2.1. </span>Navigating auxiliary
+   browsing contexts in the DOM</h5>
+
   <p>The <dfn id=opener0 title=dom-opener><code>opener</code></dfn> DOM
    attribute on the <code><a href="#window">Window</a></code> object must
    return the <code><a href="#window">Window</a></code> object of the <a
@@ -31749,7 +31763,8 @@
     itself).
   </ul>
 
-  <h4 id=threads><span class=secno>5.1.5 </span>Threads</h4>
+  <h4 id=groupings><span class=secno>5.1.5 </span>Groupings of browsing
+   contexts</h4>
 
   <p>Each <a href="#browsing1">browsing context</a> is defined as having a
    list of zero or more <dfn id=directly>directly reachable browsing
@@ -31775,18 +31790,6 @@
    reachable browsing contexts</a> forms a <dfn id=unit-of>unit of related
    browsing contexts</dfn>.
 
-  <p>All the executable code in a <a href="#unit-of">unit of related browsing
-   contexts</a> must execute on a single conceptual thread. The dispatch of
-   events fired by the user agent (e.g. in response to user actions or
-   network activity) and the execution of any scripts associated with timers
-   must be serialized so that for each <a href="#unit-of">unit of related
-   browsing contexts</a> there is only one script being executed at a time.</p>
-  <!-- XXX queue concept should be made generic across the spec.
-   "Once no other scripts are executing in the <span>unit of
-   related browsing contexts</span>, ..."
- this applies to anything firing events or calling callbacks
- asynchronously. -->
-
   <h4 id=browsing><span class=secno>5.1.6 </span>Browsing context names</h4>
 
   <p>Browsing contexts can have a <dfn id=browsing3>browsing context
@@ -31955,7 +31958,7 @@
   void <a href="#postmessage0" title=dom-window-postMessage-2>postMessage</a>(in DOMString message, in DOMString targetOrigin);
   void <a href="#postmessage1" title=dom-window-postMessage-3>postMessage</a>(in DOMString message, in <a href="#messageport0">MessagePort</a> messagePort, in DOMString targetOrigin);
 
-  // <a href="#event4">event handler DOM attributes</a>
+  // <a href="#event5">event handler DOM attributes</a>
            attribute <span>EventListener</span> <a href="#onabort" title=handler-onabort>onabort</a>;
            attribute <span>EventListener</span> <a href="#onbeforeunload" title=handler-onbeforeunload>onbeforeunload</a>;
            attribute <span>EventListener</span> <a href="#onblur" title=handler-onblur>onblur</a>;
@@ -32243,7 +32246,7 @@
      <dd>The owner is the <code>Document</code> to which the <code><a
       href="#script1">script</a></code> element belongs.
 
-     <dt>If a script is in an <a href="#event3" title="event handler content
+     <dt>If a script is in an <a href="#event4" title="event handler content
       attributes">event handler content attribute</a>
 
      <dd>The owner is the <code>Document</code> to which the attribute node
@@ -32588,8 +32591,8 @@
     rule in a CSS <code><a href="#style1">style</a></code> element block).
 
    <li>Event handlers, whether registered through the DOM using <code
-    title="">addEventListener()</code>, by explicit <a href="#event3">event
-    handler content attributes</a>, by <a href="#event4">event handler DOM
+    title="">addEventListener()</code>, by explicit <a href="#event4">event
+    handler content attributes</a>, by <a href="#event5">event handler DOM
     attributes</a>, or otherwise.
 
    <li>Processing of technologies like XBL or SVG that have their own
@@ -32679,12 +32682,17 @@
    will disable any event handler attributes, event listeners, timeouts, etc,
    that were set by scripts in the document.
 
-  <h4 id=security4><span class=secno>5.4.2 </span>Security exceptions</h4>
+  <h4 id=event><span class=secno>5.4.2 </span>Event loops</h4>
 
+  <p class=big-issue>...</p>
+  <!-- XXXqueue-->
+
+  <h4 id=security4><span class=secno>5.4.3 </span>Security exceptions</h4>
+
   <p class=big-issue>Define <dfn id=security10>security exception</dfn>.</p>
   <!-- SCRIPT EXEC -->
 
-  <h4 id=javascript-protocol><span class=secno>5.4.3 </span><dfn
+  <h4 id=javascript-protocol><span class=secno>5.4.4 </span><dfn
    id=the-javascript title="javascript protocol">The <code
    title="">javascript:</code> protocol</dfn></h4>
 
@@ -32770,7 +32778,7 @@
    execute (and just return void) in certain cases, e.g. in a sandbox or when
    the user has disabled scripting altogether.
 
-  <h4 id=events><span class=secno>5.4.4 </span>Events</h4>
+  <h4 id=events><span class=secno>5.4.5 </span>Events</h4>
 
   <p class=big-issue>We need to define how to handle events that are to be
    fired on a Document that is no longer the active document of its browsing
@@ -32781,17 +32789,17 @@
    element section, which says scripts don't run when the document isn't
    active.
 
-  <h5 id=event-handler-attributes><span class=secno>5.4.4.1. </span>Event
+  <h5 id=event-handler-attributes><span class=secno>5.4.5.1. </span>Event
    handler attributes</h5>
   <!-- http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A...%3Cscript%3E%0Aw(a%3Ddocument.implementation.createDocument(null%2C%20null%2C%20null))%3B%0Aw(a.appendChild(a.createElementNS('http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml'%2C%20'html')))%3B%0Aw(b%3Da.firstChild.appendChild(a.createElementNS('http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml'%2C%20'body')))%3B%0Aw(b.test%20%3D%20w)%3B%0Aw(b.setAttribute('onclick'%2C%20'test(%22fire%3A%20%22%20%2B%20event)'))%3B%0Aw(b.onclick)%3B%0Aw(e%3Da.createEvent('Event'))%3B%0Aw(e.initEvent('click'%2C%20false%2C%20false))%3B%0Aw(b.dispatchEvent(e))%3B%0A%3C%2Fscript%3E -->
 
-  <p><a href="#html-elements">HTML elements</a> can have <dfn id=event2>event
+  <p><a href="#html-elements">HTML elements</a> can have <dfn id=event3>event
    handler attributes</dfn> specified. These act as bubbling event listeners
    for the element on which they are specified.
 
-  <p>Each event handler attribute has two parts, an <a href="#event3"
+  <p>Each event handler attribute has two parts, an <a href="#event4"
    title="event handler content attributes">event handler content
-   attribute</a> and an <a href="#event4" title="event handler DOM
+   attribute</a> and an <a href="#event5" title="event handler DOM
    attributes">event handler DOM attribute</a>. Event handler attributes must
    initially be set to null. When their value changes (through the changing
    of their event handler content attribute or their event handler DOM
@@ -32799,11 +32807,11 @@
    <code>EventListener</code> object assigned to them.
 
   <p>Objects other than <code>Element</code> objects, in particular <code><a
-   href="#window">Window</a></code>, only have <a href="#event4" title="event
+   href="#window">Window</a></code>, only have <a href="#event5" title="event
    handler DOM attributes">event handler DOM attribute</a> (since they have
    no content attributes).
 
-  <p><dfn id=event3>Event handler content attributes</dfn>, when specified,
+  <p><dfn id=event4>Event handler content attributes</dfn>, when specified,
    must contain valid ECMAScript code matching the ECMAScript <code
    title="">FunctionBody</code> production. <a
    href="#refsECMA262">[ECMA262]</a></p>
@@ -32841,7 +32849,7 @@
 
   <p class=big-issue>How do we allow non-JS event handlers?
 
-  <p><dfn id=event4>Event handler DOM attributes</dfn>, on setting, must set
+  <p><dfn id=event5>Event handler DOM attributes</dfn>, on setting, must set
    the corresponding event handler attribute to their new value, and on
    getting, must return whatever the current value of the corresponding event
    handler attribute is (possibly null).
@@ -33188,7 +33196,7 @@
    otherwise. (The <var title=dom-event-listener>listener</var> argument is
    emphatically <em>not</em> the event handler attribute itself.)
 
-  <h5 id=event><span class=secno>5.4.4.2. </span>Event firing</h5>
+  <h5 id=event0><span class=secno>5.4.5.2. </span>Event firing</h5>
 
   <p class=big-issue>maybe this should be moved higher up (terminology?
    conformance? DOM?) Also, the whole terminology thing should be changed so
@@ -33277,7 +33285,7 @@
    actions are defined in terms of <em>any</em> event of the right type on
    that element, not those that are dispatched in expected ways.
 
-  <h5 id=events0><span class=secno>5.4.4.3. </span>Events and the <code><a
+  <h5 id=events0><span class=secno>5.4.5.3. </span>Events and the <code><a
    href="#window">Window</a></code> object</h5>
 
   <p>When an event is dispatched at a DOM node in a <code>Document</code> in
@@ -33296,7 +33304,7 @@
     bubbling has been prevented.
   </ol>
 
-  <h5 id=runtime-script-errors><span class=secno>5.4.4.4. </span>Runtime
+  <h5 id=runtime-script-errors><span class=secno>5.4.5.4. </span>Runtime
    script errors</h5>
 
   <p><em>This section only applies to user agents that support scripting in
@@ -35599,7 +35607,7 @@
      cache</var>.
   </ol>
 
-  <p>The following are the <a href="#event4">event handler DOM attributes</a>
+  <p>The following are the <a href="#event5">event handler DOM attributes</a>
    that must be supported by objects implementing the <code><a
    href="#applicationcache">ApplicationCache</a></code> interface:
 
@@ -36200,7 +36208,7 @@
 
   <h3 id=browsing0><span class=secno>5.9 </span>Browsing the Web</h3>
 
-  <h4 id=navigating><span class=secno>5.9.1 </span>Navigating across
+  <h4 id=navigating1><span class=secno>5.9.1 </span>Navigating across
    documents</h4>
 
   <p>Certain actions cause the <a href="#browsing1">browsing context</a> to
@@ -36269,7 +36277,7 @@
      context</a> being navigated, ignoring any <a href="#ltfragmentgt"
      title=url-fragment><fragment></a> components of those <a
      href="#url" title=URL>URLs</a>, and the new resource is to be fetched
-     using HTTP GET or equivalent, then <a href="#navigating0"
+     using HTTP GET or equivalent, then <a href="#navigating2"
      title=navigate-fragid>navigate to that fragment identifier</a> and abort
      these steps.
 
@@ -36783,7 +36791,7 @@
    the page has been completely set up, the user agent must <a
    href="#update2">update the session history with the new page</a>.
 
-  <h4 id=scroll-to-fragid><span class=secno>5.9.8 </span><dfn id=navigating0
+  <h4 id=scroll-to-fragid><span class=secno>5.9.8 </span><dfn id=navigating2
    title=navigate-fragid>Navigating to a fragment identifier</dfn></h4>
 
   <p>When a user agent is supposed to navigate to a fragment identifier, then
@@ -37378,7 +37386,7 @@
    the two documents are in the same <a href="#unit-of">unit of related
    browsing contexts</a>, or null otherwise.
 
-  <h6 id=event0><span class=secno>5.10.1.5.1. </span>Event definition</h6>
+  <h6 id=event1><span class=secno>5.10.1.5.1. </span>Event definition</h6>
 
   <pre class=idl>interface <dfn id=storageevent>StorageEvent</dfn> : Event {
   readonly attribute DOMString <a href="#key" title=dom-StorageEvent-key>key</a>;
@@ -37417,7 +37425,7 @@
    represents the <code><a href="#window">Window</a></code> that changed the
    key.
 
-  <h5 id=threads0><span class=secno>5.10.1.6. </span>Threads</h5>
+  <h5 id=threads><span class=secno>5.10.1.6. </span>Threads</h5>
 
   <p>Multiple browsing contexts must be able to access the local storage
    areas simultaneously in a predictable manner. Scripts must not be able to
@@ -42602,7 +42610,7 @@
 
   <h2 id=comms><span class=secno>7. </span>Communication</h2>
 
-  <h3 id=event1><span class=secno>7.1 </span>Event definitions</h3>
+  <h3 id=event2><span class=secno>7.1 </span>Event definitions</h3>
 
   <p>Messages in <a href="#server-sent">server-sent events</a>, <a
    href="#web-sockets">Web sockets</a>, <a
@@ -43290,7 +43298,7 @@
 
   <hr>
 
-  <p>The following are the <a href="#event4">event handler DOM attributes</a>
+  <p>The following are the <a href="#event5">event handler DOM attributes</a>
    that must be supported by objects implementing the <code><a
    href="#websocket0">WebSocket</a></code> interface:
 
@@ -44626,7 +44634,7 @@
 
   <hr>
 
-  <p>The following are the <a href="#event4">event handler DOM attributes</a>
+  <p>The following are the <a href="#event5">event handler DOM attributes</a>
    that must be supported by objects implementing the <code><a
    href="#messageport0">MessagePort</a></code> interface:
 

Modified: source
===================================================================



More information about the Commit-Watchers mailing list