ladybird/Libraries/LibWeb
Andreas Kling def0bcdfa2 LibWeb: Don't unconditionally relayout on animation/transition changes
If a CSS animation or transition was being used to manipulate a property
that itself does not affect layout, we were still doing a full relayout
whenever any animation or transition related property was changed.

As it turns out, we can just not do that, and we avoid a bunch of
unnecessary layout work on many pages. When a layout-affecting property
is being animated, the animation/transition update code takes care to
invalidate layout as appropriate anyway!

This was very noticeable on GitHub, where moving the mouse cursor
between "Issues" and "Pull requests" would trigger a full relayout every
time. Now that doesn't happen, and it's much more responsive. :^)
2025-03-08 17:32:53 +01:00
..
Animations LibWeb: Bring back cache of intrinsic sizes across layout runs 2025-03-08 14:52:33 +01:00
ARIA LibWeb: Sync AriaRoles.json w/ Characteristics data in current spec 2025-02-21 09:08:56 +00:00
Bindings LibWeb: Make base URL of HTML::Script Optional 2025-02-19 08:01:35 -05:00
Clipboard AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
Compression LibWeb: Add an 'enqueue' helper method on TransformStream 2024-12-25 12:00:54 +01:00
ContentSecurityPolicy LibWeb: Introduce Content Security Policy policies and directives 2025-03-04 14:27:19 +01:00
Cookie
CredentialManagement LibWeb: Stub for Credential Management API 2025-02-05 13:18:47 -07:00
Crypto LibCrypto+LibWeb: Refactor AES implementation with OpenSSL 2025-03-02 15:11:38 +01:00
CSS LibWeb: Don't unconditionally relayout on animation/transition changes 2025-03-08 17:32:53 +01:00
DOM LibWeb: Bring back cache of intrinsic sizes across layout runs 2025-03-08 14:52:33 +01:00
DOMURL LibWeb: Return OptionalNone from DOMURL::parse on failure 2025-01-22 12:33:55 +00:00
Editing LibWeb/Editing: Allow text-decoration-foo to be a CSSKeywordValue 2025-02-28 16:34:08 +00:00
Encoding LibWeb/Bindings: Support returning nullable types in dictionaries 2025-02-10 17:05:15 +00:00
EncryptedMediaExtensions LibWeb: Improve Enum generation in IDLGenerator 2025-03-04 16:35:04 +00:00
EntriesAPI LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
EventTiming LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
Fetch LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
FileAPI LibWeb: Implement FileReaderSync interface 2025-02-28 04:49:51 +00:00
Geometry LibWeb/CSS: Integrate ParsingContext into the Parser 2025-02-06 16:47:25 +00:00
HighResolutionTime LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
HTML LibWeb: Bring back cache of intrinsic sizes across layout runs 2025-03-08 14:52:33 +01:00
IndexedDB LibWeb: Update spec comment with latest changes 2025-03-01 12:41:35 +00:00
Infra LibWeb: Revert addition of VERIFY call to isomorphic-decode 2025-01-03 14:54:29 +01:00
Internals LibWeb: Add opt-in tracing of update_layout() calls with reason 2025-03-08 03:37:38 +01:00
IntersectionObserver LibWeb/CSS: Integrate ParsingContext into the Parser 2025-02-06 16:47:25 +00:00
Layout LibWeb: Bring back cache of intrinsic sizes across layout runs 2025-03-08 14:52:33 +01:00
Loader RequestServer: Retrieve timing info from curl and pipe it to LibWeb 2025-03-06 09:00:53 -07:00
MathML LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
MediaCapabilitiesAPI LibWeb: Implement MediaCapabilities.decodingInfo() 2025-02-18 10:18:40 -07:00
MediaSourceExtensions LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
MimeSniff
MixedContent AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
NavigationTiming LibWeb: Return wall time from PerformanceTiming interface 2025-01-27 14:53:33 +01:00
Page LibWeb: Add opt-in tracing of update_layout() calls with reason 2025-03-08 03:37:38 +01:00
Painting LibWeb: Implement css gradient-interpolation-method 2025-03-06 11:33:12 +00:00
PerformanceTimeline LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
PermissionsPolicy Everywhere: Remove some use of the URL constructors 2025-02-19 08:01:35 -05:00
Platform LibWeb+LibWebView: Allow to specify default font size in FontPlugin 2025-01-02 10:47:21 +01:00
ReferrerPolicy LibURL+LibWeb: Make URL::serialize return a String 2024-12-04 16:34:13 +00:00
RequestIdleCallback LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
ResizeObserver AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
ResourceTiming LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
SecureContexts Everywhere: Use URL::about_XXX factory functions 2025-02-15 17:05:55 +00:00
Selection LibWeb: Only clear command states and values if range actually changed 2025-01-24 23:53:26 +01:00
ServiceWorker LibWeb/ServiceWorker: Use has_value for checking for invalid URL 2025-02-19 08:01:35 -05:00
SRI
StorageAPI LibWeb/Storage: Add a storage key getter that takes a URL::Origin 2025-01-21 19:22:07 +00:00
Streams LibWeb: Align ReadableByteStreamControllerEnqueue 2025-02-10 13:25:51 +00:00
SVG LibWeb: Bring back cache of intrinsic sizes across layout runs 2025-03-08 14:52:33 +01:00
TrustedTypes LibWeb: Update Document.write spec steps 2025-02-25 15:19:38 +01:00
UIEvents LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
URLPattern LibWeb/URLPattern: Implement IDL interface for URLPattern test and exec 2025-03-04 16:32:09 -05:00
UserTiming LibWeb: Report performance based timestamps relative to ESO time origin 2025-01-27 14:53:33 +01:00
WebAssembly LibGC: Rename MarkedVector => RootVector 2024-12-26 19:10:44 +01:00
WebAudio LibWeb: Initialize AnalyserNode previous block at construction time 2025-02-13 20:31:37 +00:00
WebDriver AK+Everywhere: Convert JSON value serialization to String 2025-02-20 19:27:51 -05:00
WebGL LibWeb/WebGL2: Implement EXT_color_buffer_float extension 2025-03-06 12:59:28 +01:00
WebIDL LibWeb: Use as to cast global object to WindowOrWorkerGlobalScopeMixin 2025-02-02 17:18:56 +01:00
WebSockets LibWeb: Don't close websocket if already closed in make_disappear() AO 2025-02-26 20:20:22 +01:00
WebVTT LibGC+Everywhere: Factor out a LibGC from LibJS 2024-11-15 14:49:20 +01:00
Worker Everywhere: Include HashMap only where it's actually used 2024-12-09 12:31:16 +01:00
XHR LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
XLink LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
XML LibXML: Associate prefixed elements with the correct namespace 2025-02-25 15:02:35 +01:00
CMakeLists.txt LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
Dump.cpp LibWeb: Reduced number of recompiled files for CSS property headers 2025-02-23 10:14:39 -05:00
Dump.h LibWeb: Split StyleComputer work into two phases with separate outputs 2024-12-22 10:12:49 +01:00
Forward.h LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
idl_files.cmake LibWeb: Implement Resource Timing 2025-03-06 09:00:53 -07:00
InvalidateDisplayList.h
Namespace.cpp LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
Namespace.h LibWeb: Remove the initialize_strings methods 2025-01-12 00:35:58 +01:00
PixelUnits.cpp
PixelUnits.h LibWeb: Clamp layout content sizes to a max value instead of crashing 2025-02-05 18:28:55 +01:00
TraversalDecision.h
TraversalOrder.h
TreeNode.h LibWeb/DOM: Don't use recursion for subtree traversal in Node.h 2025-02-03 18:36:57 +01:00