[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

jianli at chromium.org jianli at chromium.org
Wed Dec 22 14:38:23 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 8f9c00832622452e422641034df8899d81241e78
Author: jianli at chromium.org <jianli at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Oct 14 18:30:00 2010 +0000

    Support typed arrays in workers
    https://bugs.webkit.org/show_bug.cgi?id=47616
    
    Reviewed by David Levin.
    
    To support typed arrays in workers, we need to expose constructors in
    WorkerContext and add NoStaticTables attribute.
    
    I also add File API feature guard to the constructors defined in
    DOMWindow.
    
    * bindings/js/JSDOMWindowCustom.cpp: Add File API feature guard to the
    constructors defined in DOMWindow.
    * html/canvas/ArrayBuffer.idl: Add NoStaticTables attribute.
    * html/canvas/ArrayBufferView.idl: Add NoStaticTables attribute.
    * html/canvas/Float32Array.idl: Add NoStaticTables attribute.
    * html/canvas/Int16Array.idl: Add NoStaticTables attribute.
    * html/canvas/Int32Array.idl: Add NoStaticTables attribute.
    * html/canvas/Int8Array.idl: Add NoStaticTables attribute.
    * html/canvas/Uint16Array.idl: Add NoStaticTables attribute.
    * html/canvas/Uint32Array.idl: Add NoStaticTables attribute.
    * html/canvas/Uint8Array.idl: Add NoStaticTables attribute.
    * page/DOMWindow.idl: Add File API feature guard to the constructors
    defined in DOMWindow.
    * workers/WorkerContext.idl: Expose type array constructors.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69782 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 37b666a..00e4df9 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,31 @@
+2010-10-14  Jian Li  <jianli at chromium.org>
+
+        Reviewed by David Levin.
+
+        Support typed arrays in workers
+        https://bugs.webkit.org/show_bug.cgi?id=47616
+
+        To support typed arrays in workers, we need to expose constructors in
+        WorkerContext and add NoStaticTables attribute.
+
+        I also add File API feature guard to the constructors defined in
+        DOMWindow.
+
+        * bindings/js/JSDOMWindowCustom.cpp: Add File API feature guard to the
+        constructors defined in DOMWindow.
+        * html/canvas/ArrayBuffer.idl: Add NoStaticTables attribute.
+        * html/canvas/ArrayBufferView.idl: Add NoStaticTables attribute.
+        * html/canvas/Float32Array.idl: Add NoStaticTables attribute.
+        * html/canvas/Int16Array.idl: Add NoStaticTables attribute.
+        * html/canvas/Int32Array.idl: Add NoStaticTables attribute.
+        * html/canvas/Int8Array.idl: Add NoStaticTables attribute.
+        * html/canvas/Uint16Array.idl: Add NoStaticTables attribute.
+        * html/canvas/Uint32Array.idl: Add NoStaticTables attribute.
+        * html/canvas/Uint8Array.idl: Add NoStaticTables attribute.
+        * page/DOMWindow.idl: Add File API feature guard to the constructors
+        defined in DOMWindow.
+        * workers/WorkerContext.idl: Expose type array constructors.
+
 2010-10-14  Andreas Kling  <kling at webkit.org>
 
         Reviewed by Ariya Hidayat.
diff --git a/WebCore/bindings/js/JSDOMWindowCustom.cpp b/WebCore/bindings/js/JSDOMWindowCustom.cpp
index 9642cb2..9fc53f9 100644
--- a/WebCore/bindings/js/JSDOMWindowCustom.cpp
+++ b/WebCore/bindings/js/JSDOMWindowCustom.cpp
@@ -51,7 +51,7 @@
 #include "JSSharedWorker.h"
 #endif
 
-#if ENABLE(3D_CANVAS)
+#if ENABLE(3D_CANVAS) || ENABLE(BLOB)
 #include "JSArrayBuffer.h"
 #include "JSInt8Array.h"
 #include "JSUint8Array.h"
@@ -565,7 +565,7 @@ JSValue JSDOMWindow::webKitCSSMatrix(ExecState* exec) const
     return getDOMConstructor<JSWebKitCSSMatrixConstructor>(exec, this);
 }
  
-#if ENABLE(3D_CANVAS)
+#if ENABLE(3D_CANVAS) || ENABLE(BLOB)
 JSValue JSDOMWindow::arrayBuffer(ExecState* exec) const
 {
     return getDOMConstructor<JSArrayBufferConstructor>(exec, this);
diff --git a/WebCore/html/canvas/ArrayBuffer.idl b/WebCore/html/canvas/ArrayBuffer.idl
index 50abc6e..79a4685 100644
--- a/WebCore/html/canvas/ArrayBuffer.idl
+++ b/WebCore/html/canvas/ArrayBuffer.idl
@@ -29,7 +29,8 @@ module html {
         Conditional=3D_CANVAS|BLOB,
         CanBeConstructed,
         CustomConstructFunction,
-        V8CustomConstructor
+        NoStaticTables,
+        V8CustomConstructor,
     ] ArrayBuffer {
         readonly attribute int byteLength;
     };
diff --git a/WebCore/html/canvas/ArrayBufferView.idl b/WebCore/html/canvas/ArrayBufferView.idl
index fe020fa..74a3fe3 100644
--- a/WebCore/html/canvas/ArrayBufferView.idl
+++ b/WebCore/html/canvas/ArrayBufferView.idl
@@ -24,7 +24,7 @@
  */
 
 module html {
-    interface [Conditional=3D_CANVAS|BLOB, CustomToJS, OmitConstructor] ArrayBufferView {
+    interface [Conditional=3D_CANVAS|BLOB, CustomToJS, NoStaticTables, OmitConstructor] ArrayBufferView {
         readonly attribute ArrayBuffer buffer;
         readonly attribute unsigned long byteOffset;
         readonly attribute unsigned long byteLength;
diff --git a/WebCore/html/canvas/Float32Array.idl b/WebCore/html/canvas/Float32Array.idl
index 1325cbb..c3c0a2d 100644
--- a/WebCore/html/canvas/Float32Array.idl
+++ b/WebCore/html/canvas/Float32Array.idl
@@ -33,6 +33,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
+        NoStaticTables,
         CustomToJS,
         DontCheckEnums
     ] Float32Array : ArrayBufferView {
diff --git a/WebCore/html/canvas/Int16Array.idl b/WebCore/html/canvas/Int16Array.idl
index bd7fcd0..7980a69 100644
--- a/WebCore/html/canvas/Int16Array.idl
+++ b/WebCore/html/canvas/Int16Array.idl
@@ -32,6 +32,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
+        NoStaticTables,
         CustomToJS,
         DontCheckEnums
     ] Int16Array : ArrayBufferView {
diff --git a/WebCore/html/canvas/Int32Array.idl b/WebCore/html/canvas/Int32Array.idl
index 2734647..bd1554d 100644
--- a/WebCore/html/canvas/Int32Array.idl
+++ b/WebCore/html/canvas/Int32Array.idl
@@ -33,6 +33,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
+        NoStaticTables,
         CustomToJS,
         DontCheckEnums
     ] Int32Array : ArrayBufferView {
diff --git a/WebCore/html/canvas/Int8Array.idl b/WebCore/html/canvas/Int8Array.idl
index 4118cf3..ec0bdb7 100644
--- a/WebCore/html/canvas/Int8Array.idl
+++ b/WebCore/html/canvas/Int8Array.idl
@@ -33,6 +33,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
+        NoStaticTables,
         CustomToJS,
         DontCheckEnums
     ] Int8Array : ArrayBufferView {
diff --git a/WebCore/html/canvas/Uint16Array.idl b/WebCore/html/canvas/Uint16Array.idl
index ae64095..75a7499 100644
--- a/WebCore/html/canvas/Uint16Array.idl
+++ b/WebCore/html/canvas/Uint16Array.idl
@@ -33,6 +33,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
+        NoStaticTables,
         CustomToJS,
         DontCheckEnums
     ] Uint16Array : ArrayBufferView {
diff --git a/WebCore/html/canvas/Uint32Array.idl b/WebCore/html/canvas/Uint32Array.idl
index 0ef5e92..06e17c6 100644
--- a/WebCore/html/canvas/Uint32Array.idl
+++ b/WebCore/html/canvas/Uint32Array.idl
@@ -33,6 +33,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
+        NoStaticTables,
         CustomToJS,
         DontCheckEnums
     ] Uint32Array : ArrayBufferView {
diff --git a/WebCore/html/canvas/Uint8Array.idl b/WebCore/html/canvas/Uint8Array.idl
index 5a32e5a..bd28023 100644
--- a/WebCore/html/canvas/Uint8Array.idl
+++ b/WebCore/html/canvas/Uint8Array.idl
@@ -33,6 +33,7 @@ module html {
         HasNumericIndexGetter,
         HasCustomIndexSetter,
         GenerateNativeConverter,
+        NoStaticTables,
         CustomToJS,
         DontCheckEnums
     ] Uint8Array : ArrayBufferView {
diff --git a/WebCore/page/DOMWindow.idl b/WebCore/page/DOMWindow.idl
index 559723b..0e83556 100644
--- a/WebCore/page/DOMWindow.idl
+++ b/WebCore/page/DOMWindow.idl
@@ -486,14 +486,14 @@ module window {
 
         attribute DOMStringMapConstructor DOMStringMap;
 
-        attribute [JSCCustomGetter,Conditional=3D_CANVAS,EnabledAtRuntime] ArrayBufferConstructor ArrayBuffer; // Usable with new operator
-        attribute [JSCCustomGetter,Conditional=3D_CANVAS,EnabledAtRuntime] Int8ArrayConstructor Int8Array; // Usable with new operator
-        attribute [JSCCustomGetter,Conditional=3D_CANVAS,EnabledAtRuntime] Uint8ArrayConstructor Uint8Array; // Usable with new operator
-        attribute [JSCCustomGetter,Conditional=3D_CANVAS,EnabledAtRuntime] Int16ArrayConstructor Int16Array; // Usable with new operator
-        attribute [JSCCustomGetter,Conditional=3D_CANVAS,EnabledAtRuntime] Uint16ArrayConstructor Uint16Array; // Usable with new operator
-        attribute [JSCCustomGetter,Conditional=3D_CANVAS,EnabledAtRuntime] Int32ArrayConstructor Int32Array; // Usable with new operator
-        attribute [JSCCustomGetter,Conditional=3D_CANVAS,EnabledAtRuntime] Uint32ArrayConstructor Uint32Array; // Usable with new operator
-        attribute [JSCCustomGetter,Conditional=3D_CANVAS,EnabledAtRuntime] Float32ArrayConstructor Float32Array; // Usable with new operator
+        attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] ArrayBufferConstructor ArrayBuffer; // Usable with new operator
+        attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] Int8ArrayConstructor Int8Array; // Usable with new operator
+        attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] Uint8ArrayConstructor Uint8Array; // Usable with new operator
+        attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] Int16ArrayConstructor Int16Array; // Usable with new operator
+        attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] Uint16ArrayConstructor Uint16Array; // Usable with new operator
+        attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] Int32ArrayConstructor Int32Array; // Usable with new operator
+        attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] Uint32ArrayConstructor Uint32Array; // Usable with new operator
+        attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] Float32ArrayConstructor Float32Array; // Usable with new operator
 
         attribute EventConstructor Event;
         attribute BeforeLoadEventConstructor BeforeLoadEvent;
diff --git a/WebCore/workers/WorkerContext.idl b/WebCore/workers/WorkerContext.idl
index aa40ff3..9db4da0 100644
--- a/WebCore/workers/WorkerContext.idl
+++ b/WebCore/workers/WorkerContext.idl
@@ -113,6 +113,15 @@ module threads {
 
                  attribute [EnabledAtRuntime=FileSystem] FlagsConstructor Flags;
 #endif
+
+        attribute [Conditional=BLOB,EnabledAtRuntime] ArrayBufferConstructor ArrayBuffer; // Usable with new operator
+        attribute [Conditional=BLOB,EnabledAtRuntime] Int8ArrayConstructor Int8Array; // Usable with new operator
+        attribute [Conditional=BLOB,EnabledAtRuntime] Uint8ArrayConstructor Uint8Array; // Usable with new operator
+        attribute [Conditional=BLOB,EnabledAtRuntime] Int16ArrayConstructor Int16Array; // Usable with new operator
+        attribute [Conditional=BLOB,EnabledAtRuntime] Uint16ArrayConstructor Uint16Array; // Usable with new operator
+        attribute [Conditional=BLOB,EnabledAtRuntime] Int32ArrayConstructor Int32Array; // Usable with new operator
+        attribute [Conditional=BLOB,EnabledAtRuntime] Uint32ArrayConstructor Uint32Array; // Usable with new operator
+        attribute [Conditional=BLOB,EnabledAtRuntime] Float32ArrayConstructor Float32Array; // Usable with new operator
     };
 
 }

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list