Fix a bug that corrupted selection data in the history when applying remote steps in some cases.
Appending a transaction to an undo transaction will no longer immediately clear the redo history.
When handling appended transactions, the history will keep the last step in the original transaction, not the one from the appended transaction, for testing whether a subsequent transaction is adjacent to the previous one.
Fix a bug that could corrupt the history when rebasing changes because of collaborative editing.
Fix crash that could occur (in specific circumstance) when redoing.
It is no longer necessary to manually enable the
preserveItems option to the history plugin when using collaborative editing. (This behavior is now automatically enabled when necessary.)
Appended transactions no longer generate undo history events.
A new function
closeHistory can be used to force separation of history events at the start of a given transaction.
Fix a problem where simultaneous collaborative editing could break the undo history.
Fix issue where collaborative editing corner cases could corrupt the history.
Fix crash in undo or redo commands when the history is empty.
history export is now a function
that creates a history plugin, rather than a plugin instance.
option. This brings back the behavior where pausing between edits will
automatically cause the history to put subsequent changes in a new
Moved into a separate module. Now acts as a plugin that can be omitted or replaced by a different implementation if desired.
Merging subsequent changes into a single undo 'event' is now done by proximity in the document (the changes must touch) rather than in time. This will probably have to be further refined.