spec: support setting a fallback font#11517
Conversation
Co-Authored-By: Zach Lloyd <zachlloyd@users.noreply.github.com> Co-Authored-By: Oz <oz-agent@warp.dev>
|
@oz-for-oss[bot] I'm starting a first review of this spec-only pull request. You can view the conversation on Warp. I completed the review and no human review was requested for this pull request. Comment Powered by Oz |
There was a problem hiding this comment.
Overview
This PR adds product and technical specs for an ordered terminal fallback font list, covering settings-file behavior, Appearance settings UI behavior, platform font loading, rendering paths, cache invalidation, and validation expectations.
Concerns
- The tech spec does not address the existing
glyphs_by_charcache contract where primary-only misses can be reused by fallback-inclusive lookups, which could prevent configured fallbacks from being tried depending on call order.
Verdict
Found: 0 critical, 1 important, 0 suggestions
Request changes
Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).
Powered by Oz
| - call `select_font(fallback_family, properties)` | ||
| - call `glyph_for_char(fallback_font, ch, false)` | ||
| - return the first matching glyph/font pair | ||
| Preserve the current behavior for `include_fallback_fonts: false` so primary-font validation and direct glyph checks are not affected. |
There was a problem hiding this comment.
glyphs_by_char is keyed only by (FontId, char), so a prior include_fallback_fonts: false miss can cache None and prevent a later fallback-inclusive lookup from trying configured fallbacks; require a cache-key change, negative-miss separation, or an explicit invalidation/test for this call order.
Summary
Validation
Related issue: #789