Merge remote-tracking branch 'origin/master' into claude/issue-60
# Conflicts: # project.cpp
This commit is contained in:
commit
bdbe3bf568
5 changed files with 204 additions and 6 deletions
29
project.cpp
29
project.cpp
|
|
@ -442,6 +442,35 @@ extern "C" Configuration CrafterBuildProject(std::span<const std::string_view> a
|
|||
fc.GetInterfacesAndImplementations(ifaces, flushImpls);
|
||||
cfg.tests.push_back(std::move(flushTest));
|
||||
|
||||
// Issue #57: Font::GetLineWidth memoises per-codepoint advances in
|
||||
// font units (Font::AdvanceUnits) and rescales per call, instead of
|
||||
// calling stbtt_GetCodepointHMetrics for every glyph on every caret
|
||||
// query. Pure CPU — Font only touches stb_truetype — so this drives
|
||||
// the public API directly with no Vulkan device. The font file is
|
||||
// copied next to the binary; the test also probes the project root.
|
||||
Test advTest;
|
||||
Configuration& vc = advTest.config;
|
||||
vc.path = cfg.path;
|
||||
vc.name = "FontAdvanceCache";
|
||||
vc.outputName = "FontAdvanceCache";
|
||||
vc.type = ConfigurationType::Executable;
|
||||
vc.target = cfg.target;
|
||||
vc.march = cfg.march;
|
||||
vc.mtune = cfg.mtune;
|
||||
vc.debug = cfg.debug;
|
||||
vc.sysroot = cfg.sysroot;
|
||||
vc.dependencies = cfg.dependencies;
|
||||
vc.externalDependencies = cfg.externalDependencies;
|
||||
vc.compileFlags = cfg.compileFlags;
|
||||
vc.linkFlags = cfg.linkFlags;
|
||||
vc.defines = cfg.defines;
|
||||
vc.cFiles = cfg.cFiles;
|
||||
vc.files = { fs::path("tests/FontAdvanceCache/font.ttf") };
|
||||
std::vector<fs::path> advImpls(impls.begin(), impls.end());
|
||||
advImpls.emplace_back("tests/FontAdvanceCache/main");
|
||||
vc.GetInterfacesAndImplementations(ifaces, advImpls);
|
||||
cfg.tests.push_back(std::move(advTest));
|
||||
|
||||
// Issue #50: uiResolveScreenPixel now gates its per-pixel clip-rect
|
||||
// compares on the reserved kUIFlagClip bit, which FillHeader sets only
|
||||
// when the clip rect is narrower than the surface. The decision lives
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue