Index: Source/bindings/core/dart/DartJsInterop.h |
diff --git a/Source/bindings/core/dart/DartJsInterop.h b/Source/bindings/core/dart/DartJsInterop.h |
index 5c016926be626ab6b5857a6a74e4323d5d57ad5d..cdabd16c359017ca70b34300f50e431f9b597b16 100644 |
--- a/Source/bindings/core/dart/DartJsInterop.h |
+++ b/Source/bindings/core/dart/DartJsInterop.h |
@@ -33,6 +33,7 @@ |
#include "bindings/core/dart/DartDOMData.h" |
#include "wtf/RefCounted.h" |
+#include "wtf/Vector.h" |
#include <dart_api.h> |
#include <dart_mirrors_api.h> |
@@ -45,13 +46,19 @@ class Node; |
class Element; |
+struct InteropPatchFile { |
+ String libraryUri; |
+ String patchFileUri; |
+ String source; |
+}; |
+ |
class JsInterop { |
public: |
static Dart_NativeFunction resolver(Dart_Handle nameHandle, int argumentCount, bool* autoSetupScope); |
static const uint8_t* symbolizer(Dart_NativeFunction); |
static v8::Local<v8::Value> fromDart(DartDOMData*, Dart_Handle, Dart_Handle& exception); |
- static Dart_Handle toDart(v8::Local<v8::Value>); |
+ static Dart_Handle toDart(v8::Local<v8::Value>, bool sometimesUseHtml); |
// Return a Blink Element instance (convert to a V8Object which is really a |
// Javascript object) as a Dart JsObject that points to the Javascript object. |
@@ -62,6 +69,9 @@ public: |
static void jsInteropContextCallback(Dart_NativeArguments args); |
static void jsInteropGetterCallback(Dart_NativeArguments args); |
static void jsInteropCallMethodCallback(Dart_NativeArguments args); |
+ |
+ static void buildInteropPatchFiles(DartDOMData*, Vector<InteropPatchFile>* patches, Dart_Handle& exception); |
+ static void initializeJsInterop(DartDOMData*, const Vector<InteropPatchFile>& patches, Dart_Handle& exception); |
}; |
class JsObject : public RefCounted<JsObject> { |
@@ -69,7 +79,7 @@ class JsObject : public RefCounted<JsObject> { |
private: |
JsObject(v8::Local<v8::Object> v8Handle); |
public: |
- static Dart_Handle toDart(v8::Local<v8::Object>); |
+ static Dart_Handle toDart(v8::Local<v8::Object>, bool sometimesUseHtml); |
static Dart_Handle toDart(PassRefPtr<JsObject>); |
~JsObject(); |
@@ -115,14 +125,12 @@ public: |
class JsArray : public JsObject { |
WTF_MAKE_NONCOPYABLE(JsArray); |
private: |
- JsArray(v8::Local<v8::Array> v8Handle); |
+ JsArray(v8::Local<v8::Object> v8Handle); |
public: |
static Dart_Handle toDart(PassRefPtr<JsArray> jsObject); |
- static PassRefPtr<JsArray> create(v8::Local<v8::Array> v8Handle); |
- |
- v8::Local<v8::Array> localV8Array(); |
+ static PassRefPtr<JsArray> create(v8::Local<v8::Object> v8Handle); |
static const int dartClassId; |
static const bool isNode = false; |