4 ms·
I feel things work most intuitively if the undo/redo functions simply navigate the history, but do not themselves form part of the history.
by osrec 4y ago
I feel things work most intuitively if the undo/redo functions simply navigate the history, but do not themselves form part of the history.
- unholiness 4y agoThat's how every other undo works. The whole GRUQ is caused by undos not themselves forming a part of history...
- TuringTest 4y agoThat's it. You can think of an undo operation U at time (t) as a new simple command that rolls back the content to a previous version (t-x). If you undo that U operation, it's a new command U' that restores content again to version (t). The history sequence would then be: (t) --U-> (t-x) --U'-> (t) And if you add (A) some new content (c) when in state (t-x), it becomes command , which can itself be undone with commands U'' (to remove A), U''' (to remove U): (t) --U-> (t-x) --A-> (t+c) --U''--> (t-x) --U'''--> (t)
- hackmiester 4y ago>every other undo Ahhhhh, some time you should try a little app called Adobe Photoshop.
- kqr 4y agoThat means silently killing off potentially large amounts of editing history every time you edit after an undo. That's the problem this article is about.
- dmix 4y agoI was thinking maybe you ignore it for the first 10 seconds or even better until the cursor changes to a new position, thqt way quick rewinds work in the moment. But later on you can restore the state with undos factored in.