servo/components/script
Martin Robinson b7d089930e
layout: Remove LayoutRPC and query layout via the Layout trait (#31937)
Instead of the tricky `LayoutRPC` interface, query layout using the
`Layout` trait. This means that now queries will requires calling layout
and then running the query. During layout an enum is used to indicate
what kind of layout is necessary.

This change also removes the mutex-locked `rw_data` from both layout
threads. It's no longer necessary since layout runs synchronously. The
one downside here is that for resolved style queries, we now have to
create two StyleContexts. One for layout and one for the query itself.
The creation of this context should not be very expensive though.

`LayoutRPC` used to be necessary because layout used to run
asynchronously from script, but that no longer happens. With this
change, it becomes possible to safely pass nodes to layout from script
-- a cleanup that can happen in a followup change.
2024-03-29 16:25:47 +00:00
..
docs Update branch name to main (#30877) 2023-12-16 09:32:20 +00:00
dom layout: Remove LayoutRPC and query layout via the Layout trait (#31937) 2024-03-29 16:25:47 +00:00
layout_dom clippy: Fix needless_borrow warnings in components/script (#31928) 2024-03-29 08:58:22 +00:00
task_source clippy: Fix redundant field names warnings (#31793) 2024-03-20 23:05:29 +00:00
animation_timeline.rs script: Start replacing time with std::time and chrono (#30639) 2024-01-16 12:23:18 +00:00
animations.rs clippy: Fix mem_replace_with_default warnings (#31921) 2024-03-28 13:10:37 +00:00
body.rs clippy: remove unneeded return statements (#31923) 2024-03-28 16:17:47 +00:00
build.rs Update python detection in codegen (#31873) 2024-03-26 10:14:06 +00:00
canvas_state.rs clippy: Fix needless_borrow warnings in components/script (#31928) 2024-03-29 08:58:22 +00:00
Cargo.toml Update phf_codegen and phf_shared to 0.11 (#31537) 2024-03-08 07:25:12 +00:00
clipboard_provider.rs
devtools.rs clippy: fixed some warnings in components/script (#31888) 2024-03-26 21:25:42 +00:00
document_loader.rs clippy: fixed some warnings in components/script (#31888) 2024-03-26 21:25:42 +00:00
euclidext.rs Update euclid 2020-04-07 08:51:08 -07:00
fetch.rs clippy: Fix dereferenced warnings (#31770) 2024-03-20 08:07:22 +00:00
image_listener.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
init.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
layout_image.rs clippy: Fix some warnings in the script crate (#31719) 2024-03-18 10:05:18 +00:00
lib.rs crown: Do not warn about crown for rustdoc or clippy (#31805) 2024-03-21 15:33:06 +00:00
mem.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
microtask.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
network_listener.rs clippy: Fix redundant field names warnings (#31793) 2024-03-20 23:05:29 +00:00
realms.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
script_module.rs clippy: Fix len_zero warnings (#31935) 2024-03-29 10:05:20 +00:00
script_runtime.rs clippy: Fix all errors in components/script (#31911) 2024-03-28 09:03:18 +00:00
script_thread.rs clippy: Fix needless_lifetimes warnings (#31933) 2024-03-29 11:59:07 +00:00
serviceworker_manager.rs clippy: Fix redundant field names warnings (#31793) 2024-03-20 23:05:29 +00:00
stylesheet_loader.rs fonts: Add support for WOFF2 and properly load web fonts from @imports (#31879) 2024-03-26 20:31:52 +00:00
stylesheet_set.rs
task.rs ensure clean shutdown of all threads running JS 2020-06-30 13:22:38 +08:00
task_manager.rs clippy: Fix some clippy problems in components/script (#31778) 2024-03-20 18:41:07 +00:00
task_queue.rs clippy: Fix some clippy problems in components/script (#31778) 2024-03-20 18:41:07 +00:00
test.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
textinput.rs clippy: Fix collapsible_else_if warnings (#31853) 2024-03-26 09:15:04 +00:00
timers.rs clippy: Fix some warnings in components/script/timers.rs (#31878) 2024-03-27 10:15:15 +00:00
unpremultiplytable.rs
webdriver_handlers.rs Fix some clippy warnings in components/script/webdriver_handlers.rs (#31784) 2024-03-22 11:08:07 +00:00
window_named_properties.rs clippy: Fix several warnings (#31710) 2024-03-18 08:33:43 +00:00