diff --git a/packages/core/src/patch_manager/index.ts b/packages/core/src/patch_manager/index.ts index 017d503c8..6206c2cd9 100644 --- a/packages/core/src/patch_manager/index.ts +++ b/packages/core/src/patch_manager/index.ts @@ -126,7 +126,10 @@ export default class PatchManager { const { external = false } = opts; const addToHistory = !external; - this.finalizeCurrentPatch(); + if (addToHistory) { + this.finalizeCurrentPatch(); + } + this.applyChanges(patch.changes, { external, direction: 'forward' }); if (addToHistory) { @@ -153,6 +156,8 @@ export default class PatchManager { redo(): PatchProps | undefined { if (!this.isEnabled) return; + this.finalizeCurrentPatch(); + const patch = this.redoStack.pop(); if (!patch) return;