[whatwg] Fixing undo on the Web - UndoManager and Transaction
rniwa at webkit.org
Thu Dec 1 02:49:48 PST 2011
More updates! http://rniwa.com/editing/undomanager.html
Summary of changes on Dec 1st, 2011:
- UndoManager's item(n) now always returns an array
- Changes to DOMTransaction
- apply no longer has isReapply argument.
- apply, reapply, unapply on DOMTransaction has been renamed to
execute, undo, and redo.
- execute for automatic transaction has been renamed to
executeAutomatic, and isAutomatic attribute has been removed
- Automatic transaction now optionally restores selection
- The user agent that doesn't support displaying multiple labels per
entry in the undo transaction history is now required to use the first
- Reapplication of DOM changes are now redefined precisely.
On Tue, Nov 29, 2011 at 10:24 PM, Ryosuke Niwa <rniwa at webkit.org> wrote:
> Hi all,
> I've updated the draft: http://rniwa.com/editing/undomanager.html to
> reflect the discussions so far.
> Summary of changes:
> - Automatic transaction now calls unapply and reapply methods (note:
> this is problematic with apply(isReapply) because now authors have to check
> the argument even when reapply is not needed; consequently, I didn't change
> isReapply to return a DOMString since it'll have the same issue; we need
> more discussion here).
> - value IDL attributes of input and textarea elements are now
> considered to a part of DOM states.
> - Updated TransactionEvent section
> - initTransactionEvent is replaced by a constructor
> - TransactionEvent is renamed to DOMTransactionEvent
> - Added undo and redo events back
> - UndoManager's undo() and redo() have been rewritten
> - Precise algorithms to revert DOM changes have been added to section
> - Automatic DOM transaction (section 3.2) has been rewritten and
> re-defined in terms of reverting DOM changes.
> - Section 3.2.1.
> "Undoability and Redoability of automatic DOM transactions" has been removed
> - The concept of "highest node affecting an automatic DOM
> transaction" has been abolished since undoability and redoabillity are
> now defined precisely.
> - Ryosuke
More information about the whatwg