mirror of
https://github.com/idrawjs/idraw
synced 2026-05-24 10:08:34 +00:00
feat: add forceRender
This commit is contained in:
parent
f225d9aa58
commit
c45bf390c9
4 changed files with 28 additions and 1 deletions
|
|
@ -90,7 +90,8 @@ export class Viewer extends EventEmitter<BoardViewerEventMap> implements BoardVi
|
|||
this.#drawFrameStatus = 'COMPLETE';
|
||||
return;
|
||||
}
|
||||
if ((this.#drawFrameStatus = 'DRAWING')) {
|
||||
|
||||
if (this.#drawFrameStatus === 'DRAWING') {
|
||||
requestAnimationFrame(() => {
|
||||
this.#drawAnimationFrame();
|
||||
});
|
||||
|
|
|
|||
|
|
@ -179,6 +179,22 @@ export class Core<E extends CoreEventMap = CoreEventMap> {
|
|||
this.#board.getViewer().drawFrame();
|
||||
}
|
||||
|
||||
forceRender() {
|
||||
const renderer = this.#board.getRenderer();
|
||||
const calculator = renderer.getCalculator();
|
||||
const loader = renderer.getLoader();
|
||||
const data = this.getData();
|
||||
if (data) {
|
||||
const { viewScaleInfo, viewSizeInfo } = this.getViewInfo();
|
||||
calculator.resetVirtualFlatItemMap(data, {
|
||||
viewScaleInfo,
|
||||
viewSizeInfo
|
||||
});
|
||||
}
|
||||
loader.reset();
|
||||
this.refresh();
|
||||
}
|
||||
|
||||
setViewScale(opts: { scale: number; offsetX: number; offsetY: number }) {
|
||||
this.#board.updateViewScaleInfo(opts);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -419,6 +419,12 @@ export const MiddlewareSelector: Middleware<
|
|||
prevPoint = e.point;
|
||||
moveOriginalStartPoint = e.point;
|
||||
|
||||
sharer.setSharedStorage(keyActionType, null);
|
||||
sharer.setSharedStorage(keyResizeType, null);
|
||||
sharer.setSharedStorage(keyAreaStart, null);
|
||||
sharer.setSharedStorage(keyAreaEnd, null);
|
||||
sharer.setSharedStorage(keyHoverElement, null);
|
||||
|
||||
const groupQueue = sharer.getSharedStorage(keyGroupQueue);
|
||||
|
||||
if (groupQueue?.length > 0) {
|
||||
|
|
|
|||
|
|
@ -227,4 +227,8 @@ export class iDraw {
|
|||
getCore() {
|
||||
return this.#core;
|
||||
}
|
||||
|
||||
forceRender() {
|
||||
return this.#core.forceRender();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue