[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373

hclam at chromium.org hclam at chromium.org
Wed Apr 7 23:24:15 UTC 2010


The following commit has been merged in the webkit-1.2 branch:
commit d3b030ad4430032d6496abf46beada854da59d33
Author: hclam at chromium.org <hclam at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Nov 5 21:59:58 2009 +0000

    Not reviewed, Chromium build fix.
    
    Patch by Alpha Lam <hclam at chromium.org> on 2009-11-05
    50561 introduces a custom method for SVGMatrix, we need to implement
    this in V8.
    
    * bindings/v8/custom/V8CustomBinding.h:
    Adding definition for V8SVGMatrixMultiply.
    * bindings/v8/custom/V8SVGMatrixCustom.cpp:
    (WebCore::CALLBACK_FUNC_DECL):
    Implement V8SVGMatrixMultiply according to the same method in JSC.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@50577 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index d45d779..b3e5f2f 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,16 @@
+2009-11-05  Alpha Lam  <hclam at chromium.org>
+
+        Not reviewed, Chromium build fix.
+
+        50561 introduces a custom method for SVGMatrix, we need to implement
+        this in V8.
+
+        * bindings/v8/custom/V8CustomBinding.h:
+        Adding definition for V8SVGMatrixMultiply.
+        * bindings/v8/custom/V8SVGMatrixCustom.cpp:
+        (WebCore::CALLBACK_FUNC_DECL):
+        Implement V8SVGMatrixMultiply according to the same method in JSC.
+
 2009-11-05  Jeremy Orlow  <jorlow at chromium.org>
 
         Revert 50569 since it broke QT.  Build fix and just a revert, so no review.
diff --git a/WebCore/bindings/v8/custom/V8CustomBinding.h b/WebCore/bindings/v8/custom/V8CustomBinding.h
index 387c271..33c0f9d 100644
--- a/WebCore/bindings/v8/custom/V8CustomBinding.h
+++ b/WebCore/bindings/v8/custom/V8CustomBinding.h
@@ -600,6 +600,7 @@ namespace WebCore {
 #if ENABLE(SVG)
         DECLARE_PROPERTY_ACCESSOR_GETTER(SVGLengthValue);
         DECLARE_CALLBACK(SVGLengthConvertToSpecifiedUnits);
+        DECLARE_CALLBACK(SVGMatrixMultiply);
         DECLARE_CALLBACK(SVGMatrixInverse);
         DECLARE_CALLBACK(SVGMatrixRotateFromVector);
         DECLARE_CALLBACK(SVGElementInstanceAddEventListener);
diff --git a/WebCore/bindings/v8/custom/V8SVGMatrixCustom.cpp b/WebCore/bindings/v8/custom/V8SVGMatrixCustom.cpp
index 3766397..690eac1 100644
--- a/WebCore/bindings/v8/custom/V8SVGMatrixCustom.cpp
+++ b/WebCore/bindings/v8/custom/V8SVGMatrixCustom.cpp
@@ -38,11 +38,27 @@
 
 #include "V8Binding.h"
 #include "V8CustomBinding.h"
+#include "V8SVGMatrix.h"
 #include "V8SVGPODTypeWrapper.h"
 #include "V8Proxy.h"
 
 namespace WebCore {
 
+CALLBACK_FUNC_DECL(SVGMatrixMultiply)
+{
+    INC_STATS("DOM.SVGMatrix.multiply()");
+    if (args.Length() < 1)
+        return throwError("Not enough arguments");
+
+    if (!V8SVGMatrix::HasInstance(args[0]))
+        return throwError("secondMatrix argument was not a SVGMatrix");
+
+    TransformationMatrix m1 = *V8DOMWrapper::convertToNativeObject<V8SVGPODTypeWrapper<TransformationMatrix> >(V8ClassIndex::SVGMATRIX, args.Holder());
+    TransformationMatrix m2 = *V8DOMWrapper::convertToNativeObject<V8SVGPODTypeWrapper<TransformationMatrix> >(V8ClassIndex::SVGMATRIX, v8::Handle<v8::Object>::Cast(args[0]));
+
+    return V8DOMWrapper::convertToV8Object(V8ClassIndex::SVGMATRIX, V8SVGStaticPODTypeWrapper<TransformationMatrix>::create(m1.multLeft(m2)));
+}
+
 CALLBACK_FUNC_DECL(SVGMatrixInverse)
 {
     INC_STATS("DOM.SVGMatrix.inverse()");

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list