aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout_2020/fragment_tree/fragment.rs
diff options
context:
space:
mode:
authorMartin Robinson <mrobinson@igalia.com>2025-01-15 14:24:14 +0100
committerGitHub <noreply@github.com>2025-01-15 13:24:14 +0000
commite81951a973d39ed5cacb067318e05d0d6a078559 (patch)
treefac08a5c385f1bbea25feaca5be559317c02a3f2 /components/layout_2020/fragment_tree/fragment.rs
parent2cd5e1356c8383935608cc1c719141628d8e21c9 (diff)
downloadservo-e81951a973d39ed5cacb067318e05d0d6a078559.tar.gz
servo-e81951a973d39ed5cacb067318e05d0d6a078559.zip
layout: Remove the obsolete layout tracing functionality (#35001)
There were two kinds of layout tracing controlled by the same debugging option: - modern layout: Functionality that dumped a JSON serialization of the layout tree before and after layout. - legacy layout: A scope based tracing that reported the process of layout in a structured way. I don't think anyone working on layout is using either of these two features. For modern layout requiring data structure to implement `serde` serialization is incredibly inconvenient and also generates a lot of extra code. We also have a more modern tracing functionality based on perfetto that we have started to use for layout and IMO it's actually being used and more robust. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Diffstat (limited to 'components/layout_2020/fragment_tree/fragment.rs')
-rw-r--r--components/layout_2020/fragment_tree/fragment.rs17
1 files changed, 3 insertions, 14 deletions
diff --git a/components/layout_2020/fragment_tree/fragment.rs b/components/layout_2020/fragment_tree/fragment.rs
index 5c8b86d455b..fdc8f75bb9a 100644
--- a/components/layout_2020/fragment_tree/fragment.rs
+++ b/components/layout_2020/fragment_tree/fragment.rs
@@ -5,10 +5,9 @@
use std::sync::Arc;
use app_units::Au;
-use base::id::{BrowsingContextId, PipelineId};
+use base::id::PipelineId;
use base::print_tree::PrintTree;
use fonts::{FontMetrics, GlyphStore};
-use serde::Serialize;
use servo_arc::Arc as ServoArc;
use style::properties::ComputedValues;
use style::values::specified::text::TextDecorationLine;
@@ -23,7 +22,7 @@ use crate::cell::ArcRefCell;
use crate::geom::{LogicalSides, PhysicalRect};
use crate::style_ext::ComputedValuesExt;
-#[derive(Clone, Serialize)]
+#[derive(Clone)]
pub(crate) enum Fragment {
Box(ArcRefCell<BoxFragment>),
/// Floating content. A floated fragment is very similar to a normal
@@ -46,27 +45,23 @@ pub(crate) enum Fragment {
IFrame(ArcRefCell<IFrameFragment>),
}
-#[derive(Serialize)]
pub(crate) struct CollapsedBlockMargins {
pub collapsed_through: bool,
pub start: CollapsedMargin,
pub end: CollapsedMargin,
}
-#[derive(Clone, Copy, Debug, Serialize)]
+#[derive(Clone, Copy, Debug)]
pub(crate) struct CollapsedMargin {
max_positive: Au,
min_negative: Au,
}
-#[derive(Serialize)]
pub(crate) struct TextFragment {
pub base: BaseFragment,
- #[serde(skip_serializing)]
pub parent_style: ServoArc<ComputedValues>,
pub rect: PhysicalRect<Au>,
pub font_metrics: FontMetrics,
- #[serde(skip_serializing)]
pub font_key: FontInstanceKey,
pub glyphs: Vec<Arc<GlyphStore>>,
@@ -77,24 +72,18 @@ pub(crate) struct TextFragment {
pub justification_adjustment: Au,
}
-#[derive(Serialize)]
pub(crate) struct ImageFragment {
pub base: BaseFragment,
- #[serde(skip_serializing)]
pub style: ServoArc<ComputedValues>,
pub rect: PhysicalRect<Au>,
pub clip: PhysicalRect<Au>,
- #[serde(skip_serializing)]
pub image_key: Option<ImageKey>,
}
-#[derive(Serialize)]
pub(crate) struct IFrameFragment {
pub base: BaseFragment,
pub pipeline_id: PipelineId,
- pub browsing_context_id: BrowsingContextId,
pub rect: PhysicalRect<Au>,
- #[serde(skip_serializing)]
pub style: ServoArc<ComputedValues>,
}