fix(move_block): keep moved blocks in view

This commit is contained in:
SiriusXT 2025-06-08 16:49:02 +08:00
parent 48613da57f
commit be447b4139

View File

@ -70,12 +70,21 @@ abstract class MoveBlockUpDownCommand extends Command {
writer.createPositionAt( writer.createPositionAt(
selectedBlocks[selectedBlocks.length - 1], offsets[1])); selectedBlocks[selectedBlocks.length - 1], offsets[1]));
writer.setSelection(range); writer.setSelection(range);
this.scrollToSelection();
}); });
} }
getSelectedBlocks(selection: DocumentSelection) { getSelectedBlocks(selection: DocumentSelection) {
return [...selection.getSelectedBlocks()]; return [...selection.getSelectedBlocks()];
} }
scrollToSelection() {
// Ensure scroll happens in sync with DOM updates
requestAnimationFrame(() => {
this.editor.editing.view.scrollToTheSelection();
});
};
} }
class MoveBlockUpCommand extends MoveBlockUpDownCommand { class MoveBlockUpCommand extends MoveBlockUpDownCommand {