Implement Undo/Redo Functionality In Designer#3766
Implement Undo/Redo Functionality In Designer#3766barreeeiroo wants to merge 3 commits intomit-cml:masterfrom
Conversation
|
@mark-friedman Given you worked on undo/redo before, would you mind taking a look and share your thoughts? |
|
Sure. |
I also notice that if you do a move in the Table Arrangement and then undo the move, redo won't redo the move. |
Is this really the desired behavior? I would want to have the blocks restored when you undo the component deletion. Related to this, I notice that if you delete a component and then go to the blocks editor you can restore the blocks via |

General items:
ant testspasses on my machineIf your code changes how something works on the device (i.e., it affects the companion):
ucrucras the baseFurther, if you've changed the blocks language or another user-facing designer/blocks API (added a SimpleProperty, etc.):
For all other changes:
mastermasteras the baseWhat does this PR accomplish?
Description
Adds Undo/Redo functionality to the Designer. It implements a diff-based stack, rather than full screen snapshots.
Functionality Details
Demo Recordings
Classic Theme Demo
keyviz_DEOZctgGCq.mp4
New Theme Demo
Spotify_1OKqEMyL4F.mp4
Layouts Demo
keyviz_lvKhrmsI6f.mp4
Components' Blocks Destroy/Restore Demo
keyviz_ZllXFWmmLV.mp4