Kaynağa Gözat

Merge pull request #5949 from weseek/fix/sync-editor-scrolltop-by-preview-scrolling

fix: Editor scroll sync by Preview scrolling does not work
Yuki Takei 3 yıl önce
ebeveyn
işleme
aadb71f45b

+ 7 - 3
packages/app/src/components/PageEditor/Preview.tsx

@@ -1,5 +1,5 @@
 import React, {
 import React, {
-  UIEventHandler, useCallback, useEffect, useMemo, useState,
+  useCallback, useEffect, useMemo, useState, SyntheticEvent,
 } from 'react';
 } from 'react';
 
 
 
 
@@ -18,7 +18,7 @@ type Props = {
   inputRef?: React.RefObject<HTMLDivElement>,
   inputRef?: React.RefObject<HTMLDivElement>,
   isMathJaxEnabled?: boolean,
   isMathJaxEnabled?: boolean,
   renderMathJaxOnInit?: boolean,
   renderMathJaxOnInit?: boolean,
-  onScroll?: UIEventHandler<HTMLDivElement>,
+  onScroll?: (scrollTop: number) => void,
 }
 }
 
 
 
 
@@ -89,7 +89,11 @@ const Preview = (props: Props): JSX.Element => {
     <div
     <div
       className="page-editor-preview-body"
       className="page-editor-preview-body"
       ref={inputRef}
       ref={inputRef}
-      onScroll={onScroll}
+      onScroll={(event: SyntheticEvent<HTMLDivElement>) => {
+        if (props.onScroll != null) {
+          props.onScroll(event.currentTarget.scrollTop);
+        }
+      }}
     >
     >
       <RevisionBody
       <RevisionBody
         {...props}
         {...props}