servo/components/canvas
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
..
webgl_mode clippy: fix some warnings in components/canvas (#31563) 2024-03-08 07:24:01 +00:00
canvas_data.rs fonts: Add FontIdentifier and LocalFontIdentifier (#31658) 2024-03-14 11:31:00 +00:00
canvas_paint_thread.rs clippy: fix some warnings in components/canvas (#31563) 2024-03-08 07:24:01 +00:00
Cargo.toml Move Stylo to its own repo (#31350) 2024-02-27 15:39:06 +00:00
lib.rs remove extern crate (#30311) 2023-09-08 12:11:31 +00:00
raqote_backend.rs clippy: Fix assorted warnings in components/ (#31628) 2024-03-13 08:31:58 +00:00
webgl_limits.rs Strict import formatting (grouping and granularity) (#30325) 2023-09-11 19:16:54 +00:00
webgl_thread.rs clippy: Fix assorted warnings in components/ (#31628) 2024-03-13 08:31:58 +00:00