fix(note_list): note list shown when switching types (e.g. for mindmap)

This commit is contained in:
Elian Doran 2025-12-03 18:40:24 +02:00
parent 276241cdff
commit 49243148a2
No known key found for this signature in database

View File

@ -1,5 +1,5 @@
import { allViewTypes, ViewModeMedia, ViewModeProps, ViewTypeOptions } from "./interface"; import { allViewTypes, ViewModeMedia, ViewModeProps, ViewTypeOptions } from "./interface";
import { useNoteContext, useNoteLabel, useNoteLabelBoolean, useTriliumEvent } from "../react/hooks"; import { useNoteContext, useNoteLabel, useNoteLabelBoolean, useNoteProperty, useTriliumEvent } from "../react/hooks";
import FNote from "../../entities/fnote"; import FNote from "../../entities/fnote";
import "./NoteList.css"; import "./NoteList.css";
import { useEffect, useRef, useState } from "preact/hooks"; import { useEffect, useRef, useState } from "preact/hooks";
@ -53,10 +53,11 @@ const ViewComponents: Record<ViewTypeOptions, { normal: LazyLoadedComponent, pri
export default function NoteList(props: Pick<NoteListProps, "displayOnlyCollections" | "media" | "onReady" | "onProgressChanged">) { export default function NoteList(props: Pick<NoteListProps, "displayOnlyCollections" | "media" | "onReady" | "onProgressChanged">) {
const { note, noteContext, notePath, ntxId, viewScope } = useNoteContext(); const { note, noteContext, notePath, ntxId, viewScope } = useNoteContext();
const viewType = useNoteViewType(note); const viewType = useNoteViewType(note);
const noteType = useNoteProperty(note, "type");
const [ enabled, setEnabled ] = useState(noteContext?.hasNoteList()); const [ enabled, setEnabled ] = useState(noteContext?.hasNoteList());
useEffect(() => { useEffect(() => {
setEnabled(noteContext?.hasNoteList()); setEnabled(noteContext?.hasNoteList());
}, [ note, noteContext, viewType, viewScope?.viewMode ]) }, [ note, noteContext, viewType, viewScope?.viewMode, noteType ])
return <CustomNoteList viewType={viewType} note={note} isEnabled={!!enabled} notePath={notePath} ntxId={ntxId} {...props} /> return <CustomNoteList viewType={viewType} note={note} isEnabled={!!enabled} notePath={notePath} ntxId={ntxId} {...props} />
} }