Problem Statement
Currently, a note's title is strictly derived from the first line of its body
(Note.derivedTitle(from: body)), and any change to the body text
unconditionally overwrites the title.
This makes it difficult to assign custom, concise, or distinct titles to notes
without altering the actual body text formatting.
Proposed Solution
- Support Custom Title with Dynamic Fallback:
- Allow setting an explicit custom title on a note.
- If a custom title is set, body edits should preserve the custom title.
- If the custom title is cleared (or empty), automatically fall back to the
dynamic first-line derived title (and "New note" / note.untitled if
empty).
- Inline Title Editing:
- Replace the static title text in
NoteEditorView's header with an inline
TextField that supports debounced autosave.
- Pressing
Return confirms the title and focuses the text editor
seamlessly.
- Provide a context menu option (
"Reset to Auto Title") to quickly revert
back to the derived title.
- Library View Integration:
- Allow editing note titles directly in the
LibraryDetail pane.
- Update search to match both title and body text.
Problem Statement
Currently, a note's title is strictly derived from the first line of its body
(
Note.derivedTitle(from: body)), and any change to the body textunconditionally overwrites the title.
This makes it difficult to assign custom, concise, or distinct titles to notes
without altering the actual body text formatting.
Proposed Solution
dynamic first-line derived title (and
"New note"/note.untitledifempty).
NoteEditorView's header with an inlineTextFieldthat supports debounced autosave.Returnconfirms the title and focuses the text editorseamlessly.
"Reset to Auto Title") to quickly revertback to the derived title.
LibraryDetailpane.