reiji-h 1 год назад
Родитель
Сommit
545bf32818

+ 1 - 3
apps/app/src/components/PageEditor/PageEditor.tsx

@@ -300,9 +300,7 @@ export const PageEditor = React.memo((props: Props): JSX.Element => {
   // set handler to set caret line
   // set handler to set caret line
   useEffect(() => {
   useEffect(() => {
     const handler = (lineNumber?: number) => {
     const handler = (lineNumber?: number) => {
-      codeMirrorEditor?.setCaretLine(lineNumber);
-
-      // TODO: scroll to the caret line
+      codeMirrorEditor?.setCaretLineInit(lineNumber);
     };
     };
     globalEmitter.on('setCaretLine', handler);
     globalEmitter.on('setCaretLine', handler);
 
 

+ 4 - 0
packages/editor/src/services/codemirror-editor/use-codemirror-editor/use-codemirror-editor.ts

@@ -17,6 +17,7 @@ import { useInsertPrefix, type InsertPrefix } from './utils/insert-prefix';
 import { useInsertText, type InsertText } from './utils/insert-text';
 import { useInsertText, type InsertText } from './utils/insert-text';
 import { useReplaceText, type ReplaceText } from './utils/replace-text';
 import { useReplaceText, type ReplaceText } from './utils/replace-text';
 import { useSetCaretLine, type SetCaretLine } from './utils/set-caret-line';
 import { useSetCaretLine, type SetCaretLine } from './utils/set-caret-line';
+import { useSetCaretLineInit, type SetCaretLineInit } from './utils/set-caret-line-init';
 
 
 
 
 type UseCodeMirrorEditorUtils = {
 type UseCodeMirrorEditorUtils = {
@@ -25,6 +26,7 @@ type UseCodeMirrorEditorUtils = {
   getDoc: GetDoc,
   getDoc: GetDoc,
   focus: Focus,
   focus: Focus,
   setCaretLine: SetCaretLine,
   setCaretLine: SetCaretLine,
+  setCaretLineInit: SetCaretLineInit,
   insertText: InsertText,
   insertText: InsertText,
   replaceText: ReplaceText,
   replaceText: ReplaceText,
   insertMarkdownElements: InsertMarkdowElements,
   insertMarkdownElements: InsertMarkdowElements,
@@ -70,6 +72,7 @@ export const useCodeMirrorEditor = (props?: UseCodeMirror): UseCodeMirrorEditor
   const getDoc = useGetDoc(view);
   const getDoc = useGetDoc(view);
   const focus = useFocus(view);
   const focus = useFocus(view);
   const setCaretLine = useSetCaretLine(view);
   const setCaretLine = useSetCaretLine(view);
+  const setCaretLineInit = useSetCaretLineInit(view);
   const insertText = useInsertText(view);
   const insertText = useInsertText(view);
   const replaceText = useReplaceText(view);
   const replaceText = useReplaceText(view);
   const insertMarkdownElements = useInsertMarkdownElements(view);
   const insertMarkdownElements = useInsertMarkdownElements(view);
@@ -84,6 +87,7 @@ export const useCodeMirrorEditor = (props?: UseCodeMirror): UseCodeMirrorEditor
     getDoc,
     getDoc,
     focus,
     focus,
     setCaretLine,
     setCaretLine,
+    setCaretLineInit,
     insertText,
     insertText,
     replaceText,
     replaceText,
     insertMarkdownElements,
     insertMarkdownElements,