Skip to content

Commit 6bd3e9d

Browse files
committed
fix
1 parent ea5dd22 commit 6bd3e9d

File tree

3 files changed

+83
-77
lines changed

3 files changed

+83
-77
lines changed

apps/www/src/registry/default/plate-ui/equation-popover.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import {
1313
useEditorRef,
1414
useElement,
1515
useReadOnly,
16-
useSelected,
1716
} from '@udecode/plate/react';
1817
import { useEquationInput } from '@udecode/plate-math/react';
1918
import { BlockSelectionPlugin } from '@udecode/plate-selection/react';
@@ -40,13 +39,12 @@ const EquationPopoverContent = ({
4039
const editor = useEditorRef();
4140
const readOnly = useReadOnly();
4241
const element = useElement<TEquationElement>();
43-
const selected = useSelected();
4442

4543
useEffect(() => {
46-
if (isInline && selected) {
44+
if (isInline && open) {
4745
setOpen(true);
4846
}
49-
}, [selected, isInline, setOpen]);
47+
}, [isInline, open, setOpen]);
5048

5149
if (readOnly) return null;
5250

apps/www/src/registry/default/plate-ui/inline-equation-element.tsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@ import { useRef, useState } from 'react';
55
import type { TEquationElement } from '@udecode/plate-math';
66

77
import { cn, withRef } from '@udecode/cn';
8-
import { useElement, useSelected } from '@udecode/plate/react';
8+
import {
9+
useEditorSelector,
10+
useElement,
11+
useSelected,
12+
} from '@udecode/plate/react';
913
import { useEquationElement } from '@udecode/plate-math/react';
1014
import { RadicalIcon } from 'lucide-react';
1115

@@ -18,7 +22,11 @@ export const InlineEquationElement = withRef<typeof PlateElement>(
1822
const element = useElement<TEquationElement>();
1923
const katexRef = useRef<HTMLDivElement | null>(null);
2024
const selected = useSelected();
21-
const [open, setOpen] = useState(selected);
25+
const isCollapsed = useEditorSelector(
26+
(editor) => editor.api.isCollapsed(),
27+
[]
28+
);
29+
const [open, setOpen] = useState(selected && isCollapsed);
2230

2331
useEquationElement({
2432
element,

0 commit comments

Comments
 (0)