diff options
author | 2022-04-03 02:42:08 -0700 | |
---|---|---|
committer | 2022-04-03 02:42:08 -0700 | |
commit | 4a19a3f07f1887903e5638a3be167f0c7b377ba3 (patch) | |
tree | 24b5ebd36910d19e690352cf343943e0e6b0459d /src/javascript/jsc/bindings/ZigGlobalObject.cpp | |
parent | e62c7dc9e5709b1ce54838aee30668a4c358a528 (diff) | |
download | bun-4a19a3f07f1887903e5638a3be167f0c7b377ba3.tar.gz bun-4a19a3f07f1887903e5638a3be167f0c7b377ba3.tar.zst bun-4a19a3f07f1887903e5638a3be167f0c7b377ba3.zip |
wip
Diffstat (limited to 'src/javascript/jsc/bindings/ZigGlobalObject.cpp')
-rw-r--r-- | src/javascript/jsc/bindings/ZigGlobalObject.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/javascript/jsc/bindings/ZigGlobalObject.cpp b/src/javascript/jsc/bindings/ZigGlobalObject.cpp index ce73975c8..ab9f929a9 100644 --- a/src/javascript/jsc/bindings/ZigGlobalObject.cpp +++ b/src/javascript/jsc/bindings/ZigGlobalObject.cpp @@ -89,6 +89,8 @@ #include "JSErrorEvent.h" #include "JSFetchHeaders.h" #include "JSImageData.h" +#include "JSOffscreenCanvas.h" +#include "JSOffscreenCanvasRenderingContext2D.h" #include "Process.h" @@ -408,6 +410,28 @@ JSC_DEFINE_CUSTOM_GETTER(JSImageData_getter, WebCore::JSImageData::getConstructor(JSC::getVM(lexicalGlobalObject), thisObject)); } +JSC_DECLARE_CUSTOM_GETTER(JSOffscreenCanvas_getter); + +JSC_DEFINE_CUSTOM_GETTER(JSOffscreenCanvas_getter, + (JSC::JSGlobalObject * lexicalGlobalObject, JSC::EncodedJSValue thisValue, + JSC::PropertyName)) +{ + Zig::GlobalObject* thisObject = JSC::jsCast<Zig::GlobalObject*>(lexicalGlobalObject); + return JSC::JSValue::encode( + WebCore::JSOffscreenCanvas::getConstructor(JSC::getVM(lexicalGlobalObject), thisObject)); +} + +JSC_DECLARE_CUSTOM_GETTER(JSOffscreenCanvasRenderingContext2D_getter); + +JSC_DEFINE_CUSTOM_GETTER(JSOffscreenCanvasRenderingContext2D_getter, + (JSC::JSGlobalObject * lexicalGlobalObject, JSC::EncodedJSValue thisValue, + JSC::PropertyName)) +{ + Zig::GlobalObject* thisObject = JSC::jsCast<Zig::GlobalObject*>(lexicalGlobalObject); + return JSC::JSValue::encode( + WebCore::JSOffscreenCanvasRenderingContext2D::getConstructor(JSC::getVM(lexicalGlobalObject), thisObject)); +} + JSC_DECLARE_CUSTOM_GETTER(JSEventTarget_getter); JSC_DEFINE_CUSTOM_GETTER(JSEventTarget_getter, @@ -894,6 +918,11 @@ void GlobalObject::installAPIGlobals(JSClassRef* globals, int count, JSC::VM& vm putDirectCustomAccessor(vm, JSC::Identifier::fromString(vm, "ImageData"_s), JSC::CustomGetterSetter::create(vm, JSImageData_getter, nullptr), JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly); + putDirectCustomAccessor(vm, JSC::Identifier::fromString(vm, "OffscreenCanvas"_s), JSC::CustomGetterSetter::create(vm, JSOffscreenCanvas_getter, nullptr), + JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly); + putDirectCustomAccessor(vm, JSC::Identifier::fromString(vm, "OffscreenCanvasRenderingContext2D"_s), JSC::CustomGetterSetter::create(vm, JSOffscreenCanvasRenderingContext2D_getter, nullptr), + JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly); + extraStaticGlobals.releaseBuffer(); this->setRemoteDebuggingEnabled(true); |