diff --git a/moli-renderer-v8/src/context_bootstrap/assets/constructor_templates.rs b/moli-renderer-v8/src/context_bootstrap/assets/constructor_templates.rs index 92a6363fa1..421eebb0e7 100644 --- a/moli-renderer-v8/src/context_bootstrap/assets/constructor_templates.rs +++ b/moli-renderer-v8/src/context_bootstrap/assets/constructor_templates.rs @@ -500,6 +500,11 @@ pub(in crate::context_bootstrap) fn build_constructor_template<'s>( .length(0) .build(scope) } + ConstructorKind::DomRectReadOnly => v8::FunctionTemplate::builder( + super::super::dom_rect::dom_rect_readonly_constructor_callback, + ) + .length(0) + .build(scope), ConstructorKind::DomRect => { v8::FunctionTemplate::builder(moli_webapi_declare::web_api_constructor!( web_api_interfaces::DOMRect, diff --git a/moli-renderer-v8/src/context_bootstrap/dom_rect.rs b/moli-renderer-v8/src/context_bootstrap/dom_rect.rs index c91bdb8861..bb382dd71e 100644 --- a/moli-renderer-v8/src/context_bootstrap/dom_rect.rs +++ b/moli-renderer-v8/src/context_bootstrap/dom_rect.rs @@ -35,6 +35,22 @@ struct DomRectReadOnlyObjectDeclaration { height: f64, } +#[derive(WebApiObject)] +#[webapi(interface = "DOMRectReadOnly")] +struct DomRectReadOnlyObjectDeclaration { + #[webapi(slot = DOM_RECT_BRAND_SLOT, init = true)] + brand: (), + + #[webapi(slot = DOM_RECT_X_SLOT)] + x: f64, + #[webapi(slot = DOM_RECT_Y_SLOT)] + y: f64, + #[webapi(slot = DOM_RECT_WIDTH_SLOT)] + width: f64, + #[webapi(slot = DOM_RECT_HEIGHT_SLOT)] + height: f64, +} + #[derive(WebApiFunctionTemplate)] #[webapi(interface = web_api_interfaces::DOMRectReadOnly)] struct DomRectReadOnlyPrototypeDeclaration {