> Do you override any other NSDocument saving methods? I believe NSDocument’s > internal use of -performAsynchronousFileAccess… should cause it to delay > NSApplication termination. > > --Kyle Sluder > > On Apr 20, 2014, at 1:01 PM, Trygve Inda <cocoa...@xericdesign.com> wrote: > >>> >>>> On 20 Apr 2014, at 19:58, Trygve Inda <cocoa...@xericdesign.com> wrote: >>>> >>>> I return YES from >>>> >>>> canAsynchronouslyWriteToURL:ofType:forSaveOperation: >>>> >>>> Which works fine, but the user is able to quit the app while the save is in >>>> progress. Is there way way to know when the save is complete so that I can >>>> prevent quit before the save ends? >>> >>> If you play by NSDocument’s rules, the won’t actually terminate until saving >>> is finished. How have you determined that this is not the case for your app? >>> Is your save process doing anything weird? >> >> If I start a save and quit immediately, the file is not written. In my >> Document class I override: >> >> >> -(NSFileWrapper *)fileWrapperOfType:(NSString *)typeName error:(NSError >> **)outError >> { >> if ([self documentFileWrapper] == nil) >> [self setDocumentFileWrapper:[self createPackageDirectoryStructure]]; >> >> ... >> >> [self unblockUserInteraction]; >> return documentFileWrapper; >> } >> >> >> -(BOOL)canAsynchronouslyWriteToURL:(NSURL *)url ofType:(NSString *)typeName >> forSaveOperation:(NSSaveOperationType)saveOperation >> { >> return YES; >> } >
A small correction... This seems to only happen when I do a "Save As". If the file is dirty and I do a "Save", the "file is dirty warning" catches the quit. However, a clean file (freshly saved) doing a "Save As", has nothing that prevents a quit in the middle of the save. _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com