fix: note en double au retour et barre Gras/Italique à l’ouverture
Ne plus réinjecter une note déjà dans la liste, et n’afficher le menu de formatage que sur une vraie sélection de texte. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -318,6 +318,8 @@ export function HomeClient({
|
||||
}
|
||||
|
||||
setNotes((prevNotes) => {
|
||||
if (prevNotes.some((n) => n.id === note.id)) return prevNotes
|
||||
|
||||
const notebookFilter = searchParams.get('notebook')
|
||||
const labelFilter = searchParams.get('labels')?.split(',').filter(Boolean) || []
|
||||
const colorFilter = searchParams.get('color')
|
||||
@@ -630,12 +632,16 @@ export function HomeClient({
|
||||
removeNoteFromList(detail.noteId)
|
||||
setPinnedNotes(prev => prev.filter(n => n.id !== detail.noteId))
|
||||
} else if (detail.type === 'created' && detail.note) {
|
||||
setNotes(prev => [detail.note, ...prev])
|
||||
setNotes((prev) => {
|
||||
if (prev.some((n) => n.id === detail.note.id)) return prev
|
||||
if (filterNotesForCurrentView([detail.note]).length === 0) return prev
|
||||
return [detail.note, ...prev]
|
||||
})
|
||||
}
|
||||
}
|
||||
window.addEventListener(NOTE_CHANGE_EVENT, onNoteChange)
|
||||
return () => window.removeEventListener(NOTE_CHANGE_EVENT, onNoteChange)
|
||||
}, [patchNoteInList])
|
||||
}, [patchNoteInList, filterNotesForCurrentView])
|
||||
|
||||
const handleGridReorder = useCallback(
|
||||
async (orderedIds: string[]) => {
|
||||
@@ -787,7 +793,12 @@ export function HomeClient({
|
||||
|
||||
// Apply sort order to notes
|
||||
const sortedNotes = useMemo(() => {
|
||||
let sorted = [...notes]
|
||||
const seen = new Set<string>()
|
||||
let sorted = notes.filter((n) => {
|
||||
if (seen.has(n.id)) return false
|
||||
seen.add(n.id)
|
||||
return true
|
||||
})
|
||||
if (sortOrder === 'newest') sorted.sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime())
|
||||
if (sortOrder === 'oldest') sorted.sort((a, b) => new Date(a.createdAt).getTime() - new Date(b.createdAt).getTime())
|
||||
if (sortOrder === 'alpha') sorted.sort((a, b) => (a.title || '').localeCompare(b.title || ''))
|
||||
|
||||
Reference in New Issue
Block a user