VisualEditor: Undo/redo doesn't go through dm.Surface.change() code path
Closed, ResolvedPublic

Description

dm.Surface.undo() and .redo() just call documentModel.rollback() / .commit() directly, without going through all the other stuff in .change() . Presumably this other stuff is useful, so we should figure out if bypassing it causes bugs.


Version: unspecified
Severity: normal

bzimport set Reference to bz53224.
Catrope created this task.Via LegacyAug 22 2013, 5:14 PM
cscott added a comment.Via ConduitAug 22 2013, 5:15 PM

In theory Surface.change() should also have a corresponding Surface.unchange() method (or a 'reversed' parameter).

gerritbot added a comment.Via ConduitOct 9 2013, 1:41 PM

Change 88728 had a related patch set uploaded by Catrope:
Implement ve.dm.Surface.prototype.undo() and redo() in terms of change()

https://gerrit.wikimedia.org/r/88728

gerritbot added a comment.Via ConduitOct 25 2013, 9:05 PM

Change 88728 merged by jenkins-bot:
Implement ve.dm.Surface.prototype.undo() and redo() in terms of change()

https://gerrit.wikimedia.org/r/88728

Add Comment

Column Prototype
This is a very early prototype of a persistent column. It is not expected to work yet, and leaving it open will activate other new features which will break things. Press "\" (backslash) on your keyboard to close it now.