servo/components/script
Martin Robinson 436c9072c4
layout: Skip box tree construction when possible (#37957)
When a style change does not chang the structure of the box tree, it is
possible to skip box tree rebuilding for an element. This change adds
support for reusing old box trees when no element has that type of
damage. In order to make this happen, there needs to be a type of
"empty" `LayoutDamage` that just indicates that a fragment tree layout
is necessary.

This is the first step toward incremental fragment tree layout.

Testing: This should not change observable behavior and thus is covered
by
existing WPT tests. Performance numbers to follow.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Oriol Brufau <obrufau@igalia.com>
2025-07-09 17:33:09 +00:00
..
docs
dom script: Use an implemented pseudo-element to fortype=color ::color-swatch (#37427) 2025-07-09 15:36:58 +00:00
layout_dom layout: Skip box tree construction when possible (#37957) 2025-07-09 17:33:09 +00:00
resources Embed user agent stylesheets and media control resouces in libservo (#36803) 2025-05-04 18:48:09 +00:00
svgpath
xpath fix(xpath): pass in correct context node for // and / in predicates (#37434) 2025-06-17 18:45:00 +00:00
animation_timeline.rs
animations.rs Fix potential clippy warning for NodeDamage enum variant (#37391) 2025-06-11 09:53:15 +00:00
body.rs Consistently use Dom in native promise handlers (#37226) 2025-06-03 07:41:34 +00:00
build.rs script: copy include! files from script_bindings to script's OUT_DIR (#36384) 2025-04-08 19:22:24 +00:00
canvas_context.rs canvas: Make OffscreenCanvas transferable (without placeholder) (#37872) 2025-07-08 14:47:29 +00:00
canvas_state.rs canvas: Make OffscreenCanvas transferable (without placeholder) (#37872) 2025-07-08 14:47:29 +00:00
Cargo.toml Clean up unused dependencies / features and centralize more feature selection into root Cargo.toml (#37720) 2025-06-26 11:56:48 +00:00
clipboard_provider.rs
conversions.rs
devtools.rs script: Upgrade node_ids to pipeline_to_node_ids to track the owner pipeline of the node (#37213) 2025-06-02 12:26:45 +00:00
document_collection.rs
document_loader.rs script: LoadBlocker's drop impl shouldn't run after termination. (#36508) 2025-04-21 07:17:00 +00:00
drag_data_store.rs Add support for static SVG images using resvg crate (#36721) 2025-05-27 11:02:40 +00:00
fetch.rs Move CSP code into one entrypoint (#37604) 2025-06-24 08:50:30 +00:00
iframe_collection.rs script: Clean up Window::force_reflow a little (#37725) 2025-06-27 12:27:15 +00:00
image_animation.rs script: Properly root nodes with animating images (#37689) 2025-06-25 13:52:11 +00:00
init.rs
layout_image.rs Move CSP code into one entrypoint (#37604) 2025-06-24 08:50:30 +00:00
lib.rs Make the crown disabled warning clearer and less scary (#37535) 2025-06-19 12:44:26 +00:00
links.rs Use version of markup5ever with web_atoms crate (#36542) 2025-04-19 11:49:37 +00:00
messaging.rs Add a basic caching mechanism for ImageKeys. (#37369) 2025-07-03 13:16:43 +00:00
microtask.rs Implement MicrotaskRunnable for DefaultTeeReadRequestMicrotask (#37404) 2025-06-12 10:46:31 +00:00
mime.rs Switch to data_url::mime for document content type (#36522) 2025-04-15 17:12:48 +00:00
navigation.rs constellation: Pass system theme to new Pipelines (#37132) 2025-05-26 12:05:38 +00:00
network_listener.rs
realms.rs
routed_promise.rs script: add TaskSource argument to route_promise (#36831) 2025-05-04 17:05:27 +00:00
script_module.rs Move CSP code into one entrypoint (#37604) 2025-06-24 08:50:30 +00:00
script_runtime.rs script: const initialize LIVE_REFERENCES (#37688) 2025-06-25 11:27:56 +00:00
script_thread.rs script: join compositor_requested_update_the_rendering into should_trigger_script_thread_animation_tick (#37889) 2025-07-08 15:26:32 +00:00
security_manager.rs Implement initial version of ReportingObserver (#37905) 2025-07-07 10:43:30 +00:00
serviceworker_manager.rs
stylesheet_loader.rs Move CSP code into one entrypoint (#37604) 2025-06-24 08:50:30 +00:00
stylesheet_set.rs
task.rs
task_manager.rs Initial IndexedDB Support (#33044) 2025-06-19 05:19:07 +00:00
task_queue.rs
task_source.rs Initial IndexedDB Support (#33044) 2025-06-19 05:19:07 +00:00
test.rs script: Refactor dom/headers to match spec better (#36943) 2025-05-21 19:07:32 +00:00
textinput.rs Send synthetic keydown/keyup at ime_insert_text (#37175) 2025-05-30 02:06:15 +00:00
timers.rs Move CSP code into one entrypoint (#37604) 2025-06-24 08:50:30 +00:00
unminify.rs
webdriver_handlers.rs Webdriver: Implement calculate the absolute position for Get Element Rect (#37847) 2025-07-04 07:22:29 +00:00
window_named_properties.rs