Andreas Kling
18c54d8d40
LibJS: Make Cell::initialize() return void
...
Stop worrying about tiny OOMs.
Work towards #20405
2023-08-08 07:39:11 +02:00
Kenneth Myhra
f0fd1cae3d
LibWeb: Make factory method of IdleDeadline fallible
2023-02-22 09:55:33 +01:00
Timothy Flynn
b75b7f0c0d
LibJS+Everywhere: Propagate Cell::initialize errors from Heap::allocate
...
Callers that are already in a fallible context will now TRY to allocate
cells. Callers in infallible contexts get a FIXME.
2023-01-29 00:02:45 +00:00
Timothy Flynn
2692db8699
LibJS+Everywhere: Allow Cell::initialize overrides to throw OOM errors
...
Note that as of this commit, there aren't any such throwers, and the
call site in Heap::allocate will drop exceptions on the floor. This
commit only serves to change the declaration of the overrides, make sure
they return an empty value, and to propagate OOM errors frm their base
initialize invocations.
2023-01-29 00:02:45 +00:00
Timothy Flynn
834202aeb9
LibWeb: Move setting of Web object prototypes to initialize()
...
This needs to happen before prototype/constructor intitialization can be
made lazy. Otherwise, GC could run during the C++ constructor and try to
collect the object currently being created.
2023-01-10 16:08:14 +01:00
Linus Groh
22089436ed
LibJS: Convert Heap::allocate{,_without_realm}() to NonnullGCPtr
2022-12-15 06:56:37 -05:00
Linus Groh
32ad939e44
LibWeb: Rename HighResolutionTime/{CoarsenTime => TimeOrigin}.cpp/h
...
This is being used for more than just time coarsening now, so let's use
the spec's section title for the name.
2022-10-05 09:12:59 +01:00
Linus Groh
4ea6cc56be
LibWeb: Move unsafe_shared_current_time() to HighResolutionTime
...
This doesn't belong on the EventLoop at all, as far as I can tell.
2022-10-05 09:12:59 +01:00
Andrew Kaster
4bb6345b2f
LibWeb: Remove unecessary dependence on Window from assorted classes
...
These classes only needed Window to get at its realm. Pass a realm
directly to construct Crypto, Encoding, HRT, IntersectionObserver,
NavigationTiming, Page, RequestIdleCallback, Selection, Streams, URL,
and XML classes.
2022-10-01 21:05:32 +01:00
Andreas Kling
915a240944
LibWeb: Make IdleDeadline GC-allocated
2022-09-06 00:27:09 +02:00
Simon Wanner
836d2ff259
LibWeb: Implement the infrastructure necessary for requestIdleCallback
...
This includes a bug fix for the event loop processing steps which has
not been merged yet: https://github.com/whatwg/html/pull/7768
2022-04-02 23:52:25 +01:00
Lenny Maiorani
c37820b898
Libraries: Use default constructors/destructors in LibWeb
...
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#cother-other-default-operation-rules
"The compiler is more likely to get the default semantics right and
you cannot implement these functions better than the compiler."
2022-03-17 17:23:49 +00:00
Andreas Kling
11bb6e045f
LibWeb: Add the IdleDeadline interface from the RequestIdleCallback spec
2021-09-17 13:20:18 +02:00