Skip to content

[css-paint-api] Paint worklets need to do the state setup other specs expect before calling JS constructors #918

Open
@bzbarsky

Description

@bzbarsky

https://drafts.css-houdini.org/css-paint-api-1/#invoke-a-paint-callback step 5.3 does:

Let paintInstance be the result of Construct(paintCtor).

but doesn't define the state changes necessary to do things like handle Promises queued from inside the constructor and whatnot. See https://html.spec.whatwg.org/multipage/webappapis.html#prepare-to-run-script and https://html.spec.whatwg.org/multipage/webappapis.html#clean-up-after-running-script

Depending on what things the constructor can be here, https://html.spec.whatwg.org/multipage/webappapis.html#prepare-to-run-a-callback and https://html.spec.whatwg.org/multipage/webappapis.html#clean-up-after-running-a-callback might be needed too.

In general, using https://heycam.github.io/webidl/#construct-a-callback-function here instead of manually calling https://tc39.es/ecma262/#sec-construct might be a good idea.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions