1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 13:18:13 +00:00
serenity/Libraries/LibWeb/DOM
Andreas Kling 1d75e82101 LibWeb: Coalesce layouts that happen in response to style changes
Instead of doing a forced layout synchronously whenever an element's
style is changed, use a zero-timer to do the forced relayout on next
event loop iteration.

This effectively coalesces a lot of layouts and makes many pages such
as GitHub spend way less time doing redundant layout work.
2021-01-09 15:22:23 +01:00
..
Attribute.h LibWeb: Move Attribute to its own header file 2020-05-22 21:45:00 +02:00
CharacterData.cpp LibWeb: Move DOM classes into the Web::DOM namespace 2020-07-26 20:05:15 +02:00
CharacterData.h AK+LibGUI+LibWeb: Remove AK::TypeTraits in favor of RTTI-based helpers 2021-01-01 15:33:30 +01:00
CharacterData.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
Comment.cpp LibWeb: Rename LayoutNode classes and move them into Layout namespace 2020-11-22 15:56:27 +01:00
Comment.h AK+LibGUI+LibWeb: Remove AK::TypeTraits in favor of RTTI-based helpers 2021-01-01 15:33:30 +01:00
Comment.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
Document.cpp LibWeb: Coalesce layouts that happen in response to style changes 2021-01-09 15:22:23 +01:00
Document.h LibWeb: Coalesce layouts that happen in response to style changes 2021-01-09 15:22:23 +01:00
Document.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
DocumentFragment.cpp LibWeb: Add Comment and DocumentFragment bindings, move querySelector... 2020-08-17 22:57:05 +02:00
DocumentFragment.h AK+LibGUI+LibWeb: Remove AK::TypeTraits in favor of RTTI-based helpers 2021-01-01 15:33:30 +01:00
DocumentFragment.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
DocumentType.cpp LibWeb: Move DOM classes into the Web::DOM namespace 2020-07-26 20:05:15 +02:00
DocumentType.h AK+LibGUI+LibWeb: Remove AK::TypeTraits in favor of RTTI-based helpers 2021-01-01 15:33:30 +01:00
DocumentType.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
DOMImplementation.cpp LibWeb: Make event dispatching spec-compliant 2020-11-22 18:20:56 +01:00
DOMImplementation.h LibWeb: Add initial implementation of document.implementation 2020-11-13 09:51:07 +01:00
DOMImplementation.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
Element.cpp LibWeb: Coalesce layouts that happen in response to style changes 2021-01-09 15:22:23 +01:00
Element.h LibWeb: Specialize is<DOM::Element>() and is<Layout::Box>() 2021-01-07 17:33:29 +01:00
Element.idl LibWeb: Expose three more attribute methods on Element 2020-12-29 23:38:14 +01:00
ElementFactory.cpp LibWeb: Add almost all obsolete but required IDL attributes 2020-11-12 10:38:26 +01:00
ElementFactory.h LibWeb: Add namespace to Element 2020-10-22 15:24:42 +02:00
Event.cpp LibWeb: Remove more hand-rolled type information :^) 2021-01-01 18:14:00 +01:00
Event.h LibWeb: Remove more hand-rolled type information :^) 2021-01-01 18:14:00 +01:00
Event.idl LibWeb: Replace IDL 'void' return type with 'undefined' 2020-12-10 11:02:46 +01:00
EventDispatcher.cpp LibWeb: Remove more hand-rolled type information :^) 2021-01-01 18:14:00 +01:00
EventDispatcher.h LibWeb: Make event dispatching spec-compliant 2020-11-22 18:20:56 +01:00
EventListener.cpp LibWeb: Move DOM classes into the Web::DOM namespace 2020-07-26 20:05:15 +02:00
EventListener.h LibWeb: Make event dispatching spec-compliant 2020-11-22 18:20:56 +01:00
EventTarget.cpp LibWeb: Make event dispatching spec-compliant 2020-11-22 18:20:56 +01:00
EventTarget.h LibWeb: Remove more hand-rolled type information :^) 2021-01-01 18:14:00 +01:00
EventTarget.idl LibWeb: Replace IDL 'void' return type with 'undefined' 2020-12-10 11:02:46 +01:00
Node.cpp LibWeb: Move remove_all_children() from Node to TreeNode<T> 2021-01-07 17:33:29 +01:00
Node.h LibWeb: Move remove_all_children() from Node to TreeNode<T> 2021-01-07 17:33:29 +01:00
Node.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
NonDocumentTypeChildNode.h LibWeb: Add NonDocumentTypeChildNode::next_element_in_pre_order() 2020-08-15 00:05:45 +02:00
NonElementParentNode.h LibWeb: Use RefPtrs more in getElementById() and getElementsByName() 2020-10-07 12:47:17 +02:00
ParentNode.cpp LibWeb: Expose ParentNode.{first,last}ElementChild 2020-11-22 18:20:56 +01:00
ParentNode.h AK+LibGUI+LibWeb: Remove AK::TypeTraits in favor of RTTI-based helpers 2021-01-01 15:33:30 +01:00
Position.cpp LibWeb: Convert a bunch of dbg() to dbgln() 2021-01-09 14:03:06 +01:00
Position.h LibWeb: Convert a bunch of dbg() to dbgln() 2021-01-09 14:03:06 +01:00
Range.cpp LibWeb: Expose DOM::Range to JavaScript. 2020-12-09 21:05:06 +01:00
Range.h LibWeb: Expose DOM::Range to JavaScript. 2020-12-09 21:05:06 +01:00
ShadowRoot.cpp LibWeb: Make event dispatching spec-compliant 2020-11-22 18:20:56 +01:00
ShadowRoot.h LibWeb: Remove more hand-rolled type information :^) 2021-01-01 18:14:00 +01:00
ShadowRoot.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
Text.cpp LibWeb: Make DOM::Node::create_layout_node() not need parent's style 2021-01-06 14:58:48 +01:00
Text.h LibWeb: Make DOM::Node::create_layout_node() not need parent's style 2021-01-06 14:58:48 +01:00
Text.idl LibWeb: Expect IDL namespace to end with semicolon 2020-12-10 11:02:46 +01:00
Timer.cpp LibWeb: Deallocate DOM timer ID's when the timer goes away 2020-11-30 11:40:35 +01:00
Timer.h LibWeb: Move DOM classes into the Web::DOM namespace 2020-07-26 20:05:15 +02:00
Window.cpp Everywhere: Switch from (void) to [[maybe_unused]] (#4473) 2020-12-21 00:09:48 +01:00
Window.h LibWeb: Remove more hand-rolled type information :^) 2021-01-01 18:14:00 +01:00
XMLHttpRequest.cpp ProtocolServer: Stream the downloaded data if possible 2020-12-30 13:31:55 +01:00
XMLHttpRequest.h LibWeb: Make event dispatching spec-compliant 2020-11-22 18:20:56 +01:00