aboutsummaryrefslogtreecommitdiffstats
path: root/components/shared/msg
diff options
context:
space:
mode:
authorMartin Robinson <mrobinson@igalia.com>2024-03-29 17:25:47 +0100
committerGitHub <noreply@github.com>2024-03-29 16:25:47 +0000
commitb7d089930ea075a580a20bede881c677a0ba0fb0 (patch)
treec85d7bf011d80d5f3c47a2a5b5df2948134ec1b8 /components/shared/msg
parent07391e346b0ff3e89485ddc7e8f3c448ef1de4f4 (diff)
downloadservo-b7d089930ea075a580a20bede881c677a0ba0fb0.tar.gz
servo-b7d089930ea075a580a20bede881c677a0ba0fb0.zip
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.
Diffstat (limited to 'components/shared/msg')
-rw-r--r--components/shared/msg/constellation_msg.rs1
1 files changed, 0 insertions, 1 deletions
diff --git a/components/shared/msg/constellation_msg.rs b/components/shared/msg/constellation_msg.rs
index 44f3eb6b12e..24fda786c9d 100644
--- a/components/shared/msg/constellation_msg.rs
+++ b/components/shared/msg/constellation_msg.rs
@@ -462,7 +462,6 @@ pub enum LayoutHangAnnotation {
RemoveStylesheet,
SetQuirksMode,
Reflow,
- GetRPC,
CollectReports,
ExitNow,
GetCurrentEpoch,