servo/components/shared
Martin Robinson 6dafeb7a59
layout: Add a first pass at incremental box tree construction (#37751)
This change:

- Adds a new type of LayoutDamage that signifies that a box needs its
  children recollected, because one or more of them need to be rebuilt.
- During restyle damage propagation, propagate this new damage upward in
  the tree. Then box tree construction should be able to preserve any
  still-valid box tree nodes from box slots.
- During BlockLevelBox job finalization, if a box slot is valid and
  there is not LayoutDamage to the element, use the old box slot,
  ensuring that its fragment cache is invalidated.

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

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Oriol Brufau <obrufau@igalia.com>
Co-authored-by: coding-joedow <ibluegalaxy_taoj@163.com>
2025-07-03 08:13:20 +00:00
..
background_hang_monitor Initial IndexedDB Support (#33044) 2025-06-19 05:19:07 +00:00
base imagebitmap: Make ImageBitmap serializable and transferable (#37101) 2025-05-23 20:40:25 +00:00
bluetooth Include WebViewId into EmbedderMsg variants where possible (#35211) 2025-01-30 11:15:35 +00:00
canvas canvas: Add CanvasPattern 'setTranform(transform)' method (#37731) 2025-06-26 14:38:30 +00:00
compositing compositor: only UpdateImages that accepts SmallVec and add helpers for single image (#37730) 2025-06-26 14:57:15 +00:00
constellation Chore: Remove unused GetFocusTopLevelBrowsingContext from EmbedderToConstellationMessage (#37716) 2025-06-26 09:45:59 +00:00
devtools Allow console commands to appear in log files (#37631) 2025-06-23 18:42:36 +00:00
embedder webdriver: Get the window position as well as the size when resolving "Get Window Rect" (#37812) 2025-07-02 10:01:27 +00:00
fonts Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
layout layout: Add a first pass at incremental box tree construction (#37751) 2025-07-03 08:13:20 +00:00
net net: Avoid all-encompassing synchronous IPC return type for IndexedDB operations (#37576) 2025-06-20 10:06:56 +00:00
profile layout: Improve and expand category names for layout profiling (#37833) 2025-07-02 15:02:56 +00:00
script compositor: Wait for both Script and the Constellation when shutting down Pipelines (#37505) 2025-06-17 09:56:31 +00:00
webgpu pixels: Move Snapshot and related data structures to pixels (#37590) 2025-06-20 14:47:06 +00:00
webxr libservo: Move EventLooperWaker from webxr_traits to embedder_traits (#36420) 2025-04-09 14:19:33 +00:00