servo/components
Martin Robinson f949d2adc8
fonts: Remove the per-FontGroup cached fallback font (#35705)
Instead of keeping a per-FontGroup cache of the previously used fallback
font, cache this value in the caller of `FontGroup::find_by_codepoint`.
The problem with caching this value in the `FontGroup` is that it can
make one layout different from the next.

Still, it is important to cache the value somewhere so that, for
instance, Chinese character don't have to continuously walk through the
entire fallback list when laying out. The heuristic here is to try to
last used font first if the `Script`s match. At the very least this
should make one layout consistent with the next.

Fixes #35704.
Fixes #35697.
Fixes #35689.
Fixes #35679.

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2025-02-28 14:33:21 +00:00
..
allocator Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
background_hang_monitor Only compile platform samplers when cargo feature enabled (#35312) 2025-02-06 06:53:08 +00:00
bluetooth Include WebViewId into EmbedderMsg variants where possible (#35211) 2025-01-30 11:15:35 +00:00
canvas fonts: Remove the per-FontGroup cached fallback font (#35705) 2025-02-28 14:33:21 +00:00
compositing compositor Remove frame_tree_id member (#35702) 2025-02-27 14:06:57 +00:00
config compositing: Move image output and shutdown management out of the compositor (#35538) 2025-02-20 18:27:49 +00:00
constellation libservo: Clean up interfaces for alert()/confirm()/prompt() (#35579) 2025-02-27 02:49:08 +00:00
deny_public_fields Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
devtools libservo: Flesh out permissions API (#35396) 2025-02-10 15:50:33 +00:00
dom_struct script: Feature-gate all crown support. (#35055) 2025-01-18 21:36:15 +00:00
domobject_derive Upgrade rustc to 1.83 (#34793) 2025-01-01 09:38:28 +00:00
fonts fonts: Remove the per-FontGroup cached fallback font (#35705) 2025-02-28 14:33:21 +00:00
geometry servoshell: Allow overriding screen resolution with a command-line argument (#34038) 2024-10-30 11:54:13 +00:00
hyper_serde Elide lifetimes where possible after rustup (#34824) 2025-01-03 18:54:44 +00:00
jstraceable_derive Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
layout fonts: Remove the per-FontGroup cached fallback font (#35705) 2025-02-28 14:33:21 +00:00
layout_2020 fonts: Remove the per-FontGroup cached fallback font (#35705) 2025-02-28 14:33:21 +00:00
layout_thread script: add skeleton implementation of FontFace API (#35262) 2025-02-19 05:50:01 +00:00
layout_thread_2020 fonts: Remove the per-FontGroup cached fallback font (#35705) 2025-02-28 14:33:21 +00:00
malloc_size_of libservo: Convert intercept_web_resource_load into load_web_resource (#35564) 2025-02-21 14:36:42 +00:00
media libservo: Move GL acclerated media setup out of RenderingContext and simplify it (#35553) 2025-02-20 13:52:18 +00:00
metrics script_traits: Rename ConstellationControlMsg to ScriptThreadMessage (#35226) 2025-01-30 22:46:17 +00:00
net Don’t prompt user for credentials for non-Navigate request (#35664) 2025-02-26 03:52:00 +00:00
pixels pixels: Fix webp detection (#35474) 2025-02-19 11:09:16 +00:00
profile Improve scheduling of the memory profiler. (#35618) 2025-02-23 20:04:57 +00:00
rand crypto: Begin SubtleCrypto implementation (#33628) 2024-10-08 03:51:08 +00:00
range Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
script script: Avoid double borrow crash in DataTransferItem (#35699) 2025-02-27 19:28:35 +00:00
script_bindings script: Implement Blob::bytes() (#35151) 2025-02-27 19:25:27 +00:00
servo libservo: Stop double-buffering OffscreenRenderingContext (#35638) 2025-02-28 11:41:56 +00:00
shared libservo: Stop double-buffering OffscreenRenderingContext (#35638) 2025-02-28 11:41:56 +00:00
timers deps: Remove some unused Cargo.toml (#35466) 2025-02-14 15:33:14 +00:00
url Add rust-version to all Cargo.toml files (#33483) 2024-09-17 16:39:07 +00:00
webdriver_server libservo: Move WebDriver messages to the embedder crate (#35602) 2025-02-24 13:57:28 +00:00
webgpu chore: Update wgpu (#35639) 2025-02-24 20:27:36 +00:00
webxr script: Fix typo in ScriptThread::process_pending_input_events (#35627) 2025-02-24 15:58:05 +00:00