Improve pre warm caching

This commit is contained in:
jpirnay
2026-04-28 15:12:11 +02:00
parent aa9fae16d9
commit 4c8517cf67
5 changed files with 357 additions and 51 deletions
+6
View File
@@ -50,6 +50,12 @@ void GfxRenderer::ensureSdCardFontReady(int fontId, const char* utf8Text) const
}
}
void GfxRenderer::clearSdCardFontAccumulation() const {
for (auto& [id, font] : sdCardFonts_) {
font->clearAccumulation();
}
}
void GfxRenderer::begin() {
frameBuffer = display.getFrameBuffer();
if (!frameBuffer) {
+4
View File
@@ -115,6 +115,10 @@ class GfxRenderer {
// (which holds a const GfxRenderer&) before measuring word widths. Safe to call on
// non-SD fonts (no-op).
void ensureSdCardFontReady(int fontId, const char* utf8Text) const;
// Clear the cumulative SD card font metadata cache built up by repeated
// ensureSdCardFontReady() calls. Call between sections to bound the cumulative
// codepoint set growth across pagination. Safe to call when no SD font is active.
void clearSdCardFontAccumulation() const;
// Orientation control (affects logical width/height and coordinate transforms)
void setOrientation(const Orientation o) { orientation.store(static_cast<int>(o), std::memory_order_relaxed); }