HTML5 Tracker

Diff (omit for latest revision)
Filter

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

SVNBugCommentTime (UTC)
7203[Gecko] [Internet Explorer] [Opera] [Webkit] Four browser vendors have told me they don't want to drop this, so yeah, I'm putting it back. Sorry Anne. :-)2012-07-25 19:11
Index: source
===================================================================
--- source	(revision 7202)
+++ source	(revision 7203)
@@ -20,6 +20,7 @@
  interface FileCallback { }; // File API
  interface FileList { }; // File API
  interface ArrayBuffer { }; // WebGL
+ interface ArrayBufferView { }; // WebGL
  interface Uint8ClampedArray { }; // WebGL
  interface XMLDocument { }; // DOM Core
  interface HTMLCollection { }; // DOM Core
@@ -2988,12 +2989,12 @@
 
    <dd>
 
-    <p>The <dfn>ArrayBuffer</dfn> interface and underlying concepts
-    from the Typed Array Specification are used for several features
-    in this specification. The <dfn>Uint8ClampedArray</dfn> interface
-    type is specifically used in the definition of the
-    <code>canvas</code> element's 2D API. <a
-    href="#refsTYPEDARRAY">[TYPEDARRAY]</a></p>
+    <p>The <dfn>ArrayBuffer</dfn> and <dfn>ArrayBufferView</dfn>
+    interfaces and underlying concepts from the Typed Array
+    Specification are used for several features in this specification.
+    The <dfn>Uint8ClampedArray</dfn> interface type is specifically
+    used in the definition of the <code>canvas</code> element's 2D
+    API. <a href="#refsTYPEDARRAY">[TYPEDARRAY]</a></p>
 
    </dd>
 
@@ -96382,8 +96383,9 @@
            attribute <span>EventHandler</span> <span title="handler-WebSocket-onmessage">onmessage</span>;
            attribute DOMString <span title="dom-WebSocket-binaryType">binaryType</span>;
   void <span title="dom-WebSocket-send">send</span>(DOMString data);
+  void <span title="dom-WebSocket-send">send</span>(<span>Blob</span> data);
+  void <span title="dom-WebSocket-send">send</span>(<span>ArrayBuffer</span> data);
   void <span title="dom-WebSocket-send">send</span>(<span>ArrayBufferView</span> data);
-  void <span title="dom-WebSocket-send">send</span>(<span>Blob</span> data);
 };</pre>
 
   <p>The <dfn title="dom-WebSocket"><code>WebSocket(<var
@@ -96838,6 +96840,36 @@
    </dd>
 
 
+   <dt>If the argument is an <code>ArrayBuffer</code> object</dt>
+
+   <dd>
+
+    <p>If <i>the WebSocket connection is established</i>, and <i
+    title="the WebSocket closing handshake is started">the WebSocket
+    closing handshake has not yet started</i>, then the user agent
+    must <i>send a WebSocket Message</i> comprised of <var
+    title="">data</var> using a binary frame opcode; if the data
+    cannot be sent, e.g. because it would need to be buffered but the
+    buffer is full, the user agent must <i>close the WebSocket
+    connection</i> <span title="concept-websocket-close-fail">with
+    prejudice</span>. The data to be sent is the data stored in the
+    buffer described by the <code>ArrayBuffer</code> object. <!-- that
+    sentence is meant to invoke "The ArrayBuffer type describes a
+    buffer used to store data for the array buffer views." at the top
+    of the Typed Array spec, and "Optional byteOffset and length can
+    be used to limit the section of the buffer referenced" in the
+    definition of the TypedArray constructor --> Any invocation of
+    this method with an <code>ArrayBuffer</code> argument that does
+    not throw an exception must increase the <code
+    title="dom-WebSocket-bufferedAmount">bufferedAmount</code>
+    attribute by the length of the <code>ArrayBuffer</code> in bytes.
+    <!-- that sentence is meant to invoke the same as
+    ArrayBuffer.byteLength --> <a href="#refsWSP">[WSP]</a> <a
+    href="#refsTYPEDARRAY">[TYPEDARRAY]</a></p>
+
+   </dd>
+
+
    <dt>If the argument is an <code>ArrayBufferView</code> object</dt>
 
    <dd>

|