servo/components/shared
Martin Robinson a66a257b38
script: Properly root nodes with animating images (#37689)
This change fixes an issue and makes a few more minor improvements to
the `ImageAnimationState`:

1. Image rooting and unrooted now happens in one step from
   `Window::update_animations_post_reflow`.
2. The `node_to_animating_image_map` is now stored as a shared `RwLock`
   so that it doesn't need to be taken and then replaced in the
`ImageAnimationState` during reflow. This should prevent a hypothetical
issue
   where image animations are restarted during empty reflows.
3. General naming and idiomatic Rust usage improvements.

Testing: This doesn't really have any obvious behavioral changes,
because all
reflows currently trigger a restyle. It becomes a serious problem with
#37677
and this change fixes the failing test there.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-06-25 13:52:11 +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: Use strum::{Display, EnumString} for canvas enums (#37670) 2025-06-24 13:03:41 +00:00
compositing script: Get scroll offsets from layout (#37509) 2025-06-20 09:39:12 +00:00
constellation pixels: Move Snapshot and related data structures to pixels (#37590) 2025-06-20 14:47:06 +00:00
devtools Allow console commands to appear in log files (#37631) 2025-06-23 18:42:36 +00:00
embedder webdriver: Move navigation commands to servoshell (#37665) 2025-06-25 12:35:13 +00:00
fonts Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
layout script: Properly root nodes with animating images (#37689) 2025-06-25 13:52:11 +00:00
net net: Avoid all-encompassing synchronous IPC return type for IndexedDB operations (#37576) 2025-06-20 10:06:56 +00:00
profile Initial IndexedDB Support (#33044) 2025-06-19 05:19:07 +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