openpencil/tests/engine/tauri
Danila Poyarkov d4f34abdb2
fix(fonts): explain PingFang substitution and draw its CJK text (#781)
* fix(text): request script fallbacks for substituted text

When a text's font could not be loaded and the default family
substituted for it, font readiness returned before checking glyph
coverage. That check is what requests CJK and Arabic fallbacks, so text
such as Chinese in an unavailable PingFang SC drew missing glyphs unless
another layer happened to request the fallback first.

Substituted text now observes glyph coverage too. It waits while a
fallback loads and stays visible when none is available.

* fix(fonts): explain installed fonts with unsupported outlines

On macOS 15 and later PingFang ships only `hvgl` outlines, which neither
font-kit nor CanvasKit can read. The desktop loader spent over a second
parsing the collection per style, and the font banner showed PingFang as
substituted with no explanation.

The loader now reads the family's table directories first and returns a
structured unsupported-format error. The font manager records it per
face, document font status exposes it as `reason`, and the banner shows
it inline with the full explanation in a tooltip. The resolver reports
progress after each failed candidate so the banner updates before web
font lookups finish.

* fix(fonts): keep the unsupported-format reason after failed retries

A later host attempt that returns no font no longer clears the reason; only a loaded face does.
2026-09-26 11:14:30 +04:00
..
acp-transport.test.ts fix(tauri): use native dirname for save paths 2026-05-19 12:03:21 +03:00
automation-files.test.ts fix(tauri): use native dirname for save paths 2026-05-19 12:03:21 +03:00
command.test.ts fix(acp): launch Windows command shims (#425) 2026-07-26 08:47:20 +03:00
document-io.test.ts ci: shard unit tests by owner and cut the quick suite from 100 s to 13 s (#715) 2026-09-17 10:18:16 +03:00
fig-export.test.ts ci: shard unit tests by owner and cut the quick suite from 100 s to 13 s (#715) 2026-09-17 10:18:16 +03:00
file-actions.test.ts refactor(app): polish files workspace and New tabs 2026-08-20 17:20:33 +03:00
font-cache.test.ts fix(fig): stabilize engine test suite 2026-05-21 14:54:17 +03:00
fonts.test.ts fix(fonts): explain PingFang substitution and draw its CJK text (#781) 2026-09-26 11:14:30 +04:00
harness-process.test.ts refactor(ai): ship Harness as optional companion (#561) 2026-08-19 20:04:35 +03:00
http.test.ts fix(tauri): preserve HTTP contracts when bypassing IPC 2026-09-13 15:48:40 +03:00
mcp-spawn.test.ts feat(settings): configure tool access, MCP failures, and step limits 2026-09-17 23:55:58 +03:00
mock-cleanup.test.ts fix: restore engine test coverage and isolation (#653) 2026-09-06 23:29:45 +03:00
processes.test.ts feat(updater): show download progress while installing an update 2026-09-25 23:15:14 +04:00