servo/components/layout
Martin Robinson e5fbb3d487
fonts: Add FontIdentifier and LocalFontIdentifier (#31658)
Instead of using a simple `Atom` to identify a local font, use a data
structure. This allows us to carry more information necessary to
identify a local font (such as a path on MacOS). We need this for the
new version of WebRender, as fonts on MacOS now require a path.

This has a lot of benefits:
 1. We can avoid loading fonts without paths on MacOS, which should
    avoid a lot of problems with flakiness and ensure we always load the
    same font for a given identifier.
 2. This clarifies the difference between web fonts and local fonts,
    though there is more work to do here.
 3. This avoid a *lot* of font shenanigans, such as trying to work
    backwards from the name of the font to the path of the font we
    actually matched. In general, we can remove a lot of code trying to
    accomplish these shenanigans.
 4. Getting the font bytes always returns an `Arc` now avoiding an extra
    full font copy in the case of Canvas.
2024-03-14 11:31:00 +00:00
..
display_list layout: Propagate overflow values from <body> to root element (#31618) 2024-03-13 09:17:09 +00:00
block.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
Cargo.toml Move Stylo to its own repo (#31350) 2024-02-27 15:39:06 +00:00
construct.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
context.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
data.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
flex.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
floats.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
flow.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
flow_list.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
flow_ref.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
fragment.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
generated_content.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
incremental.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
inline.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
layout_debug.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
lib.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
linked_list.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
list_item.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
model.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
multicol.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
parallel.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
persistent_list.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
query.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
sequential.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
table.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
table_caption.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
table_cell.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
table_colgroup.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
table_row.rs clippy: Fix warnings in components/layout (#31612) 2024-03-11 10:24:36 +00:00
table_rowgroup.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
table_wrapper.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
text.rs fonts: Add FontIdentifier and LocalFontIdentifier (#31658) 2024-03-14 11:31:00 +00:00
traversal.rs Lint layout_2013 with clippy (#31221) 2024-01-30 11:46:35 +00:00
wrapper.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00