@@ -115,6 +115,7 @@ export const useNoteEditor = ({
115115 registerNavigationGuard,
116116 unregisterNavigationGuard,
117117 executePendingNavigation,
118+ setHasUnsavedChanges : setProviderUnsaved ,
118119 } = useNavigationGuard ( ) ;
119120 const autosaveTimeoutRef = useRef < NodeJS . Timeout | null > ( null ) ;
120121
@@ -167,10 +168,15 @@ export const useNoteEditor = ({
167168 } , [ isEditing ] ) ;
168169
169170 useEffect ( ( ) => {
170- if ( notesDefaultMode !== "edit" && ! isEditing ) return ;
171+ if ( notesDefaultMode !== "edit" && ! isEditing ) {
172+ setProviderUnsaved ( false ) ;
173+ return ;
174+ }
171175 const titleChanged = title !== note . title ;
172176 const categoryChanged = category !== ( note . category || "Uncategorized" ) ;
173- setHasUnsavedChanges ( contentIsDirty || titleChanged || categoryChanged ) ;
177+ const dirty = contentIsDirty || titleChanged || categoryChanged ;
178+ setHasUnsavedChanges ( dirty ) ;
179+ setProviderUnsaved ( dirty ) ;
174180 } , [ contentIsDirty , title , category , note , isEditing ] ) ;
175181
176182 const handleSave = useCallback (
@@ -275,6 +281,7 @@ export const useNoteEditor = ({
275281 setIsEditing ( false ) ;
276282 setIsEditingEncrypted ( false ) ;
277283 setContentIsDirty ( false ) ;
284+ setProviderUnsaved ( false ) ;
278285
279286 const categoryPath = buildCategoryPath (
280287 category || "Uncategorized" ,
@@ -352,6 +359,7 @@ export const useNoteEditor = ({
352359 setTitle ( note . title ) ;
353360 setCategory ( note . category || "Uncategorized" ) ;
354361 setContentIsDirty ( false ) ;
362+ setProviderUnsaved ( false ) ;
355363 const { contentWithoutMetadata } = extractYamlMetadata ( note . content || "" ) ;
356364 if ( isMinimalMode ) {
357365 setEditorContent ( contentWithoutMetadata ) ;
0 commit comments