refactor(editor): invalidate support in turbo renderer (#10368)

refactor(editor): invalidate support in turbo renderer

- Added `invalidate()` method to clear cache and canvas
- Simplified debug pane controls to single invalidate button
- Replaced layout update with refresh debounce on block updates
- Improved cache handling and bitmap drawing flow

refactor: refresh after invalidate
This commit is contained in:
doodlewind
2025-02-23 03:23:20 +00:00
parent f8cabe8bb1
commit 22f9db63bc
4 changed files with 32 additions and 31 deletions

View File

@@ -1,4 +1,7 @@
import { ViewportTurboRendererExtension } from '@blocksuite/affine-shared/viewport-renderer';
import {
ViewportTurboRendererExtension,
ViewportTurboRendererIdentifier,
} from '@blocksuite/affine-shared/viewport-renderer';
import { addSampleNotes } from './doc-generator.js';
import { setupEditor } from './setup.js';
@@ -7,6 +10,9 @@ async function init() {
setupEditor('edgeless', [ViewportTurboRendererExtension]);
addSampleNotes(doc, 100);
doc.load();
const renderer = editor.std.get(ViewportTurboRendererIdentifier);
window.renderer = renderer;
}
init();

View File

@@ -9,6 +9,7 @@ import { effects } from '../../effects.js';
blocksEffects();
effects();
import type { ViewportTurboRendererExtension } from '@blocksuite/affine-shared/viewport-renderer';
import {
CommunityCanvasTextFonts,
type DocMode,
@@ -136,5 +137,6 @@ declare global {
doc: Store;
job: Transformer;
collection: TestWorkspace;
renderer: ViewportTurboRendererExtension;
}
}