[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