servo/components/script
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
..
docs doc: fix broken link to UnrootedMustRoot plugin (#36198) 2025-03-28 10:23:41 +00:00
dom canvas: Unify retrieving image data from the HTMLImageElement (#37809) 2025-07-02 08:13:30 +00:00
layout_dom layout: Start using the new extensible RestyleDamage type from Stylo (#37592) 2025-06-26 14:10:48 +00:00
resources Embed user agent stylesheets and media control resouces in libservo (#36803) 2025-05-04 18:48:09 +00:00
svgpath Add Path2D (#35783) 2025-03-26 12:12:44 +00:00
xpath fix(xpath): pass in correct context node for // and / in predicates (#37434) 2025-06-17 18:45:00 +00:00
animation_timeline.rs script: Limit public exports. (#34915) 2025-01-10 08:19:19 +00:00
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 Set the placeholder canvas element of offscreenCanvas to a weak reference in transferControlToOffscreen() (#37764) 2025-06-30 13:30:58 +00:00
canvas_state.rs canvas: Unify retrieving image data from the HTMLImageElement (#37809) 2025-07-02 08:13:30 +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 Move ScriptToConstellationMsg to constellation_traits (#36364) 2025-04-05 22:13:29 +00:00
conversions.rs suppress build warnings when disabling webgpu and webxr (#35379) 2025-02-08 08:16:21 +00:00
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 Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
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 Make generated bindings generic over DOM types (#35169) 2025-01-25 05:08:49 +00:00
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 compositor: Wait for both Script and the Constellation when shutting down Pipelines (#37505) 2025-06-17 09:56:31 +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 Propagate CanGc arguments through callers in constructors (#35541) 2025-02-20 16:17:45 +00:00
realms.rs Move generated bindings to script_bindings (#36323) 2025-04-04 06:45:08 +00:00
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 [WebDriver] Implement XPath Locator Strategy (#37783) 2025-06-30 17:20:52 +00:00
security_manager.rs Move CSP code into one entrypoint (#37604) 2025-06-24 08:50:30 +00:00
serviceworker_manager.rs Move ScriptToConstellationMsg to constellation_traits (#36364) 2025-04-05 22:13:29 +00:00
stylesheet_loader.rs Move CSP code into one entrypoint (#37604) 2025-06-24 08:50:30 +00:00
stylesheet_set.rs script: Limit public exports. (#34915) 2025-01-10 08:19:19 +00:00
task.rs Migrate to the 2024 edition (#35755) 2025-03-13 10:28:11 +00:00
task_manager.rs Initial IndexedDB Support (#33044) 2025-06-19 05:19:07 +00:00
task_queue.rs Use strum to iterate through enum variants and get their names (#35933) 2025-03-13 12:00:31 +00:00
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 Update rustfmt to the 2024 style edition (#35764) 2025-03-03 11:26:53 +00:00
webdriver_handlers.rs [WebDriver] Implement XPath Locator Strategy (#37783) 2025-06-30 17:20:52 +00:00
window_named_properties.rs Migrate to the 2024 edition (#35755) 2025-03-13 10:28:11 +00:00