-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Commit 25c78e4
authored
Move worklets into the HTML Standard
Closes w3c/css-houdini-drafts#1000.
This provides a baseline by porting over all the existing text from
https://drafts.css-houdini.org/worklets/, modernizing and restructuring
it along the way. It does not yet fix many of the open logged issues
(although it does fix some; see below).
Notable changes from that document:
* Rearranged sections to better match workers, and my sense of flow.
* Moved worklet script fetching to be siblings with all the other script
fetching algorithms.
* Improved clarity and guidance on what specifications that define
worklets should do, including fleshing out the fake worklet example.
* Changed "create a WorkletGlobalScope", which took one set of
arguments, to "create a worklet global scope", which just takes a
Worklet instance. This appears to match better how the algorithm is
used, e.g. in
https://drafts.css-houdini.org/css-paint-api/#draw-a-paint-image step
10.
* Updated "report an error" to bail out for non-EventTarget globals,
like WorkletGlobalScope. Closes #2611.
* Updated worklets to only be exposed in secure contexts. Closes
w3c/css-houdini-drafts#505.
* Makes the lifetime of creating and terminating WorkletGlobalScopes
more explicit. Closes
w3c/css-houdini-drafts#224. Closes
w3c/css-houdini-drafts#389.
* Explicitly start and stop the event loop for a given
WorkletGlobalScope upon creation/termination. Closes
w3c/css-houdini-drafts#843.
Closes w3c/css-houdini-drafts#318 for real.
* Fixes creation of new worklet global scopes to only run the top-level
module scripts added via addModule(), which will automatically run
their dependencies. Previously it would run all module scripts loaded
into the worklet, so dependencies would be run in the order they were
fetched, not as part of the top-down module evaluation process. Closes
w3c/css-houdini-drafts#264.1 parent e694724 commit 25c78e4Copy full SHA for 25c78e4
1 file changed
+998
-90
lines changed
0 commit comments