ladybird/Libraries/LibWeb/DOM
Andreas Kling f7a1696087 LibJS: Add MarkedValueList and use it for argument passing
A MarkedValueList is basically a Vector<JS::Value> that registers with
the Heap and makes sure that the stored values don't get GC'd.

Before this change, we were unsafely keeping Vector<JS::Value> in some
places, which is out-of-reach for the live reference finding logic
since Vector puts its elements on the heap by default.

We now pass all the JavaScript tests even when running with "js -g",
which does a GC on every heap allocation.
2020-04-19 17:34:33 +02:00
..
CanvasRenderingContext2D.cpp LibWeb: Implement CanvasRenderingContext2D::stroke_rect() with lines 2020-04-16 21:12:14 +02:00
CanvasRenderingContext2D.h LibWeb: Add some basic path drawing functionality to the canvas element 2020-04-16 21:06:03 +02:00
CharacterData.cpp LibWeb: Rename directory LibHTML => LibWeb 2020-03-07 10:32:51 +01:00
CharacterData.h LibWeb: Rename directory LibHTML => LibWeb 2020-03-07 10:32:51 +01:00
Comment.cpp LibWeb: Rename directory LibHTML => LibWeb 2020-03-07 10:32:51 +01:00
Comment.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
Document.cpp LibJS: Do not execute scripts with parse errors 2020-04-13 10:42:25 +02:00
Document.h LibWeb: Add Origin concept (protocol, host, port tuple) 2020-04-07 23:01:45 +02:00
DocumentFragment.h LibWeb: Move get_element_by_id() to a NonElementParentNode mixin class 2020-03-28 09:13:29 +01:00
DocumentType.cpp LibWeb: Rename directory LibHTML => LibWeb 2020-03-07 10:32:51 +01:00
DocumentType.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
Element.cpp LibWeb: Implement getting and setting element.innerHTML 2020-03-25 18:53:20 +01:00
Element.h LibWeb: Implement getting and setting element.innerHTML 2020-03-25 18:53:20 +01:00
ElementFactory.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
ElementFactory.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
Event.cpp LibWeb: Add a DOM Event class (instead of events being simple strings) 2020-03-21 18:17:18 +01:00
Event.h Meta: Add missing copyright headers 2020-04-06 11:09:01 +02:00
EventListener.cpp LibWeb: Add missing copyright headers 2020-03-18 20:20:35 +01:00
EventListener.h LibWeb: Add missing copyright headers 2020-03-18 20:20:35 +01:00
EventTarget.cpp LibWeb: Use FlyString for DOM event names 2020-03-22 19:53:22 +01:00
EventTarget.h LibWeb: Use FlyString for DOM event names 2020-03-22 19:53:22 +01:00
HTMLAnchorElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLAnchorElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLBlinkElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLBlinkElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLBodyElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLBodyElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLBRElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLBRElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLCanvasElement.cpp LibWeb: Use Checked<T> when creating <canvas> bitmap buffers 2020-04-15 16:58:46 +02:00
HTMLCanvasElement.h LibWeb: Limit the maximum size of <canvas> bitmap buffers 2020-04-15 12:29:21 +02:00
HTMLElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLFontElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLFontElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLFormElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLFormElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLHeadElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLHeadElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLHeadingElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLHeadingElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLHRElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLHRElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLHtmlElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLHtmlElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLImageElement.cpp LibWeb: Dispatch a "load" event on HTMLImageElement 2020-04-14 20:10:48 +02:00
HTMLImageElement.h LibWeb: Add a JavaScript wrapper for HTMLImageElement :^) 2020-04-14 20:37:01 +02:00
HTMLInputElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLInputElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLLinkElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLLinkElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLScriptElement.cpp LibJS: Do not execute scripts with parse errors 2020-04-13 10:42:25 +02:00
HTMLScriptElement.h LibWeb: Implement <script src> support for synchronous scripts 2020-04-03 23:06:09 +02:00
HTMLStyleElement.cpp LibWeb: Implement <script src> support for synchronous scripts 2020-04-03 23:06:09 +02:00
HTMLStyleElement.h LibWeb: Implement <script src> support for synchronous scripts 2020-04-03 23:06:09 +02:00
HTMLTitleElement.cpp LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
HTMLTitleElement.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
MouseEvent.cpp LibWeb: Add a DOM Event class (instead of events being simple strings) 2020-03-21 18:17:18 +01:00
MouseEvent.h Meta: Add missing copyright headers 2020-04-06 11:09:01 +02:00
Node.cpp LibJS: Add MarkedValueList and use it for argument passing 2020-04-19 17:34:33 +02:00
Node.h LibWeb: Implement <script src> support for synchronous scripts 2020-04-03 23:06:09 +02:00
NonElementParentNode.h LibWeb: Move get_element_by_id() to a NonElementParentNode mixin class 2020-03-28 09:13:29 +01:00
ParentNode.cpp LibWeb: Add ParentNode::remove_all_children() 2020-03-25 18:52:03 +01:00
ParentNode.h LibWeb: Add ParentNode::remove_all_children() 2020-03-25 18:52:03 +01:00
Text.cpp LibWeb: Rename directory LibHTML => LibWeb 2020-03-07 10:32:51 +01:00
Text.h LibWeb: Use FlyString for Element tag names 2020-03-22 19:12:10 +01:00
Window.cpp LibWeb: Implement JS confirm() 2020-04-17 13:41:03 +02:00
Window.h LibWeb: Implement JS confirm() 2020-04-17 13:41:03 +02:00
XMLHttpRequest.cpp LibJS: Add MarkedValueList and use it for argument passing 2020-04-19 17:34:33 +02:00
XMLHttpRequest.h LibWeb: Support relative URL's in XMLHttpRequest 2020-04-08 21:46:43 +02:00