[whatwg] Fixing undo on the Web - UndoManager and Transaction
Jonas Sicking
jonas at sicking.cc
Thu Sep 1 11:13:32 PDT 2011
On Thu, Sep 1, 2011 at 6:26 AM, Alex Vincent <ajvincent at gmail.com> wrote:
> 3. I just spotted a flaw in our API's. Imagine the following:
> -
>
> myEditor.undoManager.transact({apply: function () {
> insert(document.createTextNode('o')) }, label: 'First transaction'});
> myEditor.undoManager.transact({apply: function () {
> insert(document.createTextNode('k')) }, label: 'Merging transaction'},
> true);
>
> - User calls myEditor.undoManager.item(0).label. Which label does he
> get back? For that matter, which transaction does he get back, and which
> transaction is forever hidden from him?
> - Perhaps for this reason, .item() should return a readonly
> Transaction[], representing the transaction group.
That's what we've been thinking for the Firefox implementation. It's
not a great solution though, but I can't think of a better one.
/ Jonas
More information about the whatwg
mailing list