diff --git a/src/components/Note/index.tsx b/src/components/Note/index.tsx index 874c3926..79ce78f1 100644 --- a/src/components/Note/index.tsx +++ b/src/components/Note/index.tsx @@ -45,7 +45,8 @@ export default function Note({ size = 'normal', className, hideParentNotePreview = false, - showFull = false + showFull = false, + disableClick = false }: { event: Event originalNoteId?: string @@ -53,6 +54,7 @@ export default function Note({ className?: string hideParentNotePreview?: boolean showFull?: boolean + disableClick?: boolean }) { const { navigateToNote } = useSmartNoteNavigation() const { isSmallScreen } = useScreenSize() @@ -173,13 +175,14 @@ export default function Note({ return (
{ + className={`${className} ${disableClick ? '' : 'clickable'}`} + onClick={disableClick ? undefined : (e) => { // Don't navigate if clicking on interactive elements const target = e.target as HTMLElement if (target.closest('button') || target.closest('[role="button"]') || target.closest('a') || target.closest('[data-embedded-note]') || target.closest('[data-parent-note-preview]') || target.closest('[data-user-avatar]') || target.closest('[data-username]')) { return } + e.stopPropagation() navigateToNote(toNote(event)) }} > diff --git a/src/components/NoteCard/MainNoteCard.tsx b/src/components/NoteCard/MainNoteCard.tsx index 321319ca..14ff5c5a 100644 --- a/src/components/NoteCard/MainNoteCard.tsx +++ b/src/components/NoteCard/MainNoteCard.tsx @@ -28,7 +28,7 @@ export default function MainNoteCard({ onClick={(e) => { // Don't navigate if clicking on interactive elements const target = e.target as HTMLElement - if (target.closest('button') || target.closest('[role="button"]') || target.closest('a') || target.closest('[data-parent-note-preview]')) { + if (target.closest('button') || target.closest('[role="button"]') || target.closest('a') || target.closest('[data-parent-note-preview]') || target.closest('[data-user-avatar]') || target.closest('[data-username]')) { return } // For embedded notes, allow clicks (don't exclude [data-embedded-note]) @@ -50,6 +50,7 @@ export default function MainNoteCard({ size={embedded ? 'small' : 'normal'} event={event} originalNoteId={originalNoteId} + disableClick={true} /> {!embedded && (