servo/components
Martin Robinson a0743f60b3
script: Update the rendering when receiving IPC messages instead of just reflowing (#34486)
This changes fixes two issues:

1. A reflow of all `Document`s currently done unconditionally after
   receving IPC messages in the `ScriptThread`. Reflowing without first
   updating the animation timeline can lead to transitions finshing as
   soon as they start (because it looks like time advancement is
   measaured between calls to `update-the-rendering`).
2. Fix an issue where not all `Pipeline`s were updated during *update
   the rendering*. The previous code only took into account top level
   frames and their children. It's not guaranteed that a particular
   `ScriptThread` is managing any top level frames, depending on the
   origens of those frames. We should update the rendering of those
   non-top-level iframes regardless.

   The new code attempts to order the frames according to the
   specification as much as possible without knowing the entire frame
   tree, without skipping any documents managed by the `ScriptThread` in
   question.

In addition, `Documents` is pulled out the `script_thread.rs` and
renamed to `DocumentCollection`.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2024-12-09 11:33:58 +00:00
..
allocator Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
background_hang_monitor Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
bluetooth Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
canvas Remove some unused dependencies (#34355) 2024-11-25 10:29:58 +00:00
compositing Use webrender_api::units::DevicePixel rather than style_traits::DevicePixel unless interfacing with Stylo (#34353) 2024-11-25 23:42:04 +00:00
config Add XPath parser/evaluator (#34463) 2024-12-08 02:01:50 +00:00
config_plugins add allow(non_camel_case_types) to generated pref structs (#33987) 2024-10-24 09:36:13 +00:00
constellation Add webgpu feature flag (#34444) 2024-12-05 16:07:27 +00:00
deny_public_fields Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
devtools DevTools: Fix console in Firefox 131 (#33661) 2024-10-09 12:09:06 +00:00
dom_struct Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
domobject_derive Replace ShouldNotImplDomObject with NoDomObjectInDomObject (#33627) 2024-10-03 12:58:34 +00:00
fonts Don't trace SystemFontService loop (#34508) 2024-12-06 17:05:18 +00:00
geometry servoshell: Allow overriding screen resolution with a command-line argument (#34038) 2024-10-30 11:54:13 +00:00
hyper_serde Stop using time@0.1 in Servo (#33394) 2024-09-11 07:09:56 +00:00
jstraceable_derive Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
layout Upgrade Stylo to 2024-12-04 (#34501) 2024-12-06 01:05:54 +00:00
layout_2020 layout: Have SameFormattingContextBlock be a LayoutBoxBase (#34530) 2024-12-09 06:57:15 +00:00
layout_thread Move stylo thread pool mutex to servo layout thread crates (#34480) 2024-12-05 04:10:27 +00:00
layout_thread_2020 Move stylo thread pool mutex to servo layout thread crates (#34480) 2024-12-05 04:10:27 +00:00
malloc_size_of Implement MallocSizeOf for markup5ever rather than xml5ever. (#34403) 2024-11-27 01:21:41 +00:00
media Remove some unused dependencies (#34355) 2024-11-25 10:29:58 +00:00
metrics Remove some unused dependencies (#34355) 2024-11-25 10:29:58 +00:00
net Add prefs to limit threadpool sizes (#34478) 2024-12-07 05:25:17 +00:00
pixels Optimized unmultiply_inplace to remove fp ops (#33582) 2024-09-30 19:39:27 +00:00
profile [NFC] Remove unused interval profiler events (#34285) 2024-11-19 07:18:52 +00:00
rand crypto: Begin SubtleCrypto implementation (#33628) 2024-10-08 03:51:08 +00:00
range Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
script script: Update the rendering when receiving IPC messages instead of just reflowing (#34486) 2024-12-09 11:33:58 +00:00
servo Add prefs to limit threadpool sizes (#34478) 2024-12-07 05:25:17 +00:00
shared Add webgpu feature flag (#34444) 2024-12-05 16:07:27 +00:00
url Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
webdriver_server Remove referrer policy from document (#34263) 2024-11-19 12:45:10 +00:00
webgpu Only send mapping back on unmap when MapMode = WRITE (#34054) 2024-10-29 18:42:07 +00:00