HTML Standard Tracker

Diff (omit for latest revision)
Filter

Short URL: http://html5.org/r/2020

File a bug

SVNBugCommentTime (UTC)
2020Make MessagePort objects not be owned by Windows necessarily, and remove ownerWindow.2008-08-06 00:25
Index: source
===================================================================
--- source	(revision 2019)
+++ source	(revision 2020)
@@ -41223,11 +41223,11 @@
   <ol>
 
    <li><p><span>Create a new <code>MessagePort</code> object</span>
-   owned by the <span>script browsing context</span>, and let <var
+   owned by the <span>script execution context</span>, and let <var
    title="">port1</var> be that object.</p></li>
 
    <li><p><span>Create a new <code>MessagePort</code> object</span>
-   owned by the <span>script browsing context</span>, and let <var
+   owned by the <span>script execution context</span>, and let <var
    title="">port2</var> be that object.</p></li>
 
    <li><p><span>Entangle</span> the <var title="">port1</var> and <var
@@ -41263,7 +41263,6 @@
   received by the other port, and vice versa.</p>
 
   <pre class="idl">interface <dfn>MessagePort</dfn> {
-  readonly attribute <span>Window</span> <span title="dom-MessagePort-ownerWindow">ownerWindow</span>;
   readonly attribute boolean <span title="dom-MessagePort-active">active</span>;
   boolean <span title="dom-MessagePort-postMessage">postMessage</span>(in DOMString message);
   boolean <span title="dom-MessagePort-postMessage">postMessage</span>(in DOMString message, in <span>MessagePort</span> messagePort);
@@ -41277,18 +41276,17 @@
 };</pre>
 
   <p>When the user agent is to <dfn>create a new
-  <code>MessagePort</code> object</dfn> owned by a <code>Window</code>
-  object <var title="">owner</var>, it must run the following
-  steps:</p>
+  <code>MessagePort</code> object</dfn> owned by a <span>script
+  execution context</span> object <var title="">owner</var>, it must
+  run the following steps:</p>
 
   <ol>
 
    <li><p>Instantiate a new <code>MessagePort</code> object, and let
    <var title="">port</var> be that object.</p></li>
 
-   <li><p>Set the <code
-   title="dom-MessagePort-ownerWindow">ownerWindow</code> attribute of
-   <var title="">port</var> to <var title="">owner</var>.</p></li>
+   <li><p>Let <var title="">port</var>'s owner be <var
+   title="">owner</var>.</p></li>
 
    <li><p>Set the <code title="dom-MessagePort-active">active</code>
    attribute of <var title="">port</var> be false.</p></li>
@@ -41383,11 +41381,6 @@
 
   <hr>
 
-  <p>The <dfn
-  title="dom-MessagePort-ownerWindow"><code>ownerWindow</code></dfn>
-  attribute must return the value it was assigned when the
-  <code>MessagePort</code> object was created.</p>
-
   <p>The <dfn title="dom-MessagePort-active"><code>active</code></dfn>
   attribute must return the last value that it was set to according to
   the rules of this specification.</p>
@@ -41440,11 +41433,9 @@
 
      <li><p>Try to obtain a <var title="">new data port</var> by <span
      title="clone a port">cloning</span> the <var title="">data
-     port</var> with the <span
-     title="dom-MessagePort-ownerWindow">owner</span> of the <var
-     title="">target port</var> as the owner of the clone. If this
-     returns an exception, then throw that exception and abort these
-     steps.</p></li>
+     port</var> with the owner of the <var title="">target port</var>
+     as the owner of the clone. If this returns an exception, then
+     throw that exception and abort these steps.</p></li>
  
      <li><p>Let the <code
      title="dom-MessageEvent-messagePort">messagePort</code> attribute
@@ -41457,15 +41448,16 @@
    <li><p>Return true from the method, but continue with these
    steps.</p></li>
 
-   <li><p>Wait for all scripts in the <span>unit of related browsing
-   contexts</span> to which the <span
-   title="dom-MessagePort-ownerWindow">owner</span> of the <var
-   title="">target port</var> belongs to have executed to completion,
-   and then dispatch the event at the <var title="">target port</var>
-   object. If this never happens (e.g. the relevant <span>browsing
+   <li><p>Wait for all scripts in the conceptual thread that the
+   <span>script execution context</span> that owns the <var
+   title="">target port</var> belongs to have executed to
+   completion. If this never happens (e.g. the relevant <span>browsing
    context</span> is closed by the user before the event can be
    dispatched), then discard the event.</p></li><!-- XXX queue -->
 
+   <li><p>Dispatch the event at the <var title="">target port</var>
+   object.</p></li>
+
   </ol>
 
   <p class="big-issue">People often request the ability to send
@@ -41556,9 +41548,8 @@
   <p>Ports are deactivated and unentangled when the
   <code>Document</code> that was the <span>active document</span> of
   the <span>browsing context</span> corresponding to the
-  <code>Window</code> object that <span
-  title="dom-MessagePort-ownerWindow">owns</span> them is <span
-  title="discard a document">discarded</span>.</p>
+  <code>Window</code> object that owns them is <span title="discard a
+  document">discarded</span>.</p>
 
   <p>To <dfn>deactivate a port</dfn> <var title="">local port</var>
   that is entangled with a second port <var title="">remote

|