1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 11:48:10 +00:00
serenity/Userland/Libraries/LibWeb/DOM
Aliaksandr Kalenik 5ff7448fee LibWeb: Move viewport subscriptions from BrowsingContext to Document
With this change, elements that want to receive viewport rect updates
will need to register on document instead of the browsing context.

This change solves the problem where a browsing context for a document
is guaranteed to exist only while the document is active so browsing
context might not exit by the time DOM node that want to register is
constructed.

This is a part of preparation work before switching to navigables where
this issue becomes more visible.
2023-08-23 20:14:20 +02:00
..
AbortController.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
AbortController.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
AbortController.idl
AbortSignal.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
AbortSignal.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
AbortSignal.idl LibWeb: Replace ad-hoc EventHandler type with callback function typedef 2022-03-31 01:10:47 +02:00
AbstractRange.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
AbstractRange.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
AbstractRange.idl LibWeb: Remove the NoInstanceWrapper extended IDL attribute 2022-09-06 00:27:09 +02:00
AccessibilityTreeNode.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
AccessibilityTreeNode.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
Attr.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
Attr.h LibWeb: Cache lowercased tag name for getElementsByTagName() iteration 2023-08-23 08:06:25 +02:00
Attr.idl LibWeb: Rename Attribute to Attr 2022-09-18 02:08:01 +02:00
CDATASection.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
CDATASection.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
CDATASection.idl LibWeb: Add CDATASection 2022-06-27 22:53:04 +01:00
CharacterData.cpp LibWeb: Invalidate layout-transformed text on DOM text node change 2023-08-16 12:16:05 +02:00
CharacterData.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
CharacterData.idl LibWeb: Add Exposed attribute and IDL spec links where missing 2022-10-09 10:14:57 +02:00
ChildNode.h LibWeb: Fix a few const-ness issues 2023-03-06 13:05:43 +00:00
ChildNode.idl LibWeb: Resolve circular IDL imports 2022-07-30 13:20:47 +02:00
Comment.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
Comment.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
Comment.idl LibWeb: Add Exposed attribute and IDL spec links where missing 2022-10-09 10:14:57 +02:00
CustomEvent.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
CustomEvent.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
CustomEvent.idl LibWeb: Port CustomEvent to new String 2023-04-07 22:41:01 +02:00
Document.cpp LibWeb: Move viewport subscriptions from BrowsingContext to Document 2023-08-23 20:14:20 +02:00
Document.h LibWeb: Move viewport subscriptions from BrowsingContext to Document 2023-08-23 20:14:20 +02:00
Document.idl LibWeb: Add a bunch of missing CEReactions 2023-04-06 11:36:56 +02:00
DocumentFragment.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
DocumentFragment.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
DocumentFragment.idl LibWeb: Add Exposed attribute and IDL spec links where missing 2022-10-09 10:14:57 +02:00
DocumentLoadEventDelayer.cpp LibWeb+LibJS: Make the EventTarget hierarchy (incl. DOM) GC-allocated 2022-09-06 00:27:09 +02:00
DocumentLoadEventDelayer.h LibWeb+LibJS: Make the EventTarget hierarchy (incl. DOM) GC-allocated 2022-09-06 00:27:09 +02:00
DocumentLoading.cpp LibWeb: Make Fetch::Infrastructure::Body be GC allocated 2023-08-19 15:12:00 +02:00
DocumentLoading.h LibWeb: Implement "attempt to populate the history entry's document" 2023-05-03 09:39:49 +02:00
DocumentObserver.cpp LibWeb: Add an interface to be notified of Document state changes 2023-05-04 16:48:10 +02:00
DocumentObserver.h LibWeb: Rename loaded observer event to match spec 2023-07-12 13:16:23 +02:00
DocumentType.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
DocumentType.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
DocumentType.idl LibWeb: Add Exposed attribute and IDL spec links where missing 2022-10-09 10:14:57 +02:00
DOMEventListener.cpp LibJS+LibWeb: Normalize calls to Base::visit_edges in GC objects 2023-04-30 06:04:33 +02:00
DOMEventListener.h LibJS+LibWeb: Normalize calls to Base::visit_edges in GC objects 2023-04-30 06:04:33 +02:00
DOMImplementation.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
DOMImplementation.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
DOMImplementation.idl LibWeb: Add Exposed attribute and IDL spec links where missing 2022-10-09 10:14:57 +02:00
DOMTokenList.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
DOMTokenList.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
DOMTokenList.idl LibWeb: Add Exposed attribute and IDL spec links where missing 2022-10-09 10:14:57 +02:00
Element.cpp LibWeb: Cache lowercased tag name for getElementsByTagName() iteration 2023-08-23 08:06:25 +02:00
Element.h LibWeb: Cache lowercased tag name for getElementsByTagName() iteration 2023-08-23 08:06:25 +02:00
Element.idl LibWeb: Implement Element.hasAttributeNS 2023-08-09 22:10:58 -04:00
ElementFactory.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
ElementFactory.h LibWeb: Introduce CustomElementRegistry and creating custom elements 2023-04-06 11:36:56 +02:00
Event.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
Event.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
Event.idl LibWeb: Port {Mouse,UI,Wheel,}Event to new String 2023-04-07 22:41:01 +02:00
EventDispatcher.cpp LibWeb: Port DOMEventListener to new FlyString 2023-04-09 17:27:27 +02:00
EventDispatcher.h LibWeb+LibJS: Make the EventTarget hierarchy (incl. DOM) GC-allocated 2022-09-06 00:27:09 +02:00
EventHandler.idl LibWeb: Implement WindowEventHandlers 2022-06-29 21:21:50 +01:00
EventTarget.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
EventTarget.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
EventTarget.idl LibWeb: Implement the EventTarget constructor 2023-05-04 16:12:40 +02:00
HTMLCollection.cpp LibWeb: Const qualify HTMLCollection::length 2023-08-20 11:04:03 +02:00
HTMLCollection.h LibWeb: Const qualify HTMLCollection::length 2023-08-20 11:04:03 +02:00
HTMLCollection.idl
HTMLFormControlsCollection.cpp LibWeb: Implement HTMLFormControlsCollection 2023-08-20 11:04:03 +02:00
HTMLFormControlsCollection.h LibWeb: Implement HTMLFormControlsCollection 2023-08-20 11:04:03 +02:00
HTMLFormControlsCollection.idl LibWeb: Implement HTMLFormControlsCollection 2023-08-20 11:04:03 +02:00
IDLEventListener.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
IDLEventListener.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
InnerHTML.idl LibWeb: Resolve circular IDL imports 2022-07-30 13:20:47 +02:00
LiveNodeList.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
LiveNodeList.h LibWeb: Don't mark LiveNodeList as final 2023-08-20 11:04:03 +02:00
MutationObserver.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
MutationObserver.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
MutationObserver.idl LibWeb: Introduce Mutation{Record,Observer} and observer microtasks 2022-07-11 22:35:08 +02:00
MutationRecord.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
MutationRecord.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
MutationRecord.idl LibWeb: Introduce Mutation{Record,Observer} and observer microtasks 2022-07-11 22:35:08 +02:00
MutationType.cpp AK: Make "foo"_fly_string infallible 2023-08-07 16:03:27 +02:00
MutationType.h AK: Make "foo"_fly_string infallible 2023-08-07 16:03:27 +02:00
NamedNodeMap.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
NamedNodeMap.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
NamedNodeMap.idl LibWeb: Add NamedNodeMap::setNamedItemNS() method 2022-12-17 18:27:57 +01:00
Node.cpp LibWeb: Give DOM::Node a direct pointer to its Paintable 2023-08-20 05:02:59 +02:00
Node.h LibWeb: Support fast_is<T>() for table, table sections, rows and cells 2023-08-23 08:06:25 +02:00
Node.idl LibWeb: Add a bunch of missing CEReactions 2023-04-06 11:36:56 +02:00
NodeFilter.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
NodeFilter.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
NodeFilter.idl LibWeb: Expose NodeFilter on the Window object 2022-10-28 16:17:08 +01:00
NodeIterator.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
NodeIterator.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
NodeIterator.idl LibWeb: Remove the NoInstanceWrapper extended IDL attribute 2022-09-06 00:27:09 +02:00
NodeList.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
NodeList.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
NodeList.idl
NodeOperations.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
NodeOperations.h AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
NonDocumentTypeChildNode.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
NonElementParentNode.h LibWeb: Fix a few const-ness issues 2023-03-06 13:05:43 +00:00
ParentNode.cpp LibWeb: Cache lowercased tag name for getElementsByTagName() iteration 2023-08-23 08:06:25 +02:00
ParentNode.h LibWeb: Allow SVG painting to escape out of a shadow tree 2023-06-03 05:58:00 +02:00
ParentNode.idl LibWeb: Resolve circular IDL imports 2022-07-30 13:20:47 +02:00
Position.cpp LibWeb: Skip over grapheme clusters on left/right arrow key presses 2023-03-01 14:24:01 +00:00
Position.h LibWeb: Convert Web::DOM::Position::to_deprecated_string to String 2023-03-01 14:24:01 +00:00
ProcessingInstruction.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
ProcessingInstruction.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
ProcessingInstruction.idl LibWeb: Add Exposed attribute and IDL spec links where missing 2022-10-09 10:14:57 +02:00
QualifiedName.cpp LibWeb: Introduce CustomElementRegistry and creating custom elements 2023-04-06 11:36:56 +02:00
QualifiedName.h LibWeb: Cache lowercased tag name for getElementsByTagName() iteration 2023-08-23 08:06:25 +02:00
RadioNodeList.cpp LibWeb: Implement RadioNodeList 2023-08-20 11:04:03 +02:00
RadioNodeList.h LibWeb: Implement RadioNodeList 2023-08-20 11:04:03 +02:00
RadioNodeList.idl LibWeb: Implement RadioNodeList 2023-08-20 11:04:03 +02:00
Range.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
Range.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
Range.idl LibWeb: Implement Range.createContextualFragment() 2023-03-10 14:58:55 +01:00
ShadowRoot.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
ShadowRoot.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
ShadowRoot.idl LibWeb: Make ShadowRoot.mode return ShadowRootMode instead of String 2023-02-02 14:43:29 +01:00
StaticNodeList.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
StaticNodeList.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
StaticRange.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
StaticRange.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
StaticRange.idl LibWeb: Remove the NoInstanceWrapper extended IDL attribute 2022-09-06 00:27:09 +02:00
StyleElementUtils.cpp LibWeb: Don't parse inline style sheets during HTML fragment parsing 2023-08-09 17:09:28 +02:00
StyleElementUtils.h LibWeb: Extract updating a style block into StyleElementUtils 2023-06-09 17:14:50 +02:00
Text.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
Text.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
Text.idl LibWeb: Add Exposed attribute and IDL spec links where missing 2022-10-09 10:14:57 +02:00
TreeWalker.cpp LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
TreeWalker.h LibJS: Make Heap::allocate<T>() infallible 2023-08-13 15:38:42 +02:00
TreeWalker.idl LibWeb: Remove the NoInstanceWrapper extended IDL attribute 2022-09-06 00:27:09 +02:00
XMLDocument.cpp LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
XMLDocument.h LibJS: Make Cell::initialize() return void 2023-08-08 07:39:11 +02:00
XMLDocument.idl LibWeb: Add XMLDocument stub 2023-04-21 07:59:50 +02:00