Author: ericwa
Date: Tue Feb 18 08:06:47 2014
New Revision: 10336

URL: http://svn.gna.org/viewcvs/etoile?rev=10336&view=rev
Log:
COUndoTrack: switch to applying commands using COStoreTransaction, so a large 
number of undos can be committed in a single store transaction. Undoing 10 or 
20 undo commands at once in Typewriter is nearly instantaneous now (for some 
reason, redoing is slower; need to investigate). 

There is also a hack here in COSQLiteStore, which is that 
-commitStoreTransaction: now waits for the notification it posts to be 
processed before returning. This allows COUndoTrack to call 
-commitStoreTransaction:, and when the call returns, any editing contexts in 
the same process will have already processed the changes (so COUndoTrack 
behaviour is the same as before, when it used to use -[COEditingContext commit] 
to save changes)

Modified:
    trunk/Etoile/Frameworks/CoreObject/Core/COBranch.m
    trunk/Etoile/Frameworks/CoreObject/Core/COPersistentRoot.m
    trunk/Etoile/Frameworks/CoreObject/Store/COSQLiteStore.m
    
trunk/Etoile/Frameworks/CoreObject/Tests/Synchronization/TestSynchronization.m
    trunk/Etoile/Frameworks/CoreObject/Undo/COCommand.m
    trunk/Etoile/Frameworks/CoreObject/Undo/COCommandGroup.h
    
trunk/Etoile/Frameworks/CoreObject/Undo/COCommandSetCurrentVersionForBranch.m
    trunk/Etoile/Frameworks/CoreObject/Undo/COUndoTrack.m


_______________________________________________
Etoile-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-cvs

Reply via email to