This commit is contained in:
Anthony Kim
2026-07-09 11:39:38 -07:00
parent 46556eb6cf
commit 9559005bbc
2 changed files with 8 additions and 3 deletions
+4
View File
@@ -214,6 +214,10 @@ export class GlyphRenderer extends Disposable {
this.handleResize();
}
/**
* Call when a frame is being drawn. Returns whether the full model must be rebuilt before
* rendering this frame because the atlas page layout changed since this renderer last drew.
*/
public beginFrame(): boolean {
if (!this._atlas) {
return true;
+4 -3
View File
@@ -68,9 +68,10 @@ export interface ITextureAtlas extends IDisposable {
warmUp(): void;
/**
* Incremented whenever atlas page indexes or coordinates cached by renderers may be stale.
* Each renderer tracks its own last-seen value so shared atlas layout changes are observed
* independently by every terminal.
* Incremented whenever cached glyph texture page mappings may be stale, such as after atlas page
* merges or overflow page creation. Renderers compare this against their own last-seen value and
* rebuild their model when it changes; a shared atlas can have many renderers, so this must not
* be a consume-once flag.
*/
readonly pageLayoutVersion: number;