bugfix for cell validation/invalidation

development
mcyph 2021-04-11 14:33:07 +10:00
parent 7ae4fda979
commit dd12715489
1 changed files with 5 additions and 0 deletions

View File

@ -561,6 +561,8 @@ class mxGraphView extends mxEventSource {
this.invalidate(model.getEdgeAt(cell, i), recurse, includeEdges); this.invalidate(model.getEdgeAt(cell, i), recurse, includeEdges);
} }
} }
cell.invalidating = false;
} }
} }
@ -845,6 +847,7 @@ class mxGraphView extends mxEventSource {
// validateCell(cell: mxCell, visible?: boolean): void; // validateCell(cell: mxCell, visible?: boolean): void;
validateCell(cell: mxCell | null=null, validateCell(cell: mxCell | null=null,
visible: boolean = true): mxCell | null { visible: boolean = true): mxCell | null {
if (cell != null) { if (cell != null) {
visible = visible && (<mxGraph>this.graph).isCellVisible(cell); visible = visible && (<mxGraph>this.graph).isCellVisible(cell);
const state = this.getState(cell, visible); const state = this.getState(cell, visible);
@ -876,6 +879,7 @@ class mxGraphView extends mxEventSource {
*/ */
// validateCellState(cell: mxCell, recurse?: boolean): void; // validateCellState(cell: mxCell, recurse?: boolean): void;
validateCellState(cell: mxCell, recurse: boolean = true): mxCellState | null { validateCellState(cell: mxCell, recurse: boolean = true): mxCellState | null {
let state: mxCellState | null = null; let state: mxCellState | null = null;
if (cell != null) { if (cell != null) {
@ -939,6 +943,7 @@ class mxGraphView extends mxEventSource {
*/ */
// updateCellState(state: mxCellState): void; // updateCellState(state: mxCellState): void;
updateCellState(state: mxCellState) { updateCellState(state: mxCellState) {
const absoluteOffset = <mxPoint>state.absoluteOffset; const absoluteOffset = <mxPoint>state.absoluteOffset;
const origin = <mxPoint>state.origin; const origin = <mxPoint>state.origin;