fix(ckeditor5): scroll to selection after undo/redo to keep cursor in view

This commit is contained in:
SiriusXT
2025-06-07 16:51:10 +08:00
parent e70b0d47c9
commit 9dd7f75ec0
2 changed files with 21 additions and 1 deletions

View File

@@ -0,0 +1,18 @@
import { Plugin } from 'ckeditor5';
export default class ScrollOnUndoRedoPlugin extends Plugin {
init() {
const editor = this.editor;
const scrollToSelection = () => {
// Ensure scroll happens in sync with DOM updates
requestAnimationFrame(() => {
editor.editing.view.scrollToTheSelection();
});
};
// Scroll to selection after undo/redo to keep cursor in view
editor.commands.get('undo')?.on('execute', scrollToSelection);
editor.commands.get('redo')?.on('execute', scrollToSelection);
}
}