mirror of
https://github.com/zadam/trilium.git
synced 2025-11-07 19:26:12 +08:00
client: allow the isNoteReadOnly hook operate on a note and context other of the current one
This commit is contained in:
parent
914fa3625f
commit
4fdb502a19
3 changed files with 5 additions and 6 deletions
|
|
@ -101,7 +101,7 @@ function ToggleReadOnlyButton({ note, viewType, isDefaultViewMode }: FloatingBut
|
|||
|
||||
function EditButton({ note, noteContext, isDefaultViewMode }: FloatingButtonContext) {
|
||||
const [animationClass, setAnimationClass] = useState("");
|
||||
const {isReadOnly, enableEditing} = useIsNoteReadOnly();
|
||||
const {isReadOnly, enableEditing} = useIsNoteReadOnly(note, noteContext);
|
||||
|
||||
// make the edit button stand out on the first display, otherwise
|
||||
// it's difficult to notice that the note is readonly
|
||||
|
|
|
|||
|
|
@ -707,9 +707,8 @@ export function useResizeObserver(ref: RefObject<HTMLElement>, callback: () => v
|
|||
* Indicates that the current note is in read-only mode, while an editing mode is available,
|
||||
* and provides a way to switch to editing mode.
|
||||
*/
|
||||
export function useIsNoteReadOnly() {
|
||||
const {note, noteContext} = useNoteContext();
|
||||
const [isReadOnly, setIsReadOnly] = useState(false);
|
||||
export function useIsNoteReadOnly(note: FNote | null | undefined, noteContext: NoteContext | undefined) {
|
||||
const [isReadOnly, setIsReadOnly] = useState<boolean | undefined>(undefined);
|
||||
|
||||
const enableEditing = useCallback(() => {
|
||||
if (noteContext?.viewScope) {
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ import { useIsNoteReadOnly, useNoteContext, useTriliumEvent } from "./react/hook
|
|||
import Button from "./react/Button";
|
||||
|
||||
export default function ReadOnlyNoteInfoBar(props: {zenModeOnly?: boolean}) {
|
||||
const {isReadOnly, enableEditing} = useIsNoteReadOnly();
|
||||
const {note} = useNoteContext();
|
||||
const {note, noteContext} = useNoteContext();
|
||||
const {isReadOnly, enableEditing} = useIsNoteReadOnly(note, noteContext);
|
||||
|
||||
return <div class={`read-only-note-info-bar-widget ${(isReadOnly) ? "visible" : ""} ${(props.zenModeOnly) ? "zen-mode-only" : ""}`}>
|
||||
{isReadOnly && <>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue