servo/components
Andrei Volykhin d0579256bb
canvas: Unify retrieving image data from the HTMLImageElement (#37809)
Currently, HTMLImageElement uses as an image source
(ImageBitmapSource, CanvasImageSource, TexImageSource)
in various canvas2D/WebGL operations, and there is a small
inconsistency in how we get the image data of the 'img' element:
usability checking and retrieving the image data from the image cache.

To simplify and avoid state inconsistency between the window's image
cache and the 'img' element, let's retrieve the image data (as a raster)
from the HTMLImageElement itself.

Testing: No expected changes in testing results, except the
'drawimage_svg_image_with_foreign_object_does_not_taint.html'
which is 'false' passed because drawing of the non supported vector
image
is silently skip instead of throwing the 'InvalidState' exception
anymore.

Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
2025-07-02 08:13:30 +00:00
..
allocator Organize component Cargo.toml dependencies (#36224) 2025-03-30 19:03:54 +00:00
background_hang_monitor Enable LinuxSampler to be used on Android (#37784) 2025-06-30 17:17:50 +00:00
bluetooth Replace bluetooth Readme with corrected version from devices repository (#36429) 2025-04-10 18:02:45 +00:00
canvas canvas: Do not draw arc/ellipse with small sweep (#37630) 2025-07-01 12:01:15 +00:00
compositing compositor: only UpdateImages that accepts SmallVec and add helpers for single image (#37730) 2025-06-26 14:57:15 +00:00
config Fix indexeddb threadpool (#37649) 2025-06-23 22:06:16 +00:00
constellation Lazily initialize canvas paint thread in constellation (#37765) 2025-06-28 17:29:11 +00:00
deny_public_fields Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
devtools Add common resourceId to network events (#37707) 2025-06-26 07:08:16 +00:00
dom_struct script: Feature-gate all crown support. (#35055) 2025-01-18 21:36:15 +00:00
domobject_derive Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
fonts Clean up unused dependencies / features and centralize more feature selection into root Cargo.toml (#37720) 2025-06-26 11:56:48 +00:00
geometry servoshell: Allow overriding screen resolution with a command-line argument (#34038) 2024-10-30 11:54:13 +00:00
hyper_serde Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
jstraceable_derive Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
layout layout: Only include quirks-mode.css in actual quirks mode (#37814) 2025-07-01 18:48:35 +00:00
malloc_size_of Clean up unused dependencies / features and centralize more feature selection into root Cargo.toml (#37720) 2025-06-26 11:56:48 +00:00
media compositing: Combine webrender_traits and compositing_traits (#36372) 2025-04-06 17:34:18 +00:00
metrics Removing unused dependencies in crates. (#37096) 2025-05-23 12:58:00 +00:00
net Fix write_json_to_file perf regressions (#37687) 2025-06-25 08:45:20 +00:00
pixels pixels: Move Snapshot and related data structures to pixels (#37590) 2025-06-20 14:47:06 +00:00
profile Profile: Resident Segments was not correctly parsing /proc/self/smaps as the regexp did not work anymore. (#37549) 2025-06-19 09:19:31 +00:00
rand Migrate to the 2024 edition (#35755) 2025-03-13 10:28:11 +00:00
range Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
script canvas: Unify retrieving image data from the HTMLImageElement (#37809) 2025-07-02 08:13:30 +00:00
script_bindings Set the placeholder canvas element of offscreenCanvas to a weak reference in transferControlToOffscreen() (#37764) 2025-06-30 13:30:58 +00:00
servo Lazily initialize canvas paint thread in constellation (#37765) 2025-06-28 17:29:11 +00:00
servo_tracing [tracing] Add convenience macro for function tracing (#36573) 2025-04-22 19:58:20 +00:00
shared [WebDriver] Implement XPath Locator Strategy (#37783) 2025-06-30 17:20:52 +00:00
timers script: Allow reflows that do not produce display lists (#37186) 2025-06-12 19:25:04 +00:00
url script: complete resolve_module_specifier (#37552) 2025-06-21 06:17:27 +00:00
webdriver_server webdriver: Greatly improve execution speed for all tests using SetWindowSize (#37712) 2025-07-01 06:26:01 +00:00
webgl compositor: only UpdateImages that accepts SmallVec and add helpers for single image (#37730) 2025-06-26 14:57:15 +00:00
webgpu compositor: only UpdateImages that accepts SmallVec and add helpers for single image (#37730) 2025-06-26 14:57:15 +00:00
webxr Removing unused dependencies in crates. (#37096) 2025-05-23 12:58:00 +00:00