> 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

Reply via email to