From dce3b59c522ef7f2f9540c5ce7bcf17571049fde Mon Sep 17 00:00:00 2001 From: EYHN Date: Tue, 5 Mar 2024 15:25:19 +0000 Subject: [PATCH] fix(core): fix falsy e2e (#6027) --- .../blocksuite-editor-container.tsx | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/packages/frontend/core/src/components/blocksuite/block-suite-editor/blocksuite-editor-container.tsx b/packages/frontend/core/src/components/blocksuite/block-suite-editor/blocksuite-editor-container.tsx index d4d9967fdf..2fc251fa3a 100644 --- a/packages/frontend/core/src/components/blocksuite/block-suite-editor/blocksuite-editor-container.tsx +++ b/packages/frontend/core/src/components/blocksuite/block-suite-editor/blocksuite-editor-container.tsx @@ -205,25 +205,27 @@ export const BlocksuiteEditorContainer = forwardRef< useEffect(() => { if (blockElement) { - requestIdleCallback(() => { - if (mode === 'page') { - blockElement.scrollIntoView({ - behavior: 'smooth', - block: 'center', - inline: 'center', + affineEditorContainerProxy.updateComplete + .then(() => { + if (mode === 'page') { + blockElement.scrollIntoView({ + behavior: 'smooth', + block: 'center', + inline: 'center', + }); + } + const selectManager = affineEditorContainerProxy.host?.selection; + if (!blockElement.path.length || !selectManager) { + return; + } + const newSelection = selectManager.create('block', { + path: blockElement.path, }); - } - const selectManager = affineEditorContainerProxy.host?.selection; - if (!blockElement.path.length || !selectManager) { - return; - } - const newSelection = selectManager.create('block', { - path: blockElement.path, - }); - selectManager.set([newSelection]); - }); + selectManager.set([newSelection]); + }) + .catch(console.error); } - }, [blockElement, affineEditorContainerProxy.host?.selection, mode]); + }, [blockElement, affineEditorContainerProxy, mode]); return (