diff --git a/apps/client/src/widgets/type_widgets/Render.tsx b/apps/client/src/widgets/type_widgets/Render.tsx index 5959f1719..c76113e6d 100644 --- a/apps/client/src/widgets/type_widgets/Render.tsx +++ b/apps/client/src/widgets/type_widgets/Render.tsx @@ -6,15 +6,22 @@ import Alert from "../react/Alert"; import "./Render.css"; import { t } from "../../services/i18n"; import RawHtml from "../react/RawHtml"; +import { useTriliumEvent } from "../react/hooks"; -export default function Render({ note }: TypeWidgetProps) { +export default function Render({ note, noteContext }: TypeWidgetProps) { const contentRef = useRef(null); const [ renderNotesFound, setRenderNotesFound ] = useState(false); - useEffect(() => { + function refresh() { if (!contentRef) return; render.render(note, refToJQuerySelector(contentRef)).then(setRenderNotesFound); - }, [ note ]); + } + + useEffect(refresh, [ note ]); + useTriliumEvent("renderActiveNote", () => { + if (noteContext?.isActive()) return; + refresh(); + }); return (
diff --git a/apps/client/src/widgets/type_widgets_old/render.ts b/apps/client/src/widgets/type_widgets_old/render.ts index 9516aeee4..12c4053b6 100644 --- a/apps/client/src/widgets/type_widgets_old/render.ts +++ b/apps/client/src/widgets/type_widgets_old/render.ts @@ -32,12 +32,6 @@ export default class RenderTypeWidget extends TypeWidget { this.$noteDetailRenderContent.empty(); } - renderActiveNoteEvent() { - if (this.noteContext?.isActive()) { - this.refresh(); - } - } - async executeWithContentElementEvent({ resolve, ntxId }: EventData<"executeWithContentElement">) { if (!this.isNoteContext(ntxId)) { return;