- From: poot <cvsmail@w3.org>
- Date: Thu, 17 Jul 2008 10:30:49 +0900 (JST)
- To: public-html-diffs@w3.org
Making garbage collection fire an event was a stupid idea. Let's only make an explicit .close() cause unload to be fired. (whatwg r1884) (changed by: Ian Hickson) Diffs for this change per section: close() http://people.w3.org/mike/diffs/html5/spec/Overview.1.1073.html#close2 reactivate a port http://people.w3.org/mike/diffs/html5/spec/Overview.1.1073.html#reactivate onunload http://people.w3.org/mike/diffs/html5/spec/Overview.1.1073.html#onunload0 discard a Document http://people.w3.org/mike/diffs/html5/spec/Overview.1.1073.html#discard 7.5.3.1. Ports and browsing contexts http://people.w3.org/mike/diffs/html5/spec/Overview.1.1073.html#ports 7.5.3.2. Ports and garbage collection http://people.w3.org/mike/diffs/html5/spec/Overview.1.1073.html#ports0 Current content per affected section: http://dev.w3.org/html5/spec/Overview.html#close2 http://dev.w3.org/html5/spec/Overview.html#unentangling http://dev.w3.org/html5/spec/Overview.html#reactivate http://dev.w3.org/html5/spec/Overview.html#onunload0 http://dev.w3.org/html5/spec/Overview.html#discard http://dev.w3.org/html5/spec/Overview.html#unentangle http://dev.w3.org/html5/spec/Overview.html#ports http://dev.w3.org/html5/spec/Overview.html#ports0 Previously published WD content per affected section: http://www.w3.org/TR/2008/WD-html5-20080610/single-page/#close2 http://www.w3.org/TR/2008/WD-html5-20080610/single-page/#unentangling http://www.w3.org/TR/2008/WD-html5-20080610/single-page/#reactivate http://www.w3.org/TR/2008/WD-html5-20080610/single-page/#onunload0 http://www.w3.org/TR/2008/WD-html5-20080610/single-page/#discard http://www.w3.org/TR/2008/WD-html5-20080610/single-page/#unentangle http://www.w3.org/TR/2008/WD-html5-20080610/single-page/#ports http://www.w3.org/TR/2008/WD-html5-20080610/single-page/#ports0 Cumulative diff: http://people.w3.org/mike/diffs/html5/spec/Overview.diff.html http://dev.w3.org/cvsweb/html5/spec/Overview.html?r1=1.1072&r2=1.1073&f=h http://html5.org/tools/web-apps-tracker?from=1883&to=1884 =================================================================== RCS file: /sources/public/html5/spec/Overview.html,v retrieving revision 1.1072 retrieving revision 1.1073 diff -u -d -r1.1072 -r1.1073 --- Overview.html 16 Jul 2008 21:11:52 -0000 1.1072 +++ Overview.html 17 Jul 2008 00:12:00 -0000 1.1073 @@ -19,7 +19,7 @@ for HTML and XHTML</h2> <h2 class="no-num no-toc" id=editors0><!-- "W3C Working Draft" --> - Editor's Draft <!--ZZZ-->16 July 2008</h2> + Editor's Draft <!--ZZZ-->17 July 2008</h2> <dl><!-- ZZZ: update the month/day <dt>This Version:</dt> @@ -167,7 +167,7 @@ <p>The W3C <a href="http://www.w3.org/html/wg/">HTML Working Group</a> is the W3C working group responsible for this specification's progress along - the W3C Recommendation track. <!--ZZZ:--> This specification is the 16 + the W3C Recommendation track. <!--ZZZ:--> This specification is the 17 July 2008 <!--ZZZ "Working Draft"-->Editor's Draft. <!--:ZZZ--></p> <!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --> <!-- relationship to other work (required) --> @@ -1707,13 +1707,10 @@ <li><a href="#message0"><span class=secno>7.5.3 </span>Message ports</a> <ul class=toc> - <li><a href="#unentangling"><span class=secno>7.5.3.1. - </span>Unentangling</a> - - <li><a href="#ports"><span class=secno>7.5.3.2. </span>Ports and + <li><a href="#ports"><span class=secno>7.5.3.1. </span>Ports and browsing contexts</a> - <li><a href="#ports0"><span class=secno>7.5.3.3. </span>Ports and + <li><a href="#ports0"><span class=secno>7.5.3.2. </span>Ports and garbage collection</a> </ul> </ul> @@ -35281,8 +35278,8 @@ message ports</a>, if the document is the <a href="#active">active document</a>, or otherwise any ports in that document's <a href="#list-of3">list of message ports</a>, if the document is not the <a - href="#active">active document</a>, must be <span>unentangled with - prejudice</span>. + href="#active">active document</a>, must be <span>deactivated</span> and + unentangled.. <p class=big-issue>Also, <code title=event-unload>unload</code> events should fire. @@ -42827,9 +42824,27 @@ <p>The <dfn id=close2 title=dom-MessagePort-close><code>close()</code></dfn> method, when called on a port <var title="">local port</var> that is entangled with another - port, must cause the <var title="">local port</var> to be - <span>unentangled with prejudice</span>. If the method is called on a port - that is not entangled, then the method must do nothing. + port, must cause the user agents to run the following steps: + + <ol> + <li> + <p>Unentangle the two ports. + + <li> + <p>Set both ports' <code title=dom-messageport-active><a + href="#active0">active</a></code> attribute to false. + + <li> + <p>At the next available opportunity, after any scripts have finished + executing<!-- XXX queue -->, <a href="#firing2">fire a simple event</a> + called <code title=event-unload>unload</code> at each of the message + ports. If the two message ports are in the same <a href="#unit-of">unit + of related browsing contexts</a>, then the port on which the method was + called must receive the event first. + </ol> + + <p>If the method is called on a port that is not entangled, then the method + must do nothing. <hr> @@ -42879,32 +42894,7 @@ object. Those features are intended for use with Workers. <a href="#references">[WORKERS]</a> - <h5 id=unentangling><span class=secno>7.5.3.1. </span>Unentangling</h5> - - <p>A message port is entangled and unentangled as part of the normal - processing of message channels. When a channel is closed permanently but - in a controlled fashion, however, the user agent will be required to <dfn - id=unentangle title="unentangle with prejudice">unentangle a port with - prejudice</dfn>, which means it must run the following steps: - - <ol> - <li> - <p>Unentangle the two ports. - - <li> - <p>Set both ports' <code title=dom-messageport-active><a - href="#active0">active</a></code> attribute to false. - - <li> - <p>At the next available opportunity, after any scripts have finished - executing<!-- XXX queue -->, <a href="#firing2">fire a simple event</a> - called <code title=event-unload>unload</code> at each of the message - ports. If the two message ports are in the same <a href="#unit-of">unit - of related browsing contexts</a>, then the port being unentangled with - prejudice must receive the event first. - </ol> - - <h5 id=ports><span class=secno>7.5.3.2. </span>Ports and browsing contexts</h5> + <h5 id=ports><span class=secno>7.5.3.1. </span>Ports and browsing contexts</h5> <p>During <a href="#traverse" title="traverse the history">session history traversal</a> (e.g. when a user <a href="#navigate" @@ -42937,7 +42927,7 @@ href="#active0">active</a></code> attribute of the port's entangled port, not its own attribute. - <h5 id=ports0><span class=secno>7.5.3.3. </span>Ports and garbage + <h5 id=ports0><span class=secno>7.5.3.2. </span>Ports and garbage collection</h5> <p>User agents must act as if <code><a @@ -42959,7 +42949,7 @@ </div> <p>When an entangled message port is about to be garbage collected, it must - be <span>unentangled with prejudice</span>, so that the two ports are no + be <span>deactivated</span> and unentangled, so that the two ports are no longer related and so that the other port's <code title=dom-MessagePort-active><a href="#active0">active</a></code> attribute is set to false.
Received on Thursday, 17 July 2008 01:31:27 UTC